forked from ZLMediaKit/ZLMediaKit
-
Notifications
You must be signed in to change notification settings - Fork 3
RTMP播放兼容性问题
夏楚 edited this page Jun 28, 2020
·
1 revision
一般来说 rtmp的规范是 先发送metadata ,然后发送config帧,然后发送关键帧 然后是普通帧
config帧收到后就能初始化解码器了
但是你这个流不太一样,并没有收到视频的config帧就收到其他帧了
这个时候视频Track并没创建和初始化
初步怀疑是nginx的rtmp服务器兼容性不好
zlm的推流器会严格按照先发送metadata ,然后发送config帧,然后发送关键帧 然后是普通帧的流程来做
也会缓存所有的config帧
ffplay能播放成功是因为它是根据数据量和时间来判断播放成功
只要数据量达到一定量或者时间达到一定时间 就会触发播放成功的事件
这样做的好处是 播放成功率高 坏处是打开视频时间长