omxh264dec leaks frame on raspberry pi

Nicolas Dufresne nicolas at ndufresne.ca
Wed Aug 2 15:45:38 UTC 2017


Le mercredi 02 août 2017 à 20:58 +0530, Shrishty Deorari a écrit :
> Hi All,
> 
> I have build gstreamer on raspberry pi 3 and using omxh264enc and
> omxh264dec for encoding and decoding video frames.
> 
> Sample Pipeline which I am using is something like this :
> gst-launch-1.0 --gst-debug=videodecoder:7  rtspsrc
> location="rtsp://admin:test1234@192.168.3.91"  ! rtpjitterbuffer !
> rtph264depay ! h264parse !  omxh264dec  ! video/x-raw,format=I420 ! 
> videoscale ! videorate ! video/x-
> raw,width=640,height=480,framerate=15/1 ! queue !   videoconvert !
> queue ! omxh264enc control-rate=1 target-bitrate=512000 inline-
> header=1 inline-au-delimiter=1 periodicty-idr=30 interval-
> intraframes=120 !  queue ! h264parse config-interval=1 ! mpegtsmux ! 
> tcpserversink host=192.168.3.224 port=21000
> 
> 
> I need to use omxh264dec and omxh264enc together in same pipeline.
> 
> The issue I am facing is : Out of the 3 time once the omxh264dec
> fails to decode the video frame. On increasing the debug level I saw
> the following logs continuously:
> 
> 0:00:00.033333333 size 6146
> 0:00:10.505368712 10904   0x63ae30 LOG             videodecoder
> gstvideodecoder.c:2543:gst_video_decoder_new_frame:<omxh264dec-
> omxh264dec0> Created new frame 0x69a83348 (sfn:302)
> 
> 0:00:10.505542566 10904   0x63ae30 LOG             videodecoder
> gstvideodecoder.c:3313:gst_video_decoder_decode_frame:<omxh264dec-
> omxh264dec0> PTS 0:00:10.103868981, DTS 0:00:10.107746394
> 0:00:10.505659493 10904   0x63ae30 LOG             videodecoder
> gstvideodecoder.c:3314:gst_video_decoder_decode_frame:<omxh264dec-
> omxh264dec0> dist 302
> 0:00:10.505808139 10904   0x63ae30 DEBUG           videodecoder
> gstvideodecoder.c:3321:gst_video_decoder_decode_frame:<omxh264dec-
> omxh264dec0> decoder frame list getting long: 302 frames,possible
> internal leaking?
> 
> How can I resolve this issue?

Debug, analyze, identify, and then fix. All we know is that we have
less buffers coming out of the decoder then buffers coming in. Maybe
add h264parse between the encoder and the decoder ? I know that the
encoder pretends to produce AU aligned H264, but we don't have any code
validating that.

> 
> 
> gstreamer Version 1.8.0
> gst- omx version -- 1.10.2

You could git git master of gst-omx a try.

regards,
Nicolas
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 195 bytes
Desc: This is a digitally signed message part
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20170802/be4c4cd7/attachment.sig>


More information about the gstreamer-devel mailing list