[MPlayer-dev-eng] Segmentation fault in libaf/af_format.c
Ingo Brückl
ib at wupperonline.de
Mon Mar 24 16:52:46 CET 2014
With current GUI (r37059) I'll get a segmentation fault in
libaf/af_format.c:558 for ac3 audio.
The reason is the call to mixer_setbalance() triggered by
uiEvent(ivSetBalance, guiInfo.Balance) in gui/interface.c, line 720, and
- as a sequel - af_add(mixer->afilter, "pan") in mixer.c, line 163 which
finally adds the "format" filter. (Without adding "pan" everything seems
fine.)
Ingo
-------------- next part --------------
MPlayer UNKNOWN-4.3.4 (C) 2000-2014 MPlayer Team
Keine UTF-8-Locale gefunden, Tasten mit Zeichen
jenseits von Latin-1 werden nicht erkannt werden.
Spiele /media/cdrom/AC3/prologe.AC3.
libavformat version 55.19.104 (external)
libavformat-Dateiformat erkannt!
[ac3 @ 0xb78f5220]Estimating duration from bitrate, this may be inaccurate
[lavf] stream 0: audio (ac3), -aid 0
Load subtitles in /media/cdrom/AC3/
==========================================================================
Erzwungener Audiocodec: hwac3
Öffne Audiodecoder: [hwac3] AC3/DTS pass-through S/PDIF
hwac3: switched to AC3, 448000 bps, 48000 Hz
AUDIO: 48000 Hz, 2 ch, ac3be, 448.0 kbit/29.17% (ratio: 56000->192000)
Ausgewählter Audiocodec: [hwac3] afm: hwac3 (AC3 through S/PDIF)
==========================================================================
[AO_ALSA] Format ac3be wird von der Hardware nicht unterstützt, versuche Standard.
AO: [alsa] 48000Hz 2ch ac3le (2 bytes per sample)
Video: kein Video
[format] Sample format big-endian AC3 not yet supported
[Mixer] Keine Regelung für Balance verfügbar.
Starte Wiedergabe...
Program received signal SIGSEGV, Segmentation fault.
0xb7d0fbc9 in int2float (in=0xb82141c0, out=0xb82381f0, len=33792, bps=2)
at libaf/af_format.c:558
558 out[i]=(1.0f/32768.0f)*((int16_t*)in)[i];
(gdb) bt
#0 0xb7d0fbc9 in int2float (in=0xb82141c0, out=0xb82381f0, len=33792, bps=2)
at libaf/af_format.c:558
#1 0xb7d103ac in play (af=0xb81c2730, data=0xbfffd360)
at libaf/af_format.c:302
#2 0xb7d0c4b1 in af_play (s=0xb820f660, data=0x8400) at libaf/af.c:572
#3 0xb7d211d1 in filter_n_bytes (len=<optimized out>, sh=<optimized out>)
at libmpcodecs/dec_audio.c:412
#4 mp_decode_audio (sh_audio=0xb812fbe8, minlen=65536)
at libmpcodecs/dec_audio.c:482
#5 0xb7c96708 in fill_audio_out_buffers () at mplayer.c:2178
#6 main (argc=-1116618752, argv=0x3f1c3e00) at mplayer.c:3775
(gdb) disass $pc-32,$pc+32
Dump of assembler code from 0xb7d0fba9 to 0xb7d0fbe9:
0xb7d0fba9 <int2float+121>: sbb $0x9f,%al
0xb7d0fbab <int2float+123>: inc %ebx
0xb7d0fbac <int2float+124>: cmp %ebx,%esi
0xb7d0fbae <int2float+126>: jg 0xb7d0fb80 <int2float+80>
0xb7d0fbb0 <int2float+128>: jmp 0xb7d0fb73 <int2float+67>
0xb7d0fbb2 <int2float+130>: lea 0x0(%esi),%esi
0xb7d0fbb8 <int2float+136>: xor %eax,%eax
0xb7d0fbba <int2float+138>: test %ecx,%ecx
0xb7d0fbbc <int2float+140>: jle 0xb7d0fb73 <int2float+67>
0xb7d0fbbe <int2float+142>: xchg %ax,%ax
0xb7d0fbc0 <int2float+144>: fild (%ebx,%eax,2)
0xb7d0fbc3 <int2float+147>: fmuls 0xb7f077c0
=> 0xb7d0fbc9 <int2float+153>: fstps (%edi,%eax,4)
0xb7d0fbcc <int2float+156>: inc %eax
0xb7d0fbcd <int2float+157>: cmp %eax,%esi
0xb7d0fbcf <int2float+159>: jg 0xb7d0fbc0 <int2float+144>
0xb7d0fbd1 <int2float+161>: jmp 0xb7d0fb73 <int2float+67>
0xb7d0fbd3 <int2float+163>: nop
0xb7d0fbd4 <int2float+164>: lea 0x0(%esi,%eiz,1),%esi
0xb7d0fbd8 <int2float+168>: test %ecx,%ecx
0xb7d0fbda <int2float+170>: jle 0xb7d0fb73 <int2float+67>
0xb7d0fbdc <int2float+172>: xor %edx,%edx
0xb7d0fbde <int2float+174>: xchg %ax,%ax
---Type <return> to continue, or q <return> to quit---
0xb7d0fbe0 <int2float+176>: movsbw (%ebx,%edx,1),%ax
0xb7d0fbe5 <int2float+181>: push %eax
0xb7d0fbe6 <int2float+182>: fild (%esp)
End of assembler dump.
(gdb) info all-registers
eax 0x8384 33668
ecx 0x8400 33792
edx 0xb82381f0 -1205632528
ebx 0xb82141c0 -1205780032
esp 0xbfffd28c 0xbfffd28c
ebp 0xbfffd298 0xbfffd298
esi 0x8400 33792
edi 0xb82381f0 -1205632528
eip 0xb7d0fbc9 0xb7d0fbc9 <int2float+153>
eflags 0x210212 [ AF IF RF ID ]
cs 0x73 115
ss 0x7b 123
ds 0x7b 123
es 0x7b 123
fs 0x0 0
gs 0x33 51
st0 0 (raw 0x00000000000000000000)
st1 -nan(0xd65a6badb5d65a6b) (raw 0xffffd65a6badb5d65a6b)
st2 -nan(0x6ddb36000000a0b5) (raw 0xffff6ddb36000000a0b5)
st3 -nan(0xbb3b1e8fb76ddbb6) (raw 0xffffbb3b1e8fb76ddbb6)
st4 -nan(0xbbbbbbbbbbbbbbbb) (raw 0xffffbbbbbbbbbbbbbbbb)
st5 -nan(0x6d1b8fc7bbbbbbbb) (raw 0xffff6d1b8fc7bbbbbbbb)
st6 -nan(0x5a6badb5d69acfb7) (raw 0xffff5a6badb5d69acfb7)
st7 4 (raw 0x40018000000000000000)
---Type <return> to continue, or q <return> to quit---
fctrl 0x37f 895
fstat 0x3820 14368
ftag 0x7fff 32767
fiseg 0x0 0
fioff 0x0 0
foseg 0x0 0
fooff 0x0 0
fop 0x0 0
xmm0 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0,
0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0},
uint128 = 0x00000000000000000000000000000000}
xmm1 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0,
0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0},
uint128 = 0x00000000000000000000000000000000}
xmm2 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0,
0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0},
uint128 = 0x00000000000000000000000000000000}
xmm3 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0,
0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0},
uint128 = 0x00000000000000000000000000000000}
---Type <return> to continue, or q <return> to quit---
xmm4 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0,
0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0},
uint128 = 0x00000000000000000000000000000000}
xmm5 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0,
0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0},
uint128 = 0x00000000000000000000000000000000}
xmm6 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0,
0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0},
uint128 = 0x00000000000000000000000000000000}
xmm7 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0,
0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0},
uint128 = 0x00000000000000000000000000000000}
mxcsr 0x9f80 [ IM DM ZM OM UM PM FZ ]
mm0 {uint64 = 0x8000000000000000, v2_int32 = {0x0, 0x80000000},
v4_int16 = {0x0, 0x0, 0x0, 0x8000}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
0x0, 0x80}}
mm1 {uint64 = 0x0, v2_int32 = {0x0, 0x0}, v4_int16 = {0x0, 0x0,
0x0, 0x0}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}}
mm2 {uint64 = 0xd65a6badb5d65a6b, v2_int32 = {0xb5d65a6b,
0xd65a6bad}, v4_int16 = {0x5a6b, 0xb5d6, 0x6bad, 0xd65a}, v8_int8 = {0x6b,
---Type <return> to continue, or q <return> to quit---
0x5a, 0xd6, 0xb5, 0xad, 0x6b, 0x5a, 0xd6}}
mm3 {uint64 = 0x6ddb36000000a0b5, v2_int32 = {0xa0b5, 0x6ddb3600},
v4_int16 = {0xa0b5, 0x0, 0x3600, 0x6ddb}, v8_int8 = {0xb5, 0xa0, 0x0, 0x0,
0x0, 0x36, 0xdb, 0x6d}}
mm4 {uint64 = 0xbb3b1e8fb76ddbb6, v2_int32 = {0xb76ddbb6,
0xbb3b1e8f}, v4_int16 = {0xdbb6, 0xb76d, 0x1e8f, 0xbb3b}, v8_int8 = {0xb6,
0xdb, 0x6d, 0xb7, 0x8f, 0x1e, 0x3b, 0xbb}}
mm5 {uint64 = 0xbbbbbbbbbbbbbbbb, v2_int32 = {0xbbbbbbbb,
0xbbbbbbbb}, v4_int16 = {0xbbbb, 0xbbbb, 0xbbbb, 0xbbbb}, v8_int8 = {0xbb,
0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb, 0xbb}}
mm6 {uint64 = 0x6d1b8fc7bbbbbbbb, v2_int32 = {0xbbbbbbbb,
0x6d1b8fc7}, v4_int16 = {0xbbbb, 0xbbbb, 0x8fc7, 0x6d1b}, v8_int8 = {0xbb,
0xbb, 0xbb, 0xbb, 0xc7, 0x8f, 0x1b, 0x6d}}
mm7 {uint64 = 0x5a6badb5d69acfb7, v2_int32 = {0xd69acfb7,
0x5a6badb5}, v4_int16 = {0xcfb7, 0xd69a, 0xadb5, 0x5a6b}, v8_int8 = {0xb7,
0xcf, 0x9a, 0xd6, 0xb5, 0xad, 0x6b, 0x5a}}
(gdb)
More information about the MPlayer-dev-eng
mailing list