non-existing PPS referenced

Jarosław Przybyłowicz jaroslaw.przybylowicz at mlabs.pl
Mon Mar 14 05:16:32 PDT 2011


I've managed to fix the problem. It appears that udpsrc is dropping some 
packets with default buffer-size. Setting to 500KB made it a lot better 
(any ideas on the optimal values?)
Still there is an issue with timestamping, sometimes when packets are 
dropped on udp, videosink is starting to drop frames (really lot of 
them) this won't stabilize itself and continues until playback is finished.

What can I do about this?

Best regards,

Jaroslaw

On 03/11/2011 03:53 PM, Jarosław Przybyłowicz wrote:
> When it comes to my broken client, I tried a gst-launch with pipeline 
> that "simulates" things that happen in code.
>
> So here it goes:
> server pipeline
>
> gst-launch-0.10 gstrtpbin name=rtpbin filesrc 
> location=/home/versor/pirates4-tlr1_h1080p.mov ! decodebin2 
> caps=video/x-h264 ! rtph264pay config-interval=1 ! 
> rtpbin.send_rtp_sink_0 rtpbin.send_rtp_src_0 ! udpsink port=5000
>
> client pipeline
> gst-launch-0.10 --gst-debug-level=2 gstrtpbin name=rtpbin udpsrc 
> caps="application/x-rtp, media=(string)video, clock-rate=(int)90000, 
> encoding-name=(string)H264, 
> sprop-parameter-sets=\"J01AKKkYDwDLYA1AQEBtsK173wE\\=\\,KN4JyA\\=\\=\", payload=96" 
> port=5000 ! rtpbin.recv_rtp_sink_0 rtpbin. ! rtph264depay ! decodebin2 
> ! autovideosink
>
> It behaves exactly same way, plays video well for first few seconds 
> and just after that I get errors in log
>
> 0:00:00.579418412 30223      0x275ed90 ERROR                 ffmpeg 
> :0:: number of reference frames exceeds max (probably corrupt input), 
> discarding one
> 0:00:00.579475690 30223      0x275ed90 ERROR                 ffmpeg 
> :0:: number of reference frames exceeds max (probably corrupt input), 
> discarding one
> 0:00:00.579491473 30223      0x275ed90 ERROR                 ffmpeg 
> :0:: number of reference frames exceeds max (probably corrupt input), 
> discarding one
> 0:00:00.579505878 30223      0x275ed90 ERROR                 ffmpeg 
> :0:: number of reference frames exceeds max (probably corrupt input), 
> discarding one
> 0:00:00.579520028 30223      0x275ed90 ERROR                 ffmpeg 
> :0:: number of reference frames exceeds max (probably corrupt input), 
> discarding one
> 0:00:00.579533926 30223      0x275ed90 ERROR                 ffmpeg 
> :0:: number of reference frames exceeds max (probably corrupt input), 
> discarding one
> 0:00:00.579547878 30223      0x275ed90 ERROR                 ffmpeg 
> :0:: number of reference frames exceeds max (probably corrupt input), 
> discarding one
> 0:00:00.579561737 30223      0x275ed90 ERROR                 ffmpeg 
> :0:: number of reference frames exceeds max (probably corrupt input), 
> discarding one
> 0:00:00.579575746 30223      0x275ed90 ERROR                 ffmpeg 
> :0:: number of reference frames exceeds max (probably corrupt input), 
> discarding one
> 0:00:00.579589750 30223      0x275ed90 ERROR                 ffmpeg 
> :0:: number of reference frames exceeds max (probably corrupt input), 
> discarding one
> 0:00:00.579603696 30223      0x275ed90 ERROR                 ffmpeg 
> :0:: number of reference frames exceeds max (probably corrupt input), 
> discarding one
> 0:00:00.579617630 30223      0x275ed90 ERROR                 ffmpeg 
> :0:: number of reference frames exceeds max (probably corrupt input), 
> discarding one
> 0:00:00.579631531 30223      0x275ed90 ERROR                 ffmpeg 
> :0:: number of reference frames exceeds max (probably corrupt input), 
> discarding one
> 0:00:00.579645570 30223      0x275ed90 ERROR                 ffmpeg 
> :0:: number of reference frames exceeds max (probably corrupt input), 
> discarding one
> 0:00:00.579659381 30223      0x275ed90 ERROR                 ffmpeg 
> :0:: number of reference frames exceeds max (probably corrupt input), 
> discarding one
> 0:00:00.579673226 30223      0x275ed90 ERROR                 ffmpeg 
> :0:: number of reference frames exceeds max (probably corrupt input), 
> discarding one
> 0:00:00.579687301 30223      0x275ed90 ERROR                 ffmpeg 
> :0:: number of reference frames exceeds max (probably corrupt input), 
> discarding one
> 0:00:00.579701199 30223      0x275ed90 ERROR                 ffmpeg 
> :0:: number of reference frames exceeds max (probably corrupt input), 
> discarding one
> 0:00:00.579715262 30223      0x275ed90 ERROR                 ffmpeg 
> :0:: number of reference frames exceeds max (probably corrupt input), 
> discarding one
> 0:00:00.579729469 30223      0x275ed90 ERROR                 ffmpeg 
> :0:: number of reference frames exceeds max (probably corrupt input), 
> discarding one
> 0:00:00.579743424 30223      0x275ed90 ERROR                 ffmpeg 
> :0:: number of reference frames exceeds max (probably corrupt input), 
> discarding one
> 0:00:00.579757263 30223      0x275ed90 ERROR                 ffmpeg 
> :0:: number of reference frames exceeds max (probably corrupt input), 
> discarding one
> 0:00:00.579771167 30223      0x275ed90 ERROR                 ffmpeg 
> :0:: number of reference frames exceeds max (probably corrupt input), 
> discarding one
> 0:00:00.579784966 30223      0x275ed90 ERROR                 ffmpeg 
> :0:: number of reference frames exceeds max (probably corrupt input), 
> discarding one
> 0:00:00.579798858 30223      0x275ed90 ERROR                 ffmpeg 
> :0:: number of reference frames exceeds max (probably corrupt input), 
> discarding one
> 0:00:05.440395062 30223      0x275ed90 ERROR                 ffmpeg 
> :0:: non-existing PPS referenced
> 0:00:05.440484100 30223      0x275ed90 ERROR                 ffmpeg 
> :0:: number of reference frames exceeds max (probably corrupt input), 
> discarding one
> 0:00:05.456588320 30223      0x275ed90 ERROR                 ffmpeg 
> :0:: non-existing PPS referenced
> 0:00:05.475654377 30223      0x275ed90 ERROR                 ffmpeg 
> :0:: non-existing PPS referenced
> 0:00:05.498713693 30223      0x275ed90 ERROR                 ffmpeg 
> :0:: non-existing PPS referenced
> 0:00:05.529932566 30223      0x275ed90 ERROR                 ffmpeg 
> :0:: non-existing PPS referenced
> 0:00:05.567931166 30223      0x275ed90 ERROR                 ffmpeg 
> :0:: non-existing PPS referenced
> 0:00:05.611954462 30223      0x275ed90 ERROR                 ffmpeg 
> :0:: non-existing PPS referenced
> 0:00:05.651577010 30223      0x275ed90 ERROR                 ffmpeg 
> :0:: non-existing PPS referenced
> 0:00:05.780057524 30223      0x275ed90 ERROR                 ffmpeg 
> :0:: non-existing PPS referenced
>
> I tried to look at the gst-launch with playbin2 and increased 
> verbosity to check if my pipeline is different, but it seems that it 
> is constructed in the same way.
> What am I missing?
>
> Thanks for help,
>
> Jaroslaw
>
> On 03/10/2011 04:53 PM, Kapil Agrawal wrote:
>> Hello Jaroslaw,
>>
>> The problem is that in case of streaming if sps & pps is lost no 
>> decoder can decode the H264 video, hence you getting the error 
>> "non-existing PPS referenced".
>>
>> To fix this please set config-interval property of rtph264pay , so 
>> that sps &pps are sent again and again. This will resolve your issue .
>>
>> Cheers
>> Kapil
>
>
>
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel


-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 8200 bytes
Desc: S/MIME Cryptographic Signature
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20110314/d681aa01/attachment-0001.bin>


More information about the gstreamer-devel mailing list