Re: [libav-devel] Problem with H.264 and NALU chunks

2012-10-20 Thread Felipe Contreras
On Sat, Oct 20, 2012 at 5:58 AM, Ronald S. Bultje rsbul...@gmail.com wrote:
 On Fri, Oct 19, 2012 at 6:55 PM, Felipe Contreras
 felipe.contre...@gmail.com wrote:
 While testing an mpegts stream I found what appears to be a bug in the
 H.264 decoder that only happens on certain processors.

 The stream is here[1], but I've split the specific chunks I get from
 the demuxer. They are not complete access-units, but I've set the flag
 CODEC_FLAG2_CHUNKS. On one laptop it works perfectly fine, on another
 I get a bunch of corruption, errors, and valgrind complains that wrong
 memory accesses. The first one is a Core i5, the other a Core i7.

 This happens both on v0.8.3 and the master branch.

 If I use GStreamer's H.264 parser to aggregate the NAL units into
 access-units, it works fine.

 Any ideas?

 Aren't you supposed to use the internal h264 parser to do the chunking
 before feeding it into the decoder if you choose to not use the
 built-in demuxers? (The built-in ones will automatically call the
 parser for you if you call av_read_frame() instead of
 av_read_packet().)

Never mind. After a lot of triage I found that GStreamer has two MPEG
ts demuxers, one works for this stream and I was using that in the
other machine, the other one doesn't.

I can send unaligned NALUs to the H.264 decoder just fine using the
aforementioned flag :)

Cheers.

-- 
Felipe Contreras
___
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel


Re: [libav-devel] Problem with H.264 and NALU chunks

2012-10-19 Thread Ronald S. Bultje
Hi,

On Fri, Oct 19, 2012 at 6:55 PM, Felipe Contreras
felipe.contre...@gmail.com wrote:
 Hi,

 While testing an mpegts stream I found what appears to be a bug in the
 H.264 decoder that only happens on certain processors.

 The stream is here[1], but I've split the specific chunks I get from
 the demuxer. They are not complete access-units, but I've set the flag
 CODEC_FLAG2_CHUNKS. On one laptop it works perfectly fine, on another
 I get a bunch of corruption, errors, and valgrind complains that wrong
 memory accesses. The first one is a Core i5, the other a Core i7.

 This happens both on v0.8.3 and the master branch.

 If I use GStreamer's H.264 parser to aggregate the NAL units into
 access-units, it works fine.

 Any ideas?

Aren't you supposed to use the internal h264 parser to do the chunking
before feeding it into the decoder if you choose to not use the
built-in demuxers? (The built-in ones will automatically call the
parser for you if you call av_read_frame() instead of
av_read_packet().)

Or in other words, is this in any way reproducible with avconv/avplay?

Ronald
___
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel