[libav-api] problem handling aac/ac3 data...

wecing w3cing at gmail.com
Wed Jun 1 15:56:20 CEST 2011


Hi,

Recently I'm trying to write a simple video player with libav. I tested my
program with three video files; one encoded in mpeg4/mp2(64kbps), one in
h264/aac(95kbps), and one in h264/ac3(384kbps).
Playing of the first file is as perfect as I expected -- but the other two
are not. They both encountered segment fault at
float_to_int16_interleave_sse2, and here are the backtracks:

1.
Program received signal SIGSEGV, Segmentation fault.
0x0840aa15 in float_to_int16_interleave_sse2 (dst=0xb638d408,
src=0xbffff75c, len=-1024,
channels=2) at libavcodec/x86/dsputil_mmx.c:2475
2475 FLOAT_TO_INT16_INTERLEAVE(sse2,
(gdb) bt
#0 0x0840aa15 in float_to_int16_interleave_sse2 (dst=0xb638d408,
src=0xbffff75c, len=-1024,
channels=2) at libavcodec/x86/dsputil_mmx.c:2475
#1 0x08443cc6 in ac3_decode_frame (avctx=0x8b44a10, data=0xb638d008,
data_size=0xbffff81c,
avpkt=0xbffff7e0) at libavcodec/ac3dec.c:1419
#2 0x08357ded in avcodec_decode_audio3 (avctx=0x8b44a10, samples=0xb638d008,

frame_size_ptr=0x8b99cd0, avpkt=0xbffff7e0) at libavcodec/utils.c:656

2.
0x0840aa15 in float_to_int16_interleave_sse2 (dst=0x8f43f18, src=0x8b449ec,
len=-4096,
channels=2) at libavcodec/x86/dsputil_mmx.c:2475
2475 FLOAT_TO_INT16_INTERLEAVE(sse2,
(gdb) bt
#0 0x0840aa15 in float_to_int16_interleave_sse2 (dst=0x8f43f18,
src=0x8b449ec, len=-4096,
channels=2) at libavcodec/x86/dsputil_mmx.c:2475
#1 0x08438901 in aac_decode_frame (avctx=0x8b41b70, data=0x8f42f18,
data_size=0xb67af22c,
avpkt=0xb67af1f0) at libavcodec/aacdec.c:2097
#2 0x08357ded in avcodec_decode_audio3 (avctx=0x8b41b70, samples=0x8f42f18,
frame_size_ptr=0x8bd8b00, avpkt=0xb67af1f0) at libavcodec/utils.c:656

Any idea? Full code is totally about 700 lines, so it would be hard to put
it here.

wecing.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.libav.org/pipermail/libav-api/attachments/20110601/12d16639/attachment.htm>


More information about the libav-api mailing list