[MPlayer-users] Reproducable segfault with mencoder -pass 2

André Dahlqvist andre.dahlqvist at telia.com
Wed Nov 14 15:19:26 CET 2001


Hi all,

I get a reproducable segfault when I use the -pass 2 flag to mencoder
with current CVS. This happens on all files I've tried, and removing the
-pass 2 flag makes it work again. I've uploaded the output file which
mencoder produced before dying. It's in incoming/mencoder_segfault.avi.

gdb output
----------
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 1024 (LWP 3347)]
0x080594ac in VbrControl_get_intra () at divx4_vbr.c:346
346             return m_vFrames[m_iCount].is_key_frame;
(gdb) bt
#0  0x080594ac in VbrControl_get_intra () at divx4_vbr.c:346
#1  0x0805b0a3 in main (argc=5, argv=0xbffff994, envp=0xbffff9ac) at
mencoder.c:720
#2  0x403ac65f in __libc_start_main () from /lib/libc.so.6
(gdb) disass $eip-32 $eip+32
Dump of assembler code from 0x805948c to 0x80594cc:
0x805948c <VbrControl_init_2pass_vbr_encoding+1952>:    (bad)  
0x805948d <VbrControl_init_2pass_vbr_encoding+1953>:    lcall
*0x5e(%ebx)
0x8059490 <VbrControl_init_2pass_vbr_encoding+1956>:    pop    %edi
0x8059491 <VbrControl_init_2pass_vbr_encoding+1957>:    mov    %ebp,%esp
0x8059493 <VbrControl_init_2pass_vbr_encoding+1959>:    pop    %ebp
0x8059494 <VbrControl_init_2pass_vbr_encoding+1960>:    ret    
0x8059495 <VbrControl_init_2pass_vbr_encoding+1961>:    lea
0x0(%esi),%esi
0x8059498 <VbrControl_get_intra>:       push   %ebp
0x8059499 <VbrControl_get_intra+1>:     mov    0x8108204,%eax
0x805949e <VbrControl_get_intra+6>:     mov    0x8108244,%edx
0x80594a4 <VbrControl_get_intra+12>:    mov    %esp,%ebp
0x80594a6 <VbrControl_get_intra+14>:    lea    (%eax,%eax,2),%eax
0x80594a9 <VbrControl_get_intra+17>:    mov    %ebp,%esp
0x80594ab <VbrControl_get_intra+19>:    pop    %ebp
0x80594ac <VbrControl_get_intra+20>:    movswl 0x14(%edx,%eax,8),%eax
0x80594b1 <VbrControl_get_intra+25>:    ret    
0x80594b2 <VbrControl_get_intra+26>:    mov    %esi,%esi
0x80594b4 <VbrControl_get_drop>:        push   %ebp
0x80594b5 <VbrControl_get_drop+1>:      mov    %esp,%ebp
0x80594b7 <VbrControl_get_drop+3>:      movswl 0x8108210,%eax
0x80594be <VbrControl_get_drop+10>:     mov    %ebp,%esp
0x80594c0 <VbrControl_get_drop+12>:     pop    %ebp
0x80594c1 <VbrControl_get_drop+13>:     ret    
0x80594c2 <VbrControl_get_drop+14>:     mov    %esi,%esi
0x80594c4 <VbrControl_get_quant>:       push   %ebp
0x80594c5 <VbrControl_get_quant+1>:     mov    0x8108208,%eax
0x80594ca <VbrControl_get_quant+6>:     mov    %esp,%ebp
End of assembler dump.
(gdb) 

Related software
----------------
lame-3.89beta
divx4linux-20011025

Other software info
-------------------
Debian GNU/Linux testing/unstable
Kernel 2.4.15-pre4
glibc-2.2.4
XFree86 4.1.0
gcc-2.95.4 20011006 (Debian prerelease)
GNU ld version 2.11.92.0.10 20011021 Debian/GNU Linux
binutils-2.11.92.0.10

Hardware info
-------------
Pentium III 550 Mhz
NVidia TNT2 32 mb
Video driver from X
VIA AC97 Audio Controller
Via 686a audio driver 1.9.1

mencoder output
---------------
Reading /home/andre/.mplayer/codecs.conf: 21 audio & 58 video codecs
File size is 505860 bytes
success: format: 0  data: 0x0 - 0x7B804
ASF_check: not ASF guid!
Checking for MOV
system stream synced at 0xB (11)!
==> Found video stream: 0
Detected MPEG-PS file format!
==> Found audio stream: 0
Searching for sequence header... LAME version 3.89 (beta 1, Nov 13 2001) (http://www.mp3dev.org/)
Using polyphase lowpass  filter, transition band: 19383 Hz - 19916 Hz

misc:

	scaling: 0.000000
	filter type: 0
	quantization: xr^3/4
	huffman search: best (outside loop)
	experimental X=0 Y=0 Z=0
	...

stream format:

	MPEG-1 Layer 3
	2 channel - stereo
	padding: auto
	variable bitrate - VBR rh (default)
	...

psychoacoustic:

	tonality estimation limit: 8871.700195 Hz
	force channels to have same block types: no
	adjust masking: -1.000000 dB
	psymodel: 1
	noise shaping: 1
	 ^ amplification: 1
	 ^ stopping: 1
	ATH: using
	 ^ type: 4
	 ^ adjust type: 3
	 ^ adapt threshold type: 2
	using temporal masking effect: no
	...

OK!
VIDEO:  MPEG1  176x128  (aspect 1)  24.00 fps  115.0 kbps (14.4 kbyte/s)
[V] filefmt:2  fourcc:0x10000001  size:176x128  fps:24.00  ftime:=0.0417
Detected video codec: [mpeg12] drv:1 (MPEG 1 or 2)
mpeg2dec-0.2.0-release (C) 2000-2001 Aaron Holtzman & Michel Lespinasse
libmpeg2: Using MMXEXT for IDCT transform
libmpeg2: Using MMXEXT for motion compensation
Detected audio codec: [mp3] drv:1 (MPEG layer-2, layer-3)
Initializing audio codec...
dec_audio: Allocating 4608 + 65536 = 70144 bytes for output buffer
mp3lib: Processor ID: 681
mp3lib: Using SSE! optimized decore.
AUDIO: srate=44100  chans=2  bps=2  sfmt=0x10  ratio: 4000->176400
Writing AVI header...
A:   1.9 V:   1.4 A-V:  0.551 oAV:  0.481 diff:  0.070 ct:  0.000 vpc:  0.000   
Segmentation fault

Let me know if further details are needed.
-- 

André Dahlqvist <andre.dahlqvist at telia.com>



More information about the MPlayer-users mailing list