RtspServer icon indicating copy to clipboard operation
RtspServer copied to clipboard

播放h264文件时解码失败的问题

Open DeanXi opened this issue 3 years ago • 5 comments
trafficstars

根据demo,我从监控平台上抓取了Hi profile 的h264文件,进行推流时解码失败。 解析了一下nal,发现该文件nal由00 00 01开头,client端收到的是00 00 00 01 00 00 01开头。 测试数据文件在这里https://github.com/DeanXi/testdata 有人遇到和我一样的问题么,rtp拼包那里没有发现问题。

DeanXi avatar Feb 08 '22 08:02 DeanXi

你好,我这边只是传输,不会插入其他数据

PHZ76 avatar Feb 21 '22 02:02 PHZ76

你好,我这边只是传输,不会插入其他数据

测试下来发现00 00 01开头的数据push进去再请求出来会有这个问题,我也没有在代码中找到在哪里修改的数据头。也有可能是client的问题,但用播放器播放智能读到i帧 谢谢您的回复,在读取数据nal的头上补零解决了这个问题

DeanXi avatar Feb 21 '22 02:02 DeanXi

可能因为一般来说将h264打包为RTP时会去掉00 00 001的间隔头,客户端在提取rtp包中的h264数据后会自己添加间隔头.而这个项目的server端在把h264打包成RTP包时候没有去掉间隔序列,而是把它也打包进了数据里,这样客户端又自动添加了一个00 00 00 01的间隔头,就会出现这种情况

Tephen avatar Apr 12 '22 03:04 Tephen

bug fixed https://fatalfeel.blogspot.com/2013/12/rtsp-server-for-h264-h265-aac.html

fatalfeel avatar Jul 02 '22 11:07 fatalfeel