[MPlayer-users] EXC_BAD_ACCESS with exotic expand/scale filter combination
cbreak
cbreak at the-color-black.net
Mon Jul 21 03:08:11 CEST 2008
The crashes occur with many movies of various types and sizes, but not
with all. They occured since I use the following config options:
vf-pre=screenshot
vf-add=expand=:::::1.6,scale=-2:1050
(The goal of that is to scale the image before the subtitles are
rendered, so that the subtitles are rendered in a high resolution and
aren't blurry.)
artefact:mplayer cbreak$ gdb --args ./mplayer test.ogm
GNU gdb 6.3.50-20050815 (Apple version gdb-768) (Tue Oct 2 04:07:49
UTC 2007)
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and
you are
welcome to change it and/or distribute copies of it under certain
conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for
details.
This GDB was configured as "i386-apple-darwin"...Reading symbols for
shared libraries .............
...
........ done
(gdb) run
Starting program: /Volumes/Chronos/Installers/mplayer/mplayer test.ogm
Reading symbols for shared libraries +++++++++++++++++++++++++
+....................................................................
done
MPlayer dev-SVN-r27330-4.0.1 (C) 2000-2008 MPlayer Team
CPU: Intel(R) Xeon(R) CPU E5462 @ 2.80GHz (Family: 6,
Model: 23, Stepping: 6)
CPUflags: MMX: 1 MMX2: 1 3DNow: 0 3DNow2: 0 SSE: 1 SSE2: 1
Compiled for x86 CPU with extensions: MMX MMX2 SSE SSE2
Playing test.ogm.
[Ogg] stream 0: video (FOURCC DX50), -vid 0
[Ogg] stream 1: audio (Vorbis), -aid 0
[Ogg] stream 2: audio (Vorbis), -aid 1
[Ogg] stream 3: subtitles (SRT-like text subtitles), -sid 0
[Ogg] stream 4: subtitles (SRT-like text subtitles), -sid 1
Ogg file format detected.
VIDEO: [DX50] 640x480 24bpp 23.976 fps 0.0 kbps ( 0.0 kbyte/s)
Clip info:
Language: English
Reading symbols for shared libraries . done
Reading symbols for shared libraries . done
Reading symbols for shared libraries . done
Reading symbols for shared libraries . done
Reading symbols for shared libraries . done
Opening video filter: [scale]
[ass] auto-open
Opening video filter: [scale w=-2 h=1050]
Opening video filter: [expand aspect=1.6]
Expand: -1 x -1, -1 ; -1, osd: 0, aspect: 1.600000, round: 1
Opening video filter: [screenshot]
[ass] Init
=
=
========================================================================
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
Selected video codec: [ffodivx] vfm: ffmpeg (FFmpeg MPEG-4)
=
=
========================================================================
=
=
========================================================================
Opening audio decoder: [ffmpeg] FFmpeg/libavcodec audio decoders
[Ogg] Language for -sid 0 is '-slang "English (Formated)"'
[Ogg] Language for -sid 1 is '-slang "English (Unformated)"'
Demuxer info Language changed to English (Unformated)
AUDIO: 48000 Hz, 2 ch, s16le, 96.0 kbit/6.25% (ratio: 12000->192000)
Selected audio codec: [ffvorbis] afm: ffmpeg (FFmpeg Vorbis decoder)
=
=
========================================================================
Reading symbols for shared libraries . done
Reading symbols for shared libraries . done
Reading symbols for shared libraries . done
Reading symbols for shared libraries . done
Reading symbols for shared libraries . done
Reading symbols for shared libraries . done
AO: [macosx] 48000Hz 2ch s16le (2 bytes per sample)
Starting playback...
[mpeg4 @ 0x81faf0]Invalid and inefficient vfw-avi packed B frames
detected
VDec: vo config request - 640 x 480 (preferred colorspace: Planar YV12)
VDec: using Planar YV12 as output csp (no 0)
Movie-Aspect is 1.33:1 - prescaling to correct movie aspect.
[swscaler @ 0x81cde0]No accelerated colorspace conversion found.
[swscaler @ 0x81cde0]using unscaled yuv420p -> rgb24 special converter
VO: [macosx] 1680x1050 => 1680x1050 Packed YUY2
Reading symbols for shared libraries . done
Reading symbols for shared libraries . done
Full DR not possible, trying SLICES instead!
Reading symbols for shared libraries .. done
Full DR not possible, trying SLICES instead!/ 1 ??% ??% ??,?% 0 0
Full DR not possible, trying SLICES instead!/ 2 ??% ??% ??,?% 1 0
Why do we get NULL??V: 0.130 ct: -0.004 3/ 3 ??% ??% ??,?% 1 0
Program received signal EXC_BAD_ACCESS, Could not access memory.
Reason: KERN_PROTECTION_FAILURE at address: 0x00000000
put_image (vf=0x108d720, mpi=0x0, pts=0.16683320701122284) at
libmpcodecs/vf_scale.c:369
369 if(!(mpi->flags&MP_IMGFLAG_DRAW_CALLBACK && dmpi)){
(gdb) bt
#0 put_image (vf=0x108d720, mpi=0x0, pts=0.16683320701122284) at
libmpcodecs/vf_scale.c:369
#1 0x0015e484 in put_image (vf=0x10915b0, mpi=0x10272c0,
pts=0.16683320701122284) at libmpcodecs/vf_screenshot.c:205
Cannot access memory at address 0xbc
(gdb) disass $pc-32 $pc+32
Dump of assembler code from 0x9f793 to 0x9f7d3:
0x0009f793 <put_image+3>: mov %esi,0x34(%esp)
0x0009f797 <put_image+7>: mov 0x44(%esp),%esi
0x0009f79b <put_image+11>: movsd 0x48(%esp),%xmm0
0x0009f7a1 <put_image+17>: mov %edi,0x38(%esp)
0x0009f7a5 <put_image+21>: movsd %xmm0,0x28(%esp)
0x0009f7ab <put_image+27>: mov 0x40(%esp),%edi
0x0009f7af <put_image+31>: mov %ebx,0x30(%esp)
0x0009f7b3 <put_image+35>: movzwl (%esi),%eax
0x0009f7b6 <put_image+38>: mov 0x68(%esi),%ebx
0x0009f7b9 <put_image+41>: shr $0xc,%eax
0x0009f7bc <put_image+44>: xor $0x1,%eax
0x0009f7bf <put_image+47>: mov %al,%dl
0x0009f7c1 <put_image+49>: and $0x1,%dl
0x0009f7c4 <put_image+52>: test %ebx,%ebx
0x0009f7c6 <put_image+54>: sete %al
0x0009f7c9 <put_image+57>: or %al,%dl
0x0009f7cb <put_image+59>: jne 0x9f810 <put_image+128>
0x0009f7cd <put_image+61>: mov 0x64(%edi),%edx
0x0009f7d0 <put_image+64>: mov (%edx),%eax
0x0009f7d2 <put_image+66>: cmp 0x18(%esi),%eax
End of assembler dump.
(gdb) info all-registers
eax 0x108d6b0 17356464
ecx 0x9f790 653200
edx 0x108d720 17356576
ebx 0x1091620 17372704
esp 0xbfffe540 0xbfffe540
ebp 0xb8 0xb8
esi 0x0 0
edi 0x108d720 17356576
eip 0x9f7b3 0x9f7b3 <put_image+35>
eflags 0x10282 66178
cs 0x17 23
ss 0x1f 31
ds 0x1f 31
es 0x1f 31
fs 0x0 0
gs 0x37 55
st0 -nan(0x532053205320532) (raw 0xffff0532053205320532)
st1 -nan(0x360c0b1efed60000) (raw 0xffff360c0b1efed60000)
st2 -nan(0x14c014c014c014c) (raw 0xffff014c014c014c014c)
st3 -nan(0x4000400040004) (raw 0xffff0004000400040004)
st4 -nan(0x4000400040004) (raw 0xffff0004000400040004)
st5 -nan(0x14c014c014c014c) (raw 0xffff014c014c014c014c)
st6 -nan(0x2000200020002) (raw 0xffff0002000200020002)
st7 137328651016.7660064697265625 (raw
0x4023ffcb67584620c800)
fctrl 0x37f 895
fstat 0x21 33
ftag 0xffff 65535
fiseg 0x17 23
fioff 0x116215 1139221
foseg 0x1f 31
fooff 0xbfffe680 -1073748352
fop 0x77c 1916
xmm0 {
v4_float = {0, 0, 1.54183316, 3.68934881e+19},
v2_double = {0, 0.16683320701122284},
v16_int8 = "\000\000\000\000\000\000\000\000??Z?`\000\000",
v8_int16 = {0, 0, 0, 0, 16325, 23242, 24576, 0},
v4_int32 = {0, 0, 1069898442, 1610612736},
v2_int64 = {0, 4595178820041965568},
uint128 = 415711806783
} (raw 0x00000060ca5ac53f0000000000000000)
xmm1 {
v4_float = {-nan(0x7fffff), -nan(0x7fffff), -nan(0x7fffff), -
nan(0x7fff00)},
v2_double = {-nan(0xfffffffffffff), -nan(0xfffffffffff00)},
v16_int8 = '?' <repeats 15 times>,
v8_int16 = {-1, -1, -1, -1, -1, -1, -1, -256},
v4_int32 = {-1, -1, -1, -256},
v2_int64 = {-1, -256},
uint128 = 0xffffffffffffffffffffffffffffff00
} (raw 0x00ffffffffffffffffffffffffffffff)
xmm2 {
v4_float = {-nan(0x7fffff), -nan(0x7fffff), -nan(0x7fffff), -
nan(0x7fffff)},
v2_double = {-nan(0xfffffffffffff), -nan(0xfffffffffffff)},
v16_int8 = '?' <repeats 16 times>,
v8_int16 = {-1, -1, -1, -1, -1, -1, -1, -1},
v4_int32 = {-1, -1, -1, -1},
v2_int64 = {-1, -1},
uint128 = 0xffffffffffffffffffffffffffffffff
} (raw 0xffffffffffffffffffffffffffffffff)
xmm3 {
v4_float = {5.62664606e-38, 5.6237762e-38, 0, 0},
v2_double = {5.8729988089759157e-301, 0},
v16_int8 = "\001?,\000\001?\030\000\000\000\000\000\000\000\000",
v8_int16 = {409, 11264, 409, 6144, 0, 0, 0, 0},
v4_int32 = {26815488, 26810368, 0, 0},
v2_int64 = {115171644013090816, 0},
uint128 = 0x01992c00019918000000000000000000
} (raw 0x000000000000000000189901002c9901)
xmm4 {
v4_float = {0, 0, 0, 5.62664606e-38},
v2_double = {0, 1.3248611397268197e-316},
v16_int8 = '\0' <repeats 12 times>, "\001?,",
v8_int16 = {0, 0, 0, 0, 0, 0, 409, 11264},
v4_int32 = {0, 0, 0, 26815488},
v2_int64 = {0, 26815488},
uint128 = 12553128549285888
} (raw 0x002c9901000000000000000000000000)
xmm5 {
v4_float = {0, 0, 0, 0},
v2_double = {0, 0},
v16_int8 = '\0' <repeats 15 times>,
v8_int16 = {0, 0, 0, 0, 0, 0, 0, 0},
v4_int32 = {0, 0, 0, 0},
v2_int64 = {0, 0},
uint128 = 0
} (raw 0x00000000000000000000000000000000)
xmm6 {
v4_float = {-0.00268446305, 0.999996424, -0.0057523963, 0.99998343},
v2_double = {-1.3205514186133783e-23, -6.0339505591072256e-21},
v16_int8 = "?/????Ļ?~????",
v8_int16 = {-17617, -4655, 16255, -60, -17476, 32409, 16255, -278},
v4_int32 = {-1154486831, 1065353156, -1145274727, 1065352938},
v2_int64 = {-4958483181742325820, -4918917496334975254},
uint128 = 0xbb2fedd13f7fffc4bbbc7e993f7ffeea
} (raw 0xeafe7f3f997ebcbbc4ff7f3fd1ed2fbb)
xmm7 {
v4_float = {-0, -0, -0, -0},
v2_double = {-1.0609978954826362e-314, -1.0609978954826362e-314},
v16_int8 = "?\000\000\000?\000\000\000?\000\000\000?\000\000",
v8_int16 = {-32768, 0, -32768, 0, -32768, 0, -32768, 0},
v4_int32 = {-2147483648, -2147483648, -2147483648, -2147483648},
v2_int64 = {-9223372034707292160, -9223372034707292160},
uint128 = 0x80000000800000008000000080000000
} (raw 0x00000080000000800000008000000080)
mxcsr 0x1fa7 8103
mm0 {
uint64 = 374367431418840370,
v2_int32 = {87164210, 87164210},
v4_int16 = {1330, 1330, 1330, 1330},
v8_int8 = "2\0052\0052\0052\005"
} (raw 0x0532053205320532)
mm1 {
uint64 = 3894500005520998400,
v2_int32 = {-19529728, 906758942},
v4_int16 = {0, -298, 2846, 13836},
v8_int8 = "\000\000??\036\v\f6"
} (raw 0x360c0b1efed60000)
mm2 {
uint64 = 93451118218838348,
v2_int32 = {21758284, 21758284},
v4_int16 = {332, 332, 332, 332},
v8_int8 = "L\001L\001L\001L\001"
} (raw 0x014c014c014c014c)
mm3 {
uint64 = 1125917086973956,
v2_int32 = {262148, 262148},
v4_int16 = {4, 4, 4, 4},
v8_int8 = "\004\000\004\000\004\000\004"
} (raw 0x0004000400040004)
mm4 {
uint64 = 1125917086973956,
v2_int32 = {262148, 262148},
v4_int16 = {4, 4, 4, 4},
v8_int8 = "\004\000\004\000\004\000\004"
} (raw 0x0004000400040004)
mm5 {
uint64 = 93451118218838348,
v2_int32 = {21758284, 21758284},
v4_int16 = {332, 332, 332, 332},
v8_int8 = "L\001L\001L\001L\001"
} (raw 0x014c014c014c014c)
mm6 {
uint64 = 562958543486978,
v2_int32 = {131074, 131074},
v4_int16 = {2, 2, 2, 2},
v8_int8 = "\002\000\002\000\002\000\002"
} (raw 0x0002000200020002)
mm7 {
uint64 = -14804544934328320,
v2_int32 = {1176553472, -3446952},
v4_int16 = {-14336, 17952, 26456, -53},
v8_int8 = "\000? FXg??"
} (raw 0xffcb67584620c800)
(gdb)
More information about the MPlayer-users
mailing list