【发布时间】:2019-08-13 02:52:52
【问题描述】:
据我所知,通过一些研究,
流行的基于 CDN 的直播平台(例如 twitch.tv、youtube live)提供
推荐的编码器设置(分辨率、比特率、fps)适用于广播公司
使用高级软件编码器(例如 obs、xsplit)的人。
在做直播之前,主播应该测试自己的上传带宽
并选择其中一项建议。并且一旦选择了编码器设置,在直播过程中就无法更改。
然而,在交付方面,有流行的自适应比特率流(DASH、HLS)来应对观众的异构带宽状态。
[CDN based live streaming architecture]
<--------------Ingest Side-------------------> <------Delivery Side--->
RTMP HLS
[Broadcaster] ----------------> [Media Server]--->[CDN]--------> viewer 1
constant bitrate | 720p
ABR |-----> viewer 2
| 360p
|-----> viewer 3
240p
我的问题是,
为什么直播平台(如 twitch、youtube live)在摄取到媒体服务器期间不提供任何比特率调整?
还是他们只在移动应用上控制比特率?
在我看来,在网络不好或带宽波动的情况下,根据发布者的带宽自适应地改变比特率似乎是必要和合理的。
是否有任何我不知道的实时摄取方面的比特率调整?
我知道实时视频系统(例如 webRTC、Hangouts)有自己的控制逻辑来处理拥塞和丢包。
因此,我假设 youtube live、twitch.tv 的移动流媒体应用程序也有自己的比特率控制逻辑。
但是,我找不到任何有关它的文档或信息,也找不到任何关于广播公司使用高级编码器进行更好的直播的情况。
【问题讨论】:
标签: youtube-api live-streaming twitch encoder youtube-livestreaming-api