组播分发mp3或者其他音频格式音频文件的流程如下图:
640长度包经过rtp包头封装后,发送到对端。
存在的问题:
1、播放时而卡顿、时而有倍速播放的感觉。 --这个问题分析和发送rtp包的时间快慢有关系,但出现这个现象,感觉是和广播端收包、播放处理流程涉及到线程切换影响,播放进度不能精确控制。
2、播放声音质量变差、毛刺多。--这个问题分析主要是将MP3文件转码为采样率低的音频所致,可能中间还涉及丢包?
思路:
1、UDP收包改成TCP收包,控制发包速度。
2、转码和解码放到广播侧,上位机只负责文件分发。
解决:暂时绕过去了,毕竟直接使用http播放,ffmpeg控制起来更稳定。
如果播放有太明显的延迟,估计还是得切回TCP发包,FFMPEG流式解码上。参考:https://blog.csdn.net/wanggao_1990/article/details/118439511
-------------------广告线---------------
项目、合作,欢迎勾搭,邮箱:promall@qq.com
本文为呱牛笔记原创文章,转载无需和我联系,但请注明来自呱牛笔记 ,it3q.com