tencent cloud

直播 SDK

动态与公告
TUILiveKit 产品动态
云直播推拉流 SDK 产品动态
新手指引
产品简介
产品概述
产品优势
性能数据
基本概念
购买指南
TRTC Live 价格总览
Live 视频直播计费说明
开通服务(TUILiveKit)
Demo 体验
Demo 体验指引
跑通 Demo(TUILiveKit)
接入指南
视频直播
准备工作
主播开播
观众观看
直播列表
语聊房
准备工作
主播开播
观众观看
直播列表
推流助手
推流助手(Electron 桌面应用)
推流助手(Web 桌面浏览器)
直播监播
监播页面(Web 桌面浏览器 React 版)
监播页面(Web 桌面浏览器 Vue 版)
UI 自定义
直播视频组件
视频源编辑组件
观众列表组件
聊天弹幕组件
媒体源配置面板
连麦管理面板
直播送礼组件
无 UI 集成
搭建视频直播
搭建语聊房
功能指南
关注主播(TUILiveKit)
至臻画质(TUILiveKit)
输入媒体流进房(TUILiveKit)
礼物系统(TUILiveKit)
客户端 API
Android
iOS
Web
服务端 API(TUILiveKit)
账号系统
REST API
第三方回调
错误码(TUILiveKit)
常见问题
平台编译
用户鉴权
云直播推拉流 SDK
产品简介
购买指南
Demo 体验
免费测试
SDK 下载
License 管理
高级功能
客户端 API
常见问题
无 UI 集成方案
API 文档
OSS information
OSS Attribution Notice

直播基础相关问题

聚焦模式
字号
最后更新时间: 2024-01-13 15:53:49

推流、直播和点播分别是什么?

推流:主播将本地视频源和音频源推送到腾讯视频云服务器,在有些场景中也被称为“RTMP 发布”。
直播:直播的视频源是实时生成的,有人推流直播才有意义,一旦主播停播,直播 URL 也就失效了,而且由于是实时直播,所以播放器在播直播视频的时候是没有进度条的。
点播:点播的视频源是云端的一个文件,文件只要没有被提供方删除就随时可以播放(类似腾讯视频), 而且由于整个视频都在服务器上,所以播放的时候是有进度条的。

云直播播放域名有什么要求?

控制台进行域名提交管理前,需对域名进行备案,域名的位数限制为29位,暂不支持大写的域名,请输入不超过29位的小写域名地址,详情可查看 域名管理

直播域名接入播放域名和推流域名可以是同一个吗?能使用二级域名吗?

接入播放域名和推流域名必须是不同的两个域名,但可以通过二级域名来进行区分。 例如:123.abc.com用于推流域名,456.abc.com用于播放域名。

支持哪些推流协议?

虽然 RTMP 在直播领域不是特别流行,但是在推流服务,也就是“主播”到“服务器”这个方向上 RTMP 居于主导地位,目前国内的视频云服务都是以 RTMP 为主要推流协议(由于直播 SDK 第一个功能模块就是主播推流,所以也被称为是 RTMP SDK)。

支持哪些播放协议?

目前常见的直播协议包括:RTMP、 FLV、HLS 和 WebRTC。
RTMP:RTMP 协议比较全能,既可以用来推送又可以用来直播,其核心理念是将大块的视频帧和音频帧拆分,然后以小数据包的形式在互联网上进行传输,而且支持加密,因此隐私性相对比较理想,但拆包组包的过程比较复杂,所以在海量并发时也容易出现一些不可预期的稳定性问题。
FLV:FLV 协议由 Adobe 公司主推,格式极其简单,只是在大块的视频帧和音视频头部加入一些标记头信息,由于这种简洁,在延迟表现和大规模并发方面都很成熟,唯一的不足就是在手机浏览器上的支持非常有限,但是用作手机端 App 直播协议却异常合适。
HLS:苹果推出的解决方案,将视频分成5秒 - 10秒的视频小分片,然后用 m3u8 索引表进行管理,由于客户端下载到的视频都是5秒 - 10秒的完整数据,故视频的流畅性很好,但也同样引入了很大的延迟(HLS 的一般延迟在10秒 - 30秒左右)。相比于 FLV, HLS 在 iPhone 和大部分 Android 手机浏览器上的支持非常给力,所以常用于 QQ 和微信朋友圈的 URL 分享。
WebRTC:名称源自网页即时通信(Web Real-Time Communication)的缩写,是一个支持网页浏览器进行实时语音对话或视频对话的API。它于2011年06月01日开源并在 Google、Mozilla、Opera 支持下被纳入万维网联盟的 W3C 推荐标准。快直播正是用的 WebRTC 协议,它是标准直播在超低延迟播放场景下的延伸,比传统直播协议延迟更低,为观众提供毫秒级的极致直播观看体验。 能够满足一些对延迟性能要求更高的特定场景需求,例如在线教育、体育赛事直播、在线答题等。
直播协议
优点
缺点
播放延迟
FLV
成熟度高、高并发无压力
需集成 SDK 才能播放
2s - 3s
RTMP
延迟较低
高并发情况下表现不佳
1s - 3s
HLS(m3u8)
手机浏览器支持度高
延迟非常高
10s - 30s
WebRTC
延迟最低
需集成 SDK 才能播放
< 1s

