美文网首页
七牛云1

七牛云1

作者: winnisz | 来源:发表于2017-03-14 17:48 被阅读0次

    PLMediaStreamingKit 提供两个层次的 API

    PLStreamingKit 提供包括音视频编码,封包以及网络发送功能,PLCameraStreamingKit 除了提供 PLStreamingKit 的功能以外还提供了内置的采集,音视频处理以及一些系统打断事件的处理等。我们强烈推荐对音视频没有太多了解的开发者使用 PLCameraStreamingKit 提供的 API 进行开发,如果您对音视频数据的采集和处理有更多的需求,那么需要使用 PLStreamingKit 提供的 API 进行开发,不过在进行开发之前请确保您已经掌握了包括音视频采集,编码以及处理等相关的基础支持。

    -----------------------------------

    七牛云:

    推流端: push url (null)

    是从你自己的服务器,测试阶段,你也可以自己在本机上跑服务端SDK

    客户端请求推流  ——》 客户端请求你服务器 ——》 你服务器请求七牛获取StreamJson ——》 你服务器返回StreamJson给客户端 ——》 客户端使用StreamJson进行推流

    token 可以是业务服务器 直接调用七牛的 sdk 进行生成

    key 是保存在七牛的文件名

    很多信息都封装在一个叫上传策略的json串里面,对这个串进行一系列的运算,得到一个token

    根据设置的策略生成 上传的token

    有了上传 token 之后,客户端就不用关心 上传策略这个字符串了

    token是根据一个json经过一系列的运算生成):这个token里面有几个必传的参数(七牛要求)。同时服务器也要根据需要填一些参数进去

    在这个过程中,服务器要做两个事情:

    1.一个服务器接口,获取两个东西:一个key(文件名字)和一个token。

    2.一个回调的URL地址,实现这个URL地址,当七牛那边上传成功后回调这个URL地址。

    这里的核心是这个token(token是根据一个json经过一系列的运算生成):这个token里面有几个必传的参数(七牛要求)。同时服务器也要根据需要填一些参数进去,如:

    1.回调的url地址,比如:http://xxx.xxx.xx

    2.回调你这个url地址的参数,这个参数有个参数肯定是有用户ID的

    当你接受到这个这个回调后,从回调的参数里面取到uin,文件大小,key(文件名)等信息。然后把这些信息写到服务器的数据库里面。

    "token":"46v9SB3M9vnwwJeRduBT61C2DIYsthd1Qp-OCFOB:kzU2xPmv7LOAj_uFAuAIt-LbdHc=:eyJjYWxsYmFja1VybCI6Imh0dHA6Ly9mZW5nbml1LmYzMzIyLm5ldDo4MDYwL1FpTml1QXBwL2NvcmUvdmlkZW8uY2IuZG8_Iiwic2NvcGUiOiJxaW5pdXZpZGVvOjE1MzU4NDIzNDY0MzA2Mjc4NDAiLCJjYWxsYmFja0JvZHkiOiJoZWFkZXIudmVyc2lvblx1MDAzZDFcdTAwMjZoZWFkZXIuaW1laVx1MDAzZFx1MDAyNmhlYWRlci5zaWRcdTAwM2RcdTAwMjZoZWFkZXIub3NcdTAwM2RxaW5pdVx1MDAyNnNlY3VyaXR5Q29kZVx1MDAzZDRDQkRFNTAzQzE2Q0M4QTQzRUI2RjM0OTFDMjk1NjJDXHUwMDI2aGVhZGVyLnVpblx1MDAzZDBcdTAwMjZwYXJhbS5sbGlkXHUwMDNkMTUzNTg0MjM0NjQzMDYyNzg0MCIsImRlYWRsaW5lIjoxNDcxOTI1MjQ5fQ=="

    直播

    服务端有个stream.segment方法,你可以通过这个方法,获取每次直播的上下线时间,然后从中选取需要转存的部分,指定该部分的start和end传入saveas对应的参数中。调用服务端的saveas接口转存回放,转存后才是永久保存的,否则会在后台设置的过期时间后删除。m3u8是立即生成,mp4是异步转码,mp4一般1小时的视频可以在3-5分钟转完,具体看服务端的负载情况。

    你可以指定下pipeline参数,这个是转码队列,可以先去七牛后台的多媒体处理建一个转码队列,然后把这个转码队列的名字填在pipeline这个地方。指定pipeline是私有队列,相应的转码速度也会快点,不过会产生转码费用,可以看官网的计费介绍。不指定默认就是公有队列,转码速度比较慢且不可控。

    调saveas时format指定null就是只生成m3u8,指定为mp4就是mp4

    同一个流 中断在推流 其实还是一个流

    中断 再推 本身不会产生新的流

    流端 时间超过重新连时间  流就为断流

    推流端,动态或者静态的鉴权

    相关文章

      网友评论

          本文标题:七牛云1

          本文链接:https://www.haomeiwen.com/subject/qgwhnttx.html