[MPlayer-users] MEncoder-bug encoding from multiple files

Pär Andersson paran213 at student.liu.se
Sat Aug 24 23:36:02 CEST 2002


Hello.

I must start by saying thanks for all the work put into MPlayer. It is the best
player around =)

I think I have found a bug in mencoder.
It segfault when I try to do encoding from multiple files.
The result is the same with both divx4 and libavcodec.

I have also tried a diffrent set of jpeg-files, but the files should be ok.
`mplayer -mf on \*.jpg` plays with no problem.

If you need more information than the following please ask.

MPlayer version: CVS (Aug 24)
Distribution: Debian testing(sarge)
Kernel: 2.4.18
libc: 2.2.5
XFree86 4.1.0.1
gcc version 2.95.4 20011002 (Debian prerelease)
GNU ld version 2.12.90.0.1 20020307 Debian/GNU Linux
GNU assembler 2.12.90.0.1 20020307 Debian/GNU Linux
divx5codec: 5.0.1 (2002-04-18 build)

cat /proc/cpuinfo
processor       : 0
vendor_id       : AuthenticAMD
cpu family      : 6
model           : 4
model name      : AMD Athlon(tm) processor
stepping        : 4
cpu MHz         : 1400.098
cache size      : 256 KB
fdiv_bug        : no
hlt_bug         : no
f00f_bug        : no
coma_bug        : no
fpu             : yes
fpu_exception   : yes
cpuid level     : 1
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 sep mtrr pge mca cmov pat
pse36 mmx fxsr syscall mmxext 3dnowext 3dnow
bogomips        : 2791.83

Video card: GeForce2 MX400
Using NVIDIA glx+kernel 1.0.2960
Sound card: on motherboard, using kernel module es1371


mencoder output:

per at p250 /per/film/01$ mencoder -v \*.jpg -mf on:w=640:h=480:fps=5 -ovc divx4

MEncoder CVS-020824-18:17-2.95.4 (C) 2000-2002 Arpad Gereoffy (see DOCS!)

CPU: Advanced Micro Devices Athlon TB Thunderbird (Family: 6, Stepping: 4)
CPUflags: Type: 6 MMX: 1 MMX2: 1 3DNow: 1 3DNow2: 1 SSE: 0 SSE2: 0
Reading /home/per/.mplayer/codecs.conf: 38 audio & 106 video codecs
File not found: 'frameno.avi'
get_path('font/font.desc') -> '/home/per/.mplayer/font/font.desc'
Font /home/per/.mplayer/font/font.desc loaded successfully! (206 chars)
Using MMX (with tiny bit MMX2) Optimized OnScreenDisplay
[mf] search expr: *.jpg
[mf] number of files: 26 (104)
success: format: 0  data: 0x0 - 0x0
forced mf.
[demuxer] mf support.
==> Found video stream: 0
[V] filefmt:16  fourcc:0x47504A49  size:640x480  fps: 5.00  ftime:=0.2000
Opening video filter: [expand=-1:-1:-1:-1:1]
Expand: -1 x -1, -1 ; -1  (-1=autodetect) osd: 1
==========================================================================
Opening video decoder: [ijpg] JPEG Images decoder
Detected video codec: [ijpg] drv:22 (Independent JPEG Group's codec)
==========================================================================
Writing AVI header...
VDec: vo config request - 640 x 480 (preferred csp: RGB 24-bit)
vo_debug: query(RGB 24-bit) returned 0x601 (i=0)
vo_debug: query(BGR 24-bit) returned 0x601 (i=1)
vo_debug: query(BGR 32-bit) returned 0x0 (i=2)
Opening video filter: [flip]
Movie-Aspect is undefined - no prescaling applied.
video_out->init(640x480->640x480,flags=8,'MPlayer',0x52474218)
REQ: flags=0x601  req=0x400
REQ: flags=0x201  req=0x0
*** [divx4] Allocating mp_image_t, 640x480x24bpp RGB packed, 921600 bytes
*** [expand] Direct Rendering mp_image_t, 640x480x24bpp RGB packed, 921600 bytes
*** [flip] Direct Rendering mp_image_t, 640x480x24bpp RGB packed, 921600 bytes
Segmentation fault


GDB output:

per at p250 /per/film/01$ gdb mencoder
gdb: Symbol `emacs_ctlx_keymap' has different size in shared object, consider re
-linking
GNU gdb 2002-04-01-cvs
Copyright 2002 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-linux"...
(gdb) run -v \*.jpg -mf on:w=640:h=480:fps=5 -ovc divx4
Starting program: /usr/local/bin/mencoder -v \*.jpg -mf on:w=640:h=480:fps=5 -ov
c divx4
[New Thread 1024 (LWP 7335)]


MEncoder CVS-020824-18:17-2.95.4 (C) 2000-2002 Arpad Gereoffy (see DOCS!)

CPU: Advanced Micro Devices Athlon TB Thunderbird (Family: 6, Stepping: 4)
CPUflags: Type: 6 MMX: 1 MMX2: 1 3DNow: 1 3DNow2: 1 SSE: 0 SSE2: 0
Reading /home/per/.mplayer/codecs.conf: 38 audio & 106 video codecs
File not found: 'frameno.avi'
get_path('font/font.desc') -> '/home/per/.mplayer/font/font.desc'
Font /home/per/.mplayer/font/font.desc loaded successfully! (206 chars)
Using MMX (with tiny bit MMX2) Optimized OnScreenDisplay
[mf] search expr: *.jpg
[mf] number of files: 26 (104)
success: format: 0  data: 0x0 - 0x0
forced mf.
[demuxer] mf support.
==> Found video stream: 0
[V] filefmt:16  fourcc:0x47504A49  size:640x480  fps: 5.00  ftime:=0.2000
Opening video filter: [expand=-1:-1:-1:-1:1]
Expand: -1 x -1, -1 ; -1  (-1=autodetect) osd: 1
==========================================================================
Opening video decoder: [ijpg] JPEG Images decoder
Detected video codec: [ijpg] drv:22 (Independent JPEG Group's codec)
==========================================================================
Writing AVI header...
VDec: vo config request - 640 x 480 (preferred csp: RGB 24-bit)
vo_debug: query(RGB 24-bit) returned 0x601 (i=0)
vo_debug: query(BGR 24-bit) returned 0x601 (i=1)
vo_debug: query(BGR 32-bit) returned 0x0 (i=2)
Opening video filter: [flip]
Movie-Aspect is undefined - no prescaling applied.
video_out->init(640x480->640x480,flags=8,'MPlayer',0x52474218)
REQ: flags=0x601  req=0x400
REQ: flags=0x201  req=0x0
*** [divx4] Allocating mp_image_t, 640x480x24bpp RGB packed, 921600 bytes
*** [expand] Direct Rendering mp_image_t, 640x480x24bpp RGB packed, 921600 bytes

*** [flip] Direct Rendering mp_image_t, 640x480x24bpp RGB packed, 921600 bytes

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 1024 (LWP 7335)]
0x08084408 in draw_osd (vf_=0x82d1178, w=640, h=480) at vf_expand.c:146
146         vf->priv->fb_ptr=vf->priv->dmpi->planes[0];
(gdb) bt
#0  0x08084408 in draw_osd (vf_=0x82d1178, w=640, h=480) at vf_expand.c:146
#1  0x080846f6 in put_image (vf=0x82d1178, mpi=0x82d36c8) at vf_expand.c:228
#2  0x0807b001 in decode_video (sh_video=0x82d41d8,
    start=0x8333450 "ÿØÿá\031þExif", in_size=130904, drop_frame=0)
    at dec_video.c:228
#3  0x08060b62 in main (argc=7, argv=0xbffffa54, envp=0xbffffa74)
    at mencoder.c:1031
(gdb) disass $eip-32 $eip+32
Dump of assembler code from 0x80843e8 to 0x8084428:
0x80843e8 <draw_osd+140>:       loope  0x8084404 <draw_osd+168>
0x80843ea <draw_osd+142>:       or     %cl,0x408b4042(%ebx)
0x80843f0 <draw_osd+148>:       add    $0x50,%al
0x80843f2 <draw_osd+150>:       mov    0x40(%edx),%eax
0x80843f5 <draw_osd+153>:       mov    (%eax),%eax
0x80843f7 <draw_osd+155>:       push   %eax
0x80843f8 <draw_osd+156>:       call   0x8073eb8 <vo_draw_text>
0x80843fd <draw_osd+161>:       mov    0x81ae17c,%eax
0x8084402 <draw_osd+166>:       mov    0x40(%eax),%edx
0x8084405 <draw_osd+169>:       mov    0x10(%edx),%eax
0x8084408 <draw_osd+172>:       mov    0x20(%eax),%eax
0x808440b <draw_osd+175>:       mov    %eax,0x18(%edx)
0x808440e <draw_osd+178>:       mov    0xffffffe8(%ebp),%ebx
0x8084411 <draw_osd+181>:       mov    %ebp,%esp
0x8084413 <draw_osd+183>:       pop    %ebp
0x8084414 <draw_osd+184>:       ret
0x8084415 <draw_osd+185>:       lea    0x0(%esi),%esi
0x8084418 <config>:     push   %ebp
0x8084419 <config+1>:   mov    %esp,%ebp
0x808441b <config+3>:   sub    $0xc,%esp
0x808441e <config+6>:   push   %edi
0x808441f <config+7>:   push   %esi
0x8084420 <config+8>:   push   %ebx
0x8084421 <config+9>:   mov    0x8(%ebp),%edi
0x8084424 <config+12>:  mov    0xc(%ebp),%ebx
0x8084427 <config+15>:  mov    0x10(%ebp),%esi
End of assembler dump.
(gdb)


Best Regards

/Pär Andersson





More information about the MPlayer-users mailing list