在网络不好的情况下如何通过rtmp命令自适应
2016-10-11 10:43
417 查看
主要考虑以下两种情况
1)上传端网络波动比较大。
2)收听端网络比较大。
当主播网络波动到低点时,可以重新修改编解码参数到一个比较低的码率值,此时需要注意的是修改过对于的音视频数据的metadata,基头两-三个字节。
但收听端网络不佳的时候,可以通知服务,只发关键帧或者干脆不发视频帧,只发音频帧,因为在视频会议中,音频的优先级别要大于视频的优先级别,不过。rtmp协议本身并不支持这种命令,需要自己扩展
具体到srs中,因为每一路的play都是通过一个consumer来做代理的,consumer中,保存了音视频数据的ref,这时可以在consumer中增加一个标志量,如果接受到减少视频传输甚至是不进行视频传输的质量,可以丢弃一系列的包。来实现。
1)上传端网络波动比较大。
2)收听端网络比较大。
当主播网络波动到低点时,可以重新修改编解码参数到一个比较低的码率值,此时需要注意的是修改过对于的音视频数据的metadata,基头两-三个字节。
但收听端网络不佳的时候,可以通知服务,只发关键帧或者干脆不发视频帧,只发音频帧,因为在视频会议中,音频的优先级别要大于视频的优先级别,不过。rtmp协议本身并不支持这种命令,需要自己扩展
具体到srs中,因为每一路的play都是通过一个consumer来做代理的,consumer中,保存了音视频数据的ref,这时可以在consumer中增加一个标志量,如果接受到减少视频传输甚至是不进行视频传输的质量,可以丢弃一系列的包。来实现。
相关文章推荐
- c#如何检查局域网内服务器是否连通(调用外部Ping命令获取网络连接情况)
- 如何通过命令查看服务器的内存条使用情况
- 在linux中如何通过nload来监控网络使用情况
- c#如何检查局域网内服务器是否连通(调用外部Ping命令获取网络连接情况)
- 在linux中如何通过nload来监控网络使用情况
- c#如何检查局域网内服务器是否连通(调用外部Ping命令获取网络连接情况)
- 如何通过命令查看服务器的内存条使用情况
- 如何通过命令查看服务器的内存条使用情况
- 使用C#调用外部Ping命令获取网络连接情况
- 使用C#调用外部Ping命令获取网络连接情况
- 使用C#调用外部Ping命令获取网络连接情况
- 使用C#调用外部Ping命令获取网络连接情况
- 使用C#调用外部Ping命令获取网络连接情况
- 如何通过命令行注销网络共享
- 使用C#调用外部Ping命令获取网络连接情况
- 使用C#调用外部Ping命令获取网络连接情况
- 在SQL SERVER2005下,如何在没有日志文件的情况下如何恢复MDF数据库文件(测试通过)
- 使用C#调用外部Ping命令获取网络连接情况
- 使用C#调用外部Ping命令获取网络连接情况
- 使用C#调用外部Ping命令获取网络连接情况