我知道通过进行一些研究,
流行的基于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之类的实时流媒体平台?
还是他们仅在其移动应用程序上具有比特率控件?
我认为,根据出版商的带宽,Adaptviely变化的比特率在不良网络或带宽波动的情况下似乎是必要而合理的。
我不知道有任何比特率适应了吗?
我知道实时视频系统(例如,Webrtc,Hangouts)具有他们的控制逻辑来处理拥塞和数据包损失。
因此,我认为YouTube Live的移动流应用程序也有自己的比特率控制逻辑。
但是,我找不到有关它的任何文档或信息,也找不到任何信息,因为广播公司使用高级编码器来做得更好。
我不知道的摄取活的摄入一面是否有任何比特率改编?
是。许多编码器(包括obs)允许您即时更改比特率。它只是不会自动执行。
为什么实时流媒体平台(例如Twitch,YouTube Live)在摄入媒体服务器期间不提供任何比特率改编?
因为那些公司的任何人都没有做过这项工作以使其正常工作。这些公司对向观众提供不良经验的广播公司的价值不大,宁愿将工程学的努力投入到具有稳定的联系和高质量投入的人们中。