[MPlayer-users] MPlayer crashes when playing with -vfm xvid, a file encoded with FFmpeg MPEG-4 encoder and the multi-thread option
Joshua F.
singing.frogg at gmail.com
Fri May 23 23:22:18 CEST 2008
Hi.
It seems that it's a XviD/FFmpeg codec bug more than a MPlayer one, as
it doesn't play well either with Windows XP and Windows Media Player.
I have to do the last pass of every encode with only one thread, which
imply poor encoding speed.
Thank you for reading.
--
Joshua F.
-------------- next part --------------
GNU gdb 6.8-debian
Copyright (C) 2008 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu"...
(gdb) run -v -vfm xvid ../temp.avi
Starting program: /home/homer/mplayer/mplayer -v -vfm xvid ../temp.avi
[Thread debugging using libthread_db enabled]
MPlayer dev-SVN-r26863-4.2.3 (C) 2000-2008 MPlayer Team
CPU: Intel(R) Core(TM)2 Duo CPU E6550 @ 2.33GHz (Family: 6, Model: 15, Stepping: 11)
CPUflags: MMX: 1 MMX2: 1 3DNow: 0 3DNow2: 0 SSE: 1 SSE2: 1
Compiled for x86 CPU with extensions: MMX MMX2 SSE SSE2
get_path('codecs.conf') -> '/home/homer/.mplayer/codecs.conf'
Reading /home/homer/.mplayer/codecs.conf: Can't open '/home/homer/.mplayer/codecs.conf': No such file or directory
Reading /usr/local/etc/mplayer/codecs.conf: Can't open '/usr/local/etc/mplayer/codecs.conf': No such file or directory
Using built-in default codecs.conf.
Configuration: --enable-debug=3
CommandLine: '-v' '-vfm' 'xvid' '../temp.avi'
init_freetype
Using MMX (with tiny bit MMX2) Optimized OnScreenDisplay
get_path('fonts') -> '/home/homer/.mplayer/fonts'
Using nanosleep() timing
get_path('input.conf') -> '/home/homer/.mplayer/input.conf'
Can't open input config file /home/homer/.mplayer/input.conf: No such file or directory
Can't open input config file /usr/local/etc/mplayer/input.conf: No such file or directory
Falling back on default (hardcoded) input config
get_path('temp.avi.conf') -> '/home/homer/.mplayer/temp.avi.conf'
Playing ../temp.avi.
get_path('sub/') -> '/home/homer/.mplayer/sub/'
[file] File size is 37463778 bytes
STREAM: [file] ../temp.avi
STREAM: Description: File
STREAM: Author: Albeu
STREAM: Comment: based on the code from ??? (probably Arpi)
LAVF_check: avi format
AVI file format detected.
list_end=0x120
======= AVI Header =======
us/frame: 41708 (fps=23.976)
max bytes/sec: 0
padding: 0
MainAVIHeader.dwFlags: (2320) HAS_INDEX IS_INTERLEAVED TRUST_CKTYPE
frames total: 6959 initial: 0
streams: 1
Suggested BufferSize: 0
Size: 704 x 400
==========================
list_end=0x120
==> Found video stream: 0
[aviheader] Video stream found, -vid 0
====== STREAM Header =====
Type: vids FCC: XVID (44495658)
Flags: 0
Priority: 0 Language: 0
InitialFrames: 0
Rate: 24000/1001 = 23.976
Start: 0 Len: 6959
Suggested BufferSize: 111007
Quality 0
Sample size: 0
==========================
Found 'bih', 40 bytes of 40
======= VIDEO Format ======
biSize 40
biWidth 704
biHeight 400
biPlanes 1
biBitCount 24
biCompression 1145656920='XVID'
biSizeImage 844800
===========================
Regenerating keyframe table for MPEG-4 video.
======= Video Properties Header =======
Format: 0 VideoStandard: 0
VRefresh: 24 HTotal: 704 VTotal: 400
FrameAspect: 16:9 Framewidth: 704 Frameheight: 400
Fields: 1
== Field 0 description ==
CompressedBMHeight: 400 CompressedBMWidth: 704
ValidBMHeight: 400 ValidBMWidth: 704
ValidBMXOffset: 0 ValidBMYOffset: 0
VideoXOffsetInT: 0 VideoYValidStartLine: 0
=======================================
list_end=0x152
hdr=Software size=30
Software : MEncoder dev-SVN-r26840-4.2.3
list_end=0x239F3EA
Found movie at 0x100C - 0x239F3EA
Reading INDEX block, 6959 chunks for 6959 frames (fpos=37352434).
AVI index offset: 0x1008 (movi=0x100C idx0=0x4 idx1=0x8A62)
Auto-selected AVI video ID = 0
AVI: Searching for audio stream (id:-1)
AVI: No audio stream found -> no sound.
AVI video size=37289205 (6959) audio size=0 (0)
VIDEO: [XVID] 704x400 24bpp 23.976 fps 1027.8 kbps (125.5 kbyte/s)
[V] filefmt:3 fourcc:0x44495658 size:704x400 fps:23.976 ftime:=0.0417
Clip info:
Software: MEncoder dev-SVN-r26840-4.2.3
get_path('sub/') -> '/home/homer/.mplayer/sub/'
dvdsublang...temp fr en eng
dvdsublang...temp fr en eng
dvdsublang...temp fr en eng
X11 opening display: :0.0
vo: X11 color mask: FFFFFF (R:FF0000 G:FF00 B:FF)
vo: X11 running at 1024x768 with depth 24 and 32 bpp (":0.0" => local display)
[x11] Detected wm supports NetWM.
[x11] Detected wm supports FULLSCREEN state.
[x11] Detected wm supports ABOVE state.
[x11] Detected wm supports BELOW state.
[x11] Current fstype setting honours FULLSCREEN ABOVE BELOW X atoms
[VO_XV] Using Xv Adaptor #0 (NV17 Video Texture)
[xv common] Drawing no colorkey.
[xv common] Maximum source image dimensions: 2046x2046
Opening video filter: [eq2=0.9:0.6:0.2]
vf_eq2: c=1.00 b=0.00 g=0.9000 s=1.00
vf_eq2: c=0.60 b=0.00 g=0.9000 s=1.00
vf_eq2: c=0.60 b=0.20 g=0.9000 s=1.00
vf_eq2: c=0.60 b=0.20 g=0.9000 s=1.00
==========================================================================
Trying to force video codec driver family xvid...
Opening video decoder: [xvid] XviD 1.0 decoder
xvid: using library version 1.1.3 (build xvid-1.1.3)
Selected video codec: [xvid] vfm: xvid (XviD (MPEG-4))
==========================================================================
Audio: no sound
Freeing 0 unused audio chunks.
Starting playback...
VDec: vo config request - 704 x 400 (preferred colorspace: Planar YV12)
Trying filter chain: eq2 vo
VDec: using Planar YV12 as output csp (no 0)
Movie-Aspect is 1.78:1 - prescaling to correct movie aspect.
VO Config (704x400->712x400,flags=0,'MPlayer',0x32315659)
REQ: flags=0x437 req=0x0
VO: [xv] 704x400 => 712x400 Planar YV12
VO: Description: X11/Xv
VO: Author: Gerd Knorr <kraxel at goldbach.in-berlin.de> and others
geometry set to width: -1,height: -1, xoff: -1, yoff: -1, xper: 50, yper: 50
geometry set to width: -1,height: -1, xoff: 156, yoff: 184, xper: 50, yper: 50
geometry window parameter: widw: 712, widh: 400, scrw: 1024, scrh: 768
Xvideo image format: 0x32595559 (YUY2) packed
Xvideo image format: 0x32315659 (YV12) planar
Xvideo image format: 0x59565955 (UYVY) packed
Xvideo image format: 0x30323449 (I420) planar
[New Thread 0x7ff12d4c2720 (LWP 9105)]
using Xvideo port 280 for hw scaling
[xv] dx: 0 dy: 0 dw: 712 dh: 400
*** [eq2] Exporting mp_image_t, 704x400x12bpp YUV planar, 422400 bytes
[xv] dx: 6 dy: 28 dw: 712 dh: 4000
*** [vo] Exporting mp_image_t, 704x400x12bpp YUV planar, 422400 bytes
Unicode font: 255 glyphs.
Unicode font: 255 glyphs.
V: 0.0 2/ 2 ??% ??% ??,?% 0 0
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7ff12d4c2720 (LWP 9105)]
0x000000000099b6f2 in get_mv ()
Current language: auto; currently asm
(gdb) bt
#0 0x000000000099b6f2 in get_mv ()
#1 0x00000000009d3148 in decoder_decode ()
#2 0x000000000061f25c in decode (sh=0x1066950, data=0x1081eb0,
len=<value optimized out>, flags=<value optimized out>)
at libmpcodecs/vd_xvid4.c:272
#3 0x00000000004d576f in decode_video (sh_video=0x1066950,
start=0x1081eb0 "", in_size=1571, drop_frame=0, pts=0.083416663110256195)
at libmpcodecs/dec_video.c:369
#4 0x0000000000455e40 in main (argc=5, argv=<value optimized out>)
at mplayer.c:2292
(gdb) disass $pc-32 $pc+32
Dump of assembler code from 0x99b6d2 to 0x99b712:
0x000000000099b6d2 <get_mv+178>: mov %eax,%ecx
0x000000000099b6d4 <get_mv+180>: shl %cl,%eax
0x000000000099b6d6 <get_mv+182>: or %eax,%edx
0x000000000099b6d8 <get_mv+184>: cmp $0x1ff,%edx
0x000000000099b6de <get_mv+190>: jbe 0x99b806 <get_mv+486>
0x000000000099b6e4 <get_mv+196>: shr $0x8,%edx
0x000000000099b6e7 <get_mv+199>: mov 0x4c0a52(%rip),%r10 # 0xe5c140 <_DYNAMIC+2384>
0x000000000099b6ee <get_mv+206>: lea -0x2(%rdx),%r8d
0x000000000099b6f2 <get_mv+210>: movzbl 0x4(%r10,%r8,8),%eax
0x000000000099b6f8 <get_mv+216>: add %r9d,%eax
0x000000000099b6fb <get_mv+219>: cmp $0x1f,%eax
0x000000000099b6fe <get_mv+222>: mov %eax,0xc(%rdi)
0x000000000099b701 <get_mv+225>: jbe 0x99b73e <get_mv+286>
0x000000000099b703 <get_mv+227>: mov 0x4(%rdi),%eax
0x000000000099b706 <get_mv+230>: mov %eax,(%rdi)
0x000000000099b708 <get_mv+232>: mov 0x10(%rdi),%rax
0x000000000099b70c <get_mv+236>: addq $0x4,0x10(%rdi)
0x000000000099b711 <get_mv+241>: mov 0x8(%rax),%edx
End of assembler dump.
(gdb) info all-registers
rax 0x0 0
rbx 0x0 0
rcx 0x13 19
rdx 0x0 0
rsi 0x1 1
rdi 0x7fff356bc720 140734089643808
rbp 0x7ff125586e70 0x7ff125586e70
rsp 0x7fff356bc5e8 0x7fff356bc5e8
r8 0xfffffffc 4294967292
r9 0x1 1
r10 0xbe3420 12465184
r11 0xd44095f7 3561002487
r12 0x7ff125510e70 140673689914992
r13 0x1 1
r14 0x0 0
r15 0x7ff125848040 140673693286464
rip 0x99b6f2 0x99b6f2 <get_mv+210>
eflags 0x210297 [ CF PF AF SF IF RF ID ]
cs 0x33 51
ss 0x2b 43
ds 0x0 0
es 0x0 0
fs 0x0 0
---Type <return> to continue, or q <return> to quit---
gs 0x0 0
st0 0 (raw 0x00000000000000000000)
st1 0 (raw 0x00000000000000000000)
st2 0 (raw 0x00000000000000000000)
st3 0 (raw 0x00000000000000000000)
st4 0 (raw 0x00000000000000000000)
st5 0 (raw 0x00000000000000000000)
st6 0 (raw 0x00000000000000000000)
st7 0 (raw 0x00000000000000000000)
fctrl 0x37f 895
fstat 0x0 0
ftag 0xffff 65535
fiseg 0x0 0
fioff 0x0 0
foseg 0x0 0
fooff 0x0 0
fop 0x0 0
xmm0 {v4_float = {0x0, 0x1, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x0, 0x0, 0x0, 0x60, 0xcb, 0x5a, 0xb5, 0x3f, 0x0, 0x0, 0x0, 0x0,
0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x6000, 0x5acb, 0x3fb5, 0x0, 0x0,
0x0, 0x0}, v4_int32 = {0x60000000, 0x3fb55acb, 0x0, 0x0}, v2_int64 = {
0x3fb55acb60000000, 0x0}, uint128 = 0x00000000000000003fb55acb60000000}
xmm1 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
---Type <return> to continue, or q <return> to quit---
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, 0x1, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x0, 0x0, 0x0, 0x60, 0xcb, 0x5a, 0xa5, 0x3f, 0x0, 0x0, 0x0, 0x0,
0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x6000, 0x5acb, 0x3fa5, 0x0, 0x0,
0x0, 0x0}, v4_int32 = {0x60000000, 0x3fa55acb, 0x0, 0x0}, v2_int64 = {
0x3fa55acb60000000, 0x0}, uint128 = 0x00000000000000003fa55acb60000000}
xmm3 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x5b, 0xd6, 0x2a, 0x3d, 0x0 <repeats 12 times>}, v8_int16 = {
0xd65b, 0x3d2a, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x3d2ad65b,
0x0, 0x0, 0x0}, v2_int64 = {0x3d2ad65b, 0x0},
uint128 = 0x0000000000000000000000003d2ad65b}
xmm4 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x5b, 0xd6, 0x2a, 0x3d, 0x0 <repeats 12 times>}, v8_int16 = {
0xd65b, 0x3d2a, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x3d2ad65b,
0x0, 0x0, 0x0}, v2_int64 = {0x3d2ad65b, 0x0},
uint128 = 0x0000000000000000000000003d2ad65b}
xmm5 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x54, 0x7b, 0x7b, 0x33, 0xce, 0xf2, 0x6, 0xbe, 0x0, 0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x7b54, 0x337b, 0xf2ce, 0xbe06, 0x0,
0x0, 0x0, 0x0}, v4_int32 = {0x337b7b54, 0xbe06f2ce, 0x0, 0x0}, v2_int64 = {
0xbe06f2ce337b7b54, 0x0}, uint128 = 0x0000000000000000be06f2ce337b7b54}
---Type <return> to continue, or q <return> to quit---
xmm6 {v4_float = {0x0, 0xfffffffe, 0x0, 0x0}, v2_double = {
0xfffffffffffffffa, 0x0}, v16_int8 = {0x4d, 0xf1, 0x5c, 0x3a, 0xd6, 0x3f,
0x1a, 0xc0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v8_int16 = {0xf14d,
0x3a5c, 0x3fd6, 0xc01a, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x3a5cf14d,
0xc01a3fd6, 0x0, 0x0}, v2_int64 = {0xc01a3fd63a5cf14d, 0x0},
uint128 = 0x0000000000000000c01a3fd63a5cf14d}
xmm7 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x30, 0x67, 0xc7, 0x93, 0x57, 0xf3, 0x5e, 0xbd, 0x0, 0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x6730, 0x93c7, 0xf357, 0xbd5e, 0x0,
0x0, 0x0, 0x0}, v4_int32 = {0x93c76730, 0xbd5ef357, 0x0, 0x0}, v2_int64 = {
0xbd5ef35793c76730, 0x0}, uint128 = 0x0000000000000000bd5ef35793c76730}
xmm8 {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}
xmm9 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x30, 0x67, 0xc7, 0x93, 0x57, 0xf3, 0x5e, 0xbd, 0x0, 0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x6730, 0x93c7, 0xf357, 0xbd5e, 0x0,
0x0, 0x0, 0x0}, v4_int32 = {0x93c76730, 0xbd5ef357, 0x0, 0x0}, v2_int64 = {
0xbd5ef35793c76730, 0x0}, uint128 = 0x0000000000000000bd5ef35793c76730}
xmm10 {v4_float = {0x0, 0x1, 0x0, 0x0}, v2_double = {0x1, 0x0},
v16_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf0, 0x3f, 0x0, 0x0, 0x0, 0x0,
0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x0, 0x0, 0x3ff0, 0x0, 0x0, 0x0,
---Type <return> to continue, or q <return> to quit---
0x0}, v4_int32 = {0x0, 0x3ff00000, 0x0, 0x0}, v2_int64 = {
0x3ff0000000000000, 0x0}, uint128 = 0x00000000000000003ff0000000000000}
xmm11 {v4_float = {0x0, 0xfffffffe, 0x0, 0x0}, v2_double = {
0xfffffffffffffffb, 0x0}, v16_int8 = {0x0, 0x38, 0xfa, 0xfe, 0x42, 0x2e,
0x16, 0xc0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x3800,
0xfefa, 0x2e42, 0xc016, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0xfefa3800,
0xc0162e42, 0x0, 0x0}, v2_int64 = {0xc0162e42fefa3800, 0x0},
uint128 = 0x0000000000000000c0162e42fefa3800}
xmm12 {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}
xmm13 {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}
xmm14 {v4_float = {0x0, 0x1, 0x0, 0x0}, v2_double = {0x1, 0x0},
v16_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xf0, 0x3f, 0x0, 0x0, 0x0, 0x0,
0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x0, 0x0, 0x0, 0x3ff0, 0x0, 0x0, 0x0,
0x0}, v4_int32 = {0x0, 0x3ff00000, 0x0, 0x0}, v2_int64 = {
0x3ff0000000000000, 0x0}, uint128 = 0x00000000000000003ff0000000000000}
xmm15 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0,
---Type <return> to continue, or q <return> to quit---
0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0},
uint128 = 0x00000000000000000000000000000000}
mxcsr 0x1fa0 [ PE IM DM ZM OM UM PM ]
More information about the MPlayer-users
mailing list