non-existing PPS referenced
Jarosław Przybyłowicz
jaroslaw.przybylowicz at mlabs.pl
Fri Mar 11 06:53:24 PST 2011
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
-------------- 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/20110311/e560716b/attachment.bin>
More information about the gstreamer-devel
mailing list