先说现象:
使用potplay播放器点播rtsp码流时候可以点播成功,同事使用vlc和FFplay点播rtsp码流时候异常
排查思路:
1.开始怀疑是oss账号问题,因为ts切片数据保存oss中的,我使用的是自己oss账号,同事使用的是公司oss账号,后面我让他使用自己oss账号试试,也还是不行。 于是我让同事把他的oss账号给我,我使用potplay播放器测试,是可以播放的, 那就排除了oss账号异常问题
2.使用FFplay点播 报错如下:
在这里插入图片描述

出现报错:‘circluar_buffer_sizeoption was set but it is not supported on this build
有点怀疑是协议的问题。
2.怀疑potplayvlc、FFplay信令互不一致,因为在rtsp协议中是存在信令交互的。 于是就开始进行抓包分析
在这里插入图片描述

果然如此,vlcsetup信令默认使用的是udp协议,potplaysetup信令默认使用的是tcp协议。
让同事在使用ffplay命令点播时候 增加rtsp_transport参数,因为如果不设置的话 ffplaysetup信令交互默认的也是udp
如:ffmpegrtsp_transport tcp -i rtsp://xxxx
这也解释了 不同的rtsp码流 有的时候vlc可以播放,有的使用potplay可以播放原因了。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注