Jason Taylor wrote:
Hi All,
I have a program that is capable of playing multiple video streams at
the same time. Each video stream exist in a separate thread.
I have noticed that I get a lot of this error:
[h264 @ 0x9ca59f0]non-existing PPS referenced
Last message repeated 3 times
[h264 @ 0x9ca59f0]number of reference frames exceeds max (probably
corrupt input), discarding one
Last message repeated 11 times
[h264 @ 0x9ca59f0]non-existing PPS referenced
whenever I try to read multiple h264 streams in different threads in
my program. This error seems to pop up with every av_read_frame call
that I make when using multiple streams in multiple threads. It seems
that both videos are playing fine, but I am wondering if I should be
concerned about this error?
[...]
Do I need to put a mutex around any of these functions to make ffmpeg
thread happy? Or is there something else that I am missing?
If you know the input bitstream is valid, then you should be concerned.
My app runs multiple FFmpeg h264 decoders cleanly in separate threads;
no mutex required.
My guess is that those messages are caused by corrupted compressed data.
Some of the demuxers recycle data buffers; do you do anything to
preserve the AVPacket data before calling av_read_packet() again? For an
example, you can look at how av_dup_packet() is used in ffplay.c.
--
Mike Scheutzow
_______________________________________________
libav-user mailing list
[email protected]
https://lists.mplayerhq.hu/mailman/listinfo/libav-user