ffmpeg在arm平台linux系统下,做h264的视频流截图时报错如下,大部分图片显示不全

ffmpeg在arm平台linux系统下,做h264的视频流截图时报错如下,大部分图片显示不全

问题描述:

[h264 @ 0x24900] RTP: missed 1 packets
Invalid UE golomb code
Invalid UE golomb code
[h264 @ 0x24900] error while decoding MB 10 44, bytestream -50
[h264 @ 0x24900] concealing 119 DC, 119 AC, 119 MV errors in I frame
[h264 @ 0x24900] RTP: missed 57 packets
[h264 @ 0x24900] error while decoding MB 58 44, bytestream -6
[h264 @ 0x24900] concealing 71 DC, 71 AC, 71 MV errors in P frame
[h264 @ 0x24900] RTP: missed 14 packets
[h264 @ 0x24900] RTP: missed 9 packets
[h264 @ 0x24900] RTP: missed 1 packets
[h264 @ 0x24900] RTP: missed 8 packets
[h264 @ 0x24900] RTP: missed 2 packets
[swscaler @ 0x36d500] No accelerated colorspace conversion found from yuv420p to bgr24.
Invalid UE golomb code
[h264 @ 0xe49b0] error while decoding MB 10 44, bytestream -50
[h264 @ 0xe49b0] concealing 119 DC, 119 AC, 119 MV errors in I frame
[h264 @ 0x124130] error while decoding MB 62 24, bytestream -6
[h264 @ 0x124130] concealing 1667 DC, 1667 AC, 1667 MV errors in P frame
[h264 @ 0x7de30] error while decoding MB 58 44, bytestream -8
[h264 @ 0x7de30] concealing 71 DC, 71 AC, 71 MV errors in P frame
got frame!
[h264 @ 0x129580] error while decoding MB 23 38, bytestream -6
[h264 @ 0x129580] concealing 586 DC, 586 AC, 586 MV errors in P frame
got frame!
[h264 @ 0xe49b0] error while decoding MB 31 37, bytestream -12
[h264 @ 0xe49b0] concealing 658 DC, 658 AC, 658 MV errors in P frame
got frame!
got frame!
[h264 @ 0xcd910] error while decoding MB 25 35, bytestream -6
[h264 @ 0xcd910] concealing 824 DC, 824 AC, 824 MV errors in P frame

arm cpu性能不足,做这种高强度的编码有些勉为其难,把码率和压缩比降低了看看,不行只能用更好的cpu了。

missed 可能是丢包了,所以图片显示不全。
H.264 采用的是关键帧,你只能截取关键帧,否则无法形成图像。

还是不能解决问题,哎,做了很多别的测试和修改,arm软解性能问题很严重,第一次提问,不纠结直接给分了

解码循环中,添加了其他操作,导致循环没有按正常情况执行,导致丢包。出现上述问题。。。单独线程下,720p h264,arm v7l树莓派cpu占用率50%左右(400%)

就是丢包的情况,把UDP改为TCP就可以了