Toybrick

标题: 多路视频流播放时mpp错误 [打印本页]

作者: kispr    时间: 2020-6-24 14:25
标题: 多路视频流播放时mpp错误
版主好,各路大神好,

在用rtsp和mpp解码6路视频时,大量输出log

[2020/06/24 13:52:25] W/: (onTransmitIn in unit_rtp_h264_unpack.cpp:53): rtp lost one packet ... mDebugCntRtpLost: 10123 > 10246
[2020/06/24 13:52:25] W/: (onTransmitIn in unit_rtp_h264_unpack.cpp:53): rtp lost one packet ... mDebugCntRtpLost: 10268 > 10283
[2020/06/24 13:52:25] W/: (onTransmitIn in unit_rtp_h264_unpack.cpp:53): rtp lost one packet ... mDebugCntRtpLost: 10283 > 10302
[2020/06/24 13:52:25] W/: (onTransmitIn in unit_rtp_h264_unpack.cpp:53): rtp lost one packet ... mDebugCntRtpLost: 10302 > 10324


mpp_log: decode_put_packet failed, return -1012



mpp_log: MppDecoderDequeueFrame Get errror frame or discard frame
mpp_log: MppDecoderDequeueFrame Get errror frame or discard frame
mpp_log: MppDecoderDequeueFrame Get errror frame or discard frame
mpp_log: MppDecoderDequeueFrame Get errror frame or discard frame
mpp_log: MppDecoderDequeueFrame Get errror frame or discard frame
mpp_log: MppDecoderDequeueFrame Get errror frame or discard frame
mpp_log: MppDecoderDequeueFrame Get errror frame or discard frame
mpp_log: MppDecoderDequeueFrame Get errror frame or discard frame
mpp_log: MppDecoderDequeueFrame Get errror frame or discard frame
mpp_log: MppDecoderDequeueFrame Get errror frame or discard frame
mpp_log: MppDecoderDequeueFrame Get errror frame or discard frame
mpp_log: MppDecoderDequeueFrame Get errror frame or discard frame
mpp_log: MppDecoderDequeueFrame Get errror frame or discard frame
mpp_log: MppDecoderDequeueFrame Get errror frame or discard frame
mpp_log: MppDecoderDequeueFrame Get errror frame or discard frame
mpp_log: MppDecoderDequeueFrame Get errror frame or discard frame
mpp_log: MppDecoderDequeueFrame Get errror frame or discard frame
mpp_log: MppDecoderDequeueFrame Get errror frame or discard frame
mpp_log: MppDecoderDequeueFrame Get errror frame or discard frame
mpp_log: MppDecoderDequeueFrame Get errror frame or discard frame
mpp_log: MppDecoderDequeueFrame Get errror frame or discard frame
mpp_log: MppDecoderDequeueFrame Get errror frame or discard frame
mpp_log: MppDecoderDequeueFrame Get errror frame or discard frame
mpp_log: MppDecoderDequeueFrame Get errror frame or discard frame
mpp_log: MppDecoderDequeueFrame Get errror frame or discard frame
mpp_log: MppDecoderDequeueFrame Get errror frame or discard frame
mpp_log: MppDecoderDequeueFrame Get errror frame or discard frame
mpp_log: MppDecoderDequeueFrame Get errror frame or discard frame
mpp_log: MppDecoderDequeueFrame Get errror frame or discard frame
mpp_log: MppDecoderDequeueFrame Get errror frame or discard frame
mpp_log: MppDecoderDequeueFrame Get errror frame or discard frame
mpp_log: MppDecoderDequeueFrame Get errror frame or discard frame
mpp_log: MppDecoderDequeueFrame Get errror frame or discard frame
mpp_log: MppDecoderDequeueFrame Get errror frame or discard frame


随后是视频画面出现严重花屏现象,请问怎么解决,谢谢!

