腾讯视频直播01-直播常见协议和集成sdk

腾讯视频直播02-推流
腾讯视频直播03-直播

直播流程

播放流程:获取流 → 解码 → 播放
录制播放路程:录制音频视频 → 剪辑 → 编码 → 上传服务器,别人播放
直播过程:采集 → 处理 → 编码 → 推流 → CDN分发 → 拉流 → 解码 → 播放

直播基础知识

①直播常见的协议有三种:RTMP、FLV和 HLS

  • RTMP(RealTime Messaging Protocol,实时消息传输协议)
    Adobe公司为Flash播放器和服务器之间音频、视频和数据传输开发的开放协议,它底层基于TCP协议,延时较小大概为1~3s。
  • FLV
    Adobe公司主推这个协议,格式很简单,它在大部分手机浏览器上不支持,只能在手机app播放,拖动进度条反应迟钝。目前腾讯视频的直播录制,采用的就是FLV视频格式。
  • HLS(HTTP Live Streaming)
    是由苹果公司推出的基于HTTP的流媒体传输协议。它有个很大的有点,HTML5可以直接打开播放;这个意味着可以把一个直播链接通过微信等转发分享,不需要安装任何独立的APP,有浏览器即可,所以流行度很高。
  • RTP(Real-time Transport Protocol)
    用于Internet上针对多媒体数据流的一种传输层协议,实际应用场景下经常需要RTCP(RTP Control Protocol)配合来使用,可以简单理解为RTCP传输交互控制的信令,RTP传输实际的媒体数据。RTP在视频监控、视频会议、IP电话上有广泛的应用,因为视频会议、IP电话的一个重要的使用体验:内容实时性强。
直播协议 传输方式 优点 缺点 播放延迟
RTMP TCP 能推能播,延迟低 高并发情况下不佳 1~3s
FLV HTTP 成熟度高,延迟低,手机app游戏直播首选 必须要用app播放 2~3s
HLS HTTP 手机浏览器支持度高 延迟非常高 10~30s
RTP TCP/UDP 实时 实时 实时

②常见的点播协议也有三种:MP4、HLS和FLV

  • MP4
    非常经典的文件格式,在移动终端和PC浏览器上的支持度都很好(在IOS和大部分Android设备上,都可以使用系统浏览器进行播放,在PC上可以使用FLASH控件进行播放)。但是MP4的视频文件格式比较复杂,所以处理成本高,而且由于索引表复杂度高,导致时长稍大(比如半小时)的MP4文件在线播放时加载速度会很慢。
  • HLS
    苹果公司力推的标准,在移动终端的浏览器上的支持度较好,但IE的支持情况依赖FLASH的二次开发工作(建议使用腾讯视频云的FLASH播放器控件)。其精简的m3u8的索引结构可以规避MP4的索引慢问题,如果是用于点播,是非常不错的选择。
  • FLV
    Adobe公司所推的标准,目前直播平台最常用的封装格式,在PC端有FLASH的强力支持,但在移动终端只有APP实现播放器才有可能支持(或者使用本播放器),大部分手机端浏览器均不支持。目前腾讯视频云的直播录制,采用的就是FLV视频格式。
点播协议 优点 缺点
MP4 手机浏览器支持度高 格式过于复杂和娇贵,容错率差,对播放器要求高
HLS 手机浏览器支持度高 大量小分片的文件组织形式,错误率和维护成本均高于单一文件
FLV 格式简单问题少 手机浏览器支持差

③常见的推流协议:
虽然RTMP在直播领域不是特别流行,但是在推流服务,也就是主播->服务器这个方向上,RTMP则居于主导地位,目前国内的视频云服务都是以RTMP为主要推流协议。

  • 直播
    直播的视频源是实时生成的,有人推流直播才有意义。所以,一旦主播停播,直播URL也就失效了,而且由于是实时直播,所以播放器在播直播视频的时候是没有进度条的,直播中,如果用户点击暂停,其实并没有真正意义上的暂停,所谓的直播暂停,只是画面冻结和关闭声音,而云端的视频源还在不断地更新着,所以当您调用 resume 的时候,会从最新的时间点开始播放,这跟点播是有很大不同的(点播播放器的暂停和继续与播放本地视频文件时的表现相同)。
  • 推流
    用户将本地视频源和音频源推送到云服务器,在有些场景中也被称为“RTMP发布。说简单点, 可以理解为推流是直播的主播端,把主播端采集的音视频数据上传到腾讯云,然后粉丝通过我的房间号(房间号怎么看到?请看我的下一篇文章)进入我的直播间。
  • 点播
    点播的视频源是云端的一个文件,文件只要没有被提供方删除,就随时可以播放(类似优酷土豆、爱奇艺和腾讯视频), 而且由于整个视频都在服务器上,所以播放的时候是有进度条的哦。
下载SDK

腾讯提供了集成librart方式,但是有好几个版本类型的sdk,我打算把视频推流,直播,点播,短视频都写下,所以我下载全功能专业版
下载完解压之后:

截图.png

文件名 说明
LiteAVSDK_Professional_4.6.4218.aar 适用于 Android Studio 用户
LiteAVSDK_Professional_4.6.4218.zip 适用于 Eclipse 用户

这里我们选择第一个aar包,放到AS中 /app/libs 目录下
在工程 app 目录下的 build.gradle 中,添加引用aar包

dependencies {
      compile fileTree(dir: 'libs', include: ['*.jar'])
      // 导入腾讯云直播 SDK jar
      compile(name: 'LiteAVSDK_Professional_4.6.4218', ext: 'aar')
}

在工程目录下的 build.gradle 中,添加 flatDir,指定本地仓库:

 allprojects {
     repositories {
         jcenter()
         flatDir {
            dirs 'libs'
         }
    }
}

在工程目录下的 build.gradle 的 defaultConfig 里面,指定 ndk 兼容的架构:

defaultConfig {
    ...
    ndk {
         abiFilters "armeabi", "armeabi-v7a"
         // 如果您使用的是商业版,只能使用 armeabi 架构,即:
        // abiFilters "armeabi",
    }   
}

然后编译下工程

集成之后,记得添加权限,这里不加了,自行去腾讯官网添加

测试下是否集成成功,在Activity添加:

String versionStr = TXLiveBase.getSDKVersionStr();
Log.d("zjp", "versinoStr=" + versionStr);
截图.png

运行之后在 logcat 中看到当前sdk版本为:4.6.4218,跟我们上面集成的sdk版本一样,说明集成sdk成功。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,835评论 4 364
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,598评论 1 295
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 109,569评论 0 244
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,159评论 0 213
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,533评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,710评论 1 222
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,923评论 2 313
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,674评论 0 203
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,421评论 1 246
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,622评论 2 245
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,115评论 1 260
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,428评论 2 254
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,114评论 3 238
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,097评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,875评论 0 197
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,753评论 2 276
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,649评论 2 271

推荐阅读更多精彩内容