播放地址由什么组成?

腾讯云播放地址主要由播放前缀、播放域名(domain)、应用名称(AppName)、流名称(StreamName)、播放协议后缀、鉴权参数以及其他自定义参数组成,如下:
rtmp://domain/AppName/StreamName?txSecret=Md5(key+StreamName+hex(time))&txTime=hex(time)
http://domain/AppName/StreamName.m3u8?txSecret=Md5(key+StreamName+hex(time))&txTime=hex(time)
http://domain/AppName/StreamName.flv?txSecret=Md5(key+StreamName+hex(time))&txTime=hex(time)
https://domain/AppName/StreamName.m3u8?txSecret=Md5(key+StreamName+hex(time))&txTime=hex(time)
https://domain/AppName/StreamName.flv?txSecret=Md5(key+StreamName+hex(time))&txTime=hex(time)
webrtc://domain/AppName/StreamName?txSecret=Md5(key+StreamName+hex(time))&txTime=hex(time)
播放前缀 RTMP 播放协议:rtmp:// 。 HTTP-FLV 播放协议:http:// 或者 https:// 。 HLS 播放协议:http:// 或者 https:// 。 WebRTC 播放协议:webrtc://。
应用名称(AppName) 应用名称指的是直播流媒体文件存放路径,默认云直播会分配一个路径:live
流名称(StreamName) 流名称(StreamName)是指每路直播流唯一的标识符。
鉴权参数以及其他自定义参数 鉴权参数:txSecret=Md5(key+StreamName+hex(time))&txTime=hex(time)。

常见的推流方式?

移动端 Android/iOS,使用摄像头:使用第三方软件或 直播 SDK 采集摄像头视频,并推送视频流至直播流推流地址。
台式机或笔记本,使用摄像头或桌面录屏:使用第三方软件采集摄像头视频或桌面图像,将视频或桌面内容推流至直播流推流地址。第三方推流软件包括:OBS(推荐)、XSplit、FMLE 等。
视频采集设备:高清摄像机类设备如果具备 HDMI 或者 SDI 输出接口,可以接入编码器,以 RTMP 推流的方式向直播服务推送直播内容,您需要将直播推流地址配置到编码器的 RTMP 发布地址。 网络摄像头类设备,如果支持 RTMP 推流,则可将直播推流地址配置到摄像头的 RTMP 发布地址。
视频文件转视频流:读取某个视频文件,并以 RTMP 流方式输出作为视频源来向直播服务的 RTMP 推流地址进行视频发布。可以使用ffmpeg命令来实现(Windows、Linux 及 Mac 均适用)。

断流和禁播的区别?

断流功能:一条直播中的流,如果断流,则本次推流会被中断,观众端将无法观看直播。断流后,主播端可以再次发起推流,继续直播活动。
禁播功能:一条直播中的流,如果禁播,则本次推流会被中断,观众端将无法观看直播。断流后,主播端在禁播时间内无法再次发起推流,禁播功能可通过云直播控制台的流管理页面配置,禁用后的直播流展示于禁播流列表页,单击启用后可恢复使用。

直播 v1 接口升级 v2 接口怎样无缝对接?是否有接口对应关系?

已有 v1 和 v2 接口对应表,具体请参见 直播 SDK V1 升级到 V2 API 接口对比说明

关于直播 SDK 隐私合规方面会采集哪些信息(如获取 mac 地址,imei 等)?

直播 SDK 隐私合规符合应用市场要求,具体请参见 隐私协议

帮助和支持

本页内容是否解决了您的问题?

填写满意度调查问卷,共创更好文档体验。

文档反馈