作者: jefferyzhang    时间: 2020-6-24 14:27
丢包了哥哥
作者: kispr    时间: 2020-6-24 15:05
jefferyzhang 发表于 2020-6-24 14:27
丢包了哥哥

谢谢回复!
为了解决大量丢包问题,之前是rtsp默认是UDP协议,尝试改成tcp之后报错
rtsp_client =new RtspClient(url,user,pwd,true);


2020/06/24 15:01:23] D/: # FOUND[0] rtpmap: id:96 format:H264 bitrate:90000
[2020/06/24 15:01:23] D/: # TOTAL FOUND  1
[2020/06/24 15:01:23] D/: TRACK [0] : rtsp://192.168.0.191:554/h264/main/sub/av_stream/trackID=1
[2020/06/24 15:01:23] D/: setup 23205 , 23206, uri: rtsp://192.168.0.191:554/h264/main/sub/av_stream/trackID=1
[2020/06/24 15:01:23] D/: close curl rtsp://192.168.0.191:554/h264/main/sub/av_stream
[2020/06/24 15:01:23] D/: destroying curl rtsp ...
[2020/06/24 15:01:23] D/: destroying curl rtsp ... done
[2020/06/24 15:01:27] D/: close curl rtsp://192.168.0.191:554/h264/main/sub/av_stream
[2020/06/24 15:01:27] D/: ReEnable rtsp client [1] rtsp://192.168.0.191:554/h264/main/sub/av_stream
[2020/06/24 15:01:27] D/: curlto rtsp://192.168.0.191:554/h264/main/sub/av_stream , cli 23205:23215, tcp: 1
[2020/06/24 15:01:27] D/: # FOUND[0] media: video
[2020/06/24 15:01:27] D/: # FOUND[0] control: rtsp://192.168.0.191:554/h264/main/sub/av_stream/trackID=1
[2020/06/24 15:01:27] D/: # FOUND[0] rtpmap: id:96 format:H264 bitrate:90000
[2020/06/24 15:01:27] D/: # TOTAL FOUND  1
[2020/06/24 15:01:27] D/: TRACK [0] : rtsp://192.168.0.191:554/h264/main/sub/av_stream/trackID=1
[2020/06/24 15:01:27] D/: setup 23205 , 23206, uri: rtsp://192.168.0.191:554/h264/main/sub/av_stream/trackID=1
[2020/06/24 15:01:27] D/: close curl rtsp://192.168.0.191:554/h264/main/sub/av_stream
[2020/06/24 15:01:27] D/: destroying curl rtsp ...
[2020/06/24 15:01:27] D/: destroying curl rtsp ... done
[2020/06/24 15:01:31] D/: close curl rtsp://192.168.0.191:554/h264/main/sub/av_stream
[2020/06/24 15:01:31] D/: ReEnable rtsp client [1] rtsp://192.168.0.191:554/h264/main/sub/av_stream
[2020/06/24 15:01:31] D/: curlto rtsp://192.168.0.191:554/h264/main/sub/av_stream , cli 23205:23215, tcp: 1
[2020/06/24 15:01:31] D/: # FOUND[0] media: video
[2020/06/24 15:01:31] D/: # FOUND[0] control: rtsp://192.168.0.191:554/h264/main/sub/av_stream/trackID=1
[2020/06/24 15:01:31] D/: # FOUND[0] rtpmap: id:96 format:H264 bitrate:90000
[2020/06/24 15:01:31] D/: # TOTAL FOUND  1
[2020/06/24 15:01:31] D/: TRACK [0] : rtsp://192.168.0.191:554/h264/main/sub/av_stream/trackID=1
[2020/06/24 15:01:31] D/: setup 23205 , 23206, uri: rtsp://192.168.0.191:554/h264/main/sub/av_stream/trackID=1
[2020/06/24 15:01:31] D/: close curl rtsp://192.168.0.191:554/h264/main/sub/av_stream
[2020/06/24 15:01:31] D/: destroying curl rtsp ...
[2020/06/24 15:01:31] D/: destroying curl rtsp ... done
[2020/06/24 15:01:35] D/: close curl rtsp://192.168.0.191:554/h264/main/sub/av_stream
[[2020/06/24 15:01:35] W/: (threadRtpTcpFunc in unit_rtsp_client.cpp:210): rtsp client no receive rtp data in 3 sec. reconnect it!
[2020/06/24 15:01:35] W/: (play in curl_rtsp.cpp:176): PLAY rtsp://192.168.0.191:554/h264/main/sub/av_stream failed.
[2020/06/24 15:01:35] E/: (enable in unit_rtsp_client.cpp:279): rtsp client connect rtsp://192.168.0.191:554/h264/main/sub/av_stream failed.
mpp_log: decode_get_frame failed, return -8.
mpp_log: decode_get_frame failed, return -8.
mpp_log: decode_get_frame failed, return -8.
mpp_log: decode_get_frame failed, return -8.
mpp_log: decode_get_frame failed, return -8.
mpp_log: decode_get_frame failed, return -8.
mpp_log: decode_get_frame failed, return -8.
mpp_log: decode_get_frame failed, return -8.
mpp_log: decode_get_frame failed, return -8.
mpp_log: decode_get_frame failed, return -8.
mpp_log: decode_get_frame failed, return -8.
mpp_log: decode_get_frame failed, return -8.
mpp_log: decode_get_frame failed, return -8.

之前视频还能看到画面,现在直接画面没有了。。。

作者: jefferyzhang    时间: 2020-6-24 15:12
我们提供的rtsp库只是方便大家快速开发演示用的,不适合做项目,我们也不会继续维护这个库的。
你可以通过ffmpeg或者其他rtsp client库来获取 rtp数据,并脱包成264数据,喂给mpp解码。
mpp只是一个硬件解码库的封装,只有解的出和解不出两种情况,解不出一定是你喂的数据有问题,不用怀疑自己。。。
作者: kispr    时间: 2020-6-24 16:24
jefferyzhang 发表于 2020-6-24 15:12
我们提供的rtsp库只是方便大家快速开发演示用的,不适合做项目,我们也不会继续维护这个库的。
你可以通过f ...


你可以通过ffmpeg或者其他rtsp client库来获取 rtp数据,并脱包成264数据,喂给mpp解码。

--->好的 老哥。另外mpp1012错误我看了mpp源码及错误码,发现是MPP_ERR_BUFFER_FULL错误,是指mpp输出的mmp_dec队列满了吗?
作者: jefferyzhang    时间: 2020-6-24 16:59
kispr 发表于 2020-6-24 16:24
你可以通过ffmpeg或者其他rtsp client库来获取 rtp数据,并脱包成264数据,喂给mpp解码。

--->好的 老 ...

这个你这么问我我也不懂啊,mpp是公司层面算法部写的库,不是单独哪个人能写出来的。
源码都在那,有能力可以自己跟下。
mpi_dec_test等Sample可以正常使用的情况下,他们是不会接受其他询问的
作者: cxjrk    时间: 2020-8-5 13:58
你好啊,解码六路视频都有在屏幕上显示出来吗
作者: kispr    时间: 2020-8-5 14:15
cxjrk 发表于 2020-8-5 13:58
你好啊,解码六路视频都有在屏幕上显示出来吗

显示出来了
作者: cxjrk    时间: 2020-8-6 08:58
kispr 发表于 2020-8-5 14:15
显示出来了

可否请教你一个问题呢,你是用openges+drm做渲染和显示吗,如果不是的话,是怎么实现六路显示的呢,我目前用opengles渲染,drm显示,我自己只做到两路视频显示,一路视频用一个plane,希望能指点一下小弟哈




欢迎光临 Toybrick (https://t.rock-chips.com/) Powered by Discuz! X3.3