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