[MPlayer-users] [BUG] mencoder mf://*.jpg ends with Floating point exception

Giacomo Comes comes at naic.edu
Fri Oct 27 21:03:49 CEST 2006


I have discovered today that the following command ends with Floating point exception.

mencoder -of rawvideo -ovc lavc -lavcopts vcodec=mpeg1video:vrc_buf_size=327:keyint=15:vmax_b_frames=2:aspect=4/3:vrc_maxrate=1152:vbitrate=1152 -o test.m1v mf://0000*.jpg -fps 10.000 -ofps 25 -vf scale=720:576,harddup

The bug is present in rc1 and SVN. Pre8 works fine.

The error is related with the bframes. If I omit vmax_b_frames=2 then mencoder
complete without errors.

Attached is the gdb output.

Fix welcome :-).

Giacomo
-------------- next part --------------
[New Thread 16384 (LWP 3058)]
MEncoder dev-SVN-r20465-3.4.6 (C) 2000-2006 MPlayer Team
CPU: Intel(R) Pentium(R) 4 CPU 3.06GHz (Family: 15, Model: 2, Stepping: 7)
CPUflags: Type: 15 MMX: 1 MMX2: 1 3DNow: 0 3DNow2: 0 SSE: 1 SSE2: 1
Compiled for x86 CPU with extensions: MMX MMX2 SSE SSE2

init_freetype
Using MMX (with tiny bit MMX2) Optimized OnScreenDisplay
STREAM: [mf] mf://0000*.jpg
STREAM: Description: Multiple files input
STREAM: Author: Benjamin Zores, Albeu
STREAM: Comment: 
success: format: 16  data: 0x0 - 0x0
MF file format detected.
[mf] search expr: 209.151.133.226/video/0000*.jpg
[mf] number of files: 10 (40)
[demux_mf] file type was not set! trying 'type=jpg'...
==> Found video stream: 0
VIDEO:  [IJPG]  0x0  24bpp  25.000 fps    0.0 kbps ( 0.0 kbyte/s)
[V] filefmt:16  fourcc:0x47504A49  size:0x0  fps:25.00  ftime:=0.0400
Input fps will be interpreted as 10.00 instead.
Opening video filter: [expand osd=1]
Expand: -1 x -1, -1 ; -1, osd: 1, aspect: 0.000000, round: 1
Opening video filter: [harddup]
Opening video filter: [scale w=720 h=576]
SwScale params: 720 x 576 (-1=no scaling)
==========================================================================
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
INFO: libavcodec init OK!
Selected video codec: [ffmjpeg] vfm: ffmpeg (FFmpeg MJPEG decoder)
==========================================================================
[ffmpeg] aspect_ratio: 1.610284
VDec: vo config request - 1190 x 739 (preferred colorspace: Planar YV12)
Trying filter chain: scale harddup expand lavc
VDec: using Planar YV12 as output csp (no 3)
Movie-Aspect is 1.61:1 - prescaling to correct movie aspect.
VO Config (1190x739->1190x739,flags=0,'MPlayer',0x32315659)
REQ: flags=0x401  req=0x0  
REQ: flags=0x401  req=0x0  
REQ: flags=0x401  req=0x0  
videocodec: libavcodec (720x576 fourcc=3167706d [mpg1])
*** [scale] Allocating mp_image_t, 1200x752x12bpp YUV planar, 1353600 bytes
*** [harddup] Allocating mp_image_t, 720x576x12bpp YUV planar, 622080 bytes
*** [expand] Exporting mp_image_t, 720x576x12bpp YUV planar, 622080 bytes
*** [lavc] Allocating mp_image_t, 720x576x12bpp YUV planar, 622080 bytes
Pos:   0.0s      1f (11%)   0fps Trem:   0min   0mb  A-V:0.000 [0:0] A/Vms 0/18 D/B/S 1/0/0 
*** [scale] Allocating mp_image_t, 1200x752x12bpp YUV planar, 1353600 bytes
Muxer frame buffer sending 1 frame(s) to the muxer.
Pos:   0.1s      2f (22%)   0fps Trem:   0min   0mb  A-V:0.000 [0:0] A/Vms 0/43 D/B/S 3/0/0 
Pos:   0.2s      3f (33%)   0fps Trem:   0min   0mb  A-V:0.000 [0:0] A/Vms 0/39 D/B/S 4/0/0 
Pos:   0.3s      4f (44%)   0fps Trem:   0min   0mb  A-V:0.000 [0:0] A/Vms 0/37 D/B/S 6/0/0 
Pos:   0.4s      5f (55%)   0fps Trem:   0min   0mb  A-V:0.000 [0:0] A/Vms 0/35 D/B/S 7/0/0 
Pos:   0.5s      6f (66%)   0fps Trem:   0min   0mb  A-V:0.000 [0:0] A/Vms 0/34 D/B/S 9/0/0 
Program received signal SIGFPE, Arithmetic exception.
[Switching to Thread 16384 (LWP 3058)]
0x08333895 in ff_mpeg4_init_direct_mv (s=0x8afe120) at h263.c:564
564	        s->direct_scale_mv[0][i] = (i-tab_bias)*s->pb_time/s->pp_time;
#0  0x08333895 in ff_mpeg4_init_direct_mv (s=0x8afe120) at h263.c:564
#1  0x0826f94f in MPV_encode_picture (avctx=0x8acd8e0, buf=0x40d5f008 "", 
    buf_size=2097152, data=0x8acbf70) at mpegvideo.c:5546
#2  0x0825c736 in avcodec_encode_video (avctx=0x8acd8e0, 
    buf=0xffe00040 <Address 0xffe00040 out of bounds>, buf_size=2097152, 
    pict=0x8acbf70) at utils.c:864
#3  0x080e4c67 in encode_frame (vf=0x8accfa8, pic=0xffffffff, 
    pts=-nan(0x8101010101010)) at ve_lavc.c:772
#4  0x080e51a4 in put_image (vf=0x8accfa8, mpi=0xffe1003e, 
    pts=-nan(0x8101010101010)) at ve_lavc.c:753
#5  0x08113a7e in control (vf=0x8accc48, request=11, data=0x0) at vf_harddup.c:48
#6  0x08120f96 in control (vf=0x8acccc8, request=11, data=0x0) at vf_scale.c:414
#7  0x080bc074 in main (argc=-2097088, argv=0xffe00040) at mencoder.c:1364
Dump of assembler code from 0x8333875 to 0x83338b5:
0x08333875 <ff_mpeg4_init_direct_mv+22>:	mov    $0x64,%al
0x08333877 <ff_mpeg4_init_direct_mv+24>:	pop    %ds
0x08333878 <ff_mpeg4_init_direct_mv+25>:	add    %al,(%eax)
0x0833387a <ff_mpeg4_init_direct_mv+27>:	mov    %ebp,%edx
0x0833387c <ff_mpeg4_init_direct_mv+29>:	mov    %ebp,%ecx
0x0833387e <ff_mpeg4_init_direct_mv+31>:	sub    %esi,%edx
0x08333880 <ff_mpeg4_init_direct_mv+33>:	shl    $0x5,%ecx
0x08333883 <ff_mpeg4_init_direct_mv+36>:	mov    %edx,%ebx
0x08333885 <ff_mpeg4_init_direct_mv+38>:	mov    %edx,0x4(%esp,1)
0x08333889 <ff_mpeg4_init_direct_mv+42>:	neg    %ecx
0x0833388b <ff_mpeg4_init_direct_mv+44>:	shl    $0x5,%ebx
0x0833388e <ff_mpeg4_init_direct_mv+47>:	neg    %ebx
0x08333890 <ff_mpeg4_init_direct_mv+49>:	mov    %ecx,%eax
0x08333892 <ff_mpeg4_init_direct_mv+51>:	add    %ebp,%ecx
0x08333894 <ff_mpeg4_init_direct_mv+53>:	cltd   
0x08333895 <ff_mpeg4_init_direct_mv+54>:	idiv   %esi
0x08333897 <ff_mpeg4_init_direct_mv+56>:	mov    0x1c(%esp,1),%edx
0x0833389b <ff_mpeg4_init_direct_mv+60>:	mov    %ax,0x1588(%edx,%edi,2)
0x083338a3 <ff_mpeg4_init_direct_mv+68>:	mov    %ebx,%eax
0x083338a5 <ff_mpeg4_init_direct_mv+70>:	add    0x4(%esp,1),%ebx
0x083338a9 <ff_mpeg4_init_direct_mv+74>:	cltd   
0x083338aa <ff_mpeg4_init_direct_mv+75>:	idiv   %esi
0x083338ac <ff_mpeg4_init_direct_mv+77>:	mov    0x1c(%esp,1),%edx
0x083338b0 <ff_mpeg4_init_direct_mv+81>:	mov    %ax,0x1608(%edx,%edi,2)
End of assembler dump.
eax            0xffe00040	-2097088
ecx            0xffe1003e	-2031554
edx            0xffffffff	-1
ebx            0xffe00040	-2097088
esp            0xbfffc2c4	0xbfffc2c4
ebp            0xfffe	0xfffe
esi            0x0	0
edi            0x0	0
eip            0x8333895	0x8333895
eflags         0x210282	2163330
cs             0x23	35
ss             0x2b	43
ds             0x2b	43
es             0x2b	43
fs             0x0	0
gs             0x7	7
st0            -nan(0x8080808080808080)	(raw 0xffff8080808080808080)
st1            -nan(0x80008000800080)	(raw 0xffff0080008000800080)
st2            -nan(0x8080808080808080)	(raw 0xffff8080808080808080)
st3            -nan(0x80008000800080)	(raw 0xffff0080008000800080)
st4            105689	(raw 0x400fce6c800000000000)
st5            0.59999999999999997779553950749686919	(raw 0x3ffe9999999999999800)
st6            -9223372036854775808	(raw 0xc03e8000000000000000)
st7            -9223372036854775808	(raw 0xc03e8000000000000000)
fctrl          0x37f	895
fstat          0x420	1056
ftag           0xffff	65535
fiseg          0x23	35
fioff          0x80e4c5c	135154780
foseg          0x2b	43
fooff          0xbfffd3d0	-1073753136
fop            0x1c9	457
xmm0           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {
    0x8000000000000000, 0x8000000000000000}, v16_int8 = {
    0xff <repeats 16 times>}, v8_int16 = {0xffff, 0xffff, 0xffff, 0xffff, 
    0xffff, 0xffff, 0xffff, 0xffff}, v4_int32 = {0xffffffff, 0xffffffff, 
    0xffffffff, 0xffffffff}, v2_int64 = {0xffffffffffffffff, 
    0xffffffffffffffff}, uint128 = 0xffffffffffffffffffffffffffffffff}
xmm1           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {
    0x8000000000000000, 0x8000000000000000}, v16_int8 = {
    0xff <repeats 16 times>}, v8_int16 = {0xffff, 0xffff, 0xffff, 0xffff, 
    0xffff, 0xffff, 0xffff, 0xffff}, v4_int32 = {0xffffffff, 0xffffffff, 
    0xffffffff, 0xffffffff}, v2_int64 = {0xffffffffffffffff, 
    0xffffffffffffffff}, uint128 = 0xffffffffffffffffffffffffffffffff}
xmm2           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {
    0x8000000000000000, 0x8000000000000000}, v16_int8 = {
    0xff <repeats 16 times>}, v8_int16 = {0xffff, 0xffff, 0xffff, 0xffff, 
    0xffff, 0xffff, 0xffff, 0xffff}, v4_int32 = {0xffffffff, 0xffffffff, 
    0xffffffff, 0xffffffff}, v2_int64 = {0xffffffffffffffff, 
    0xffffffffffffffff}, uint128 = 0xffffffffffffffffffffffffffffffff}
xmm3           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {
    0x8000000000000000, 0x8000000000000000}, v16_int8 = {
    0xff <repeats 16 times>}, v8_int16 = {0xffff, 0xffff, 0xffff, 0xffff, 
    0xffff, 0xffff, 0xffff, 0xffff}, v4_int32 = {0xffffffff, 0xffffffff, 
    0xffffffff, 0xffffffff}, v2_int64 = {0xffffffffffffffff, 
    0xffffffffffffffff}, uint128 = 0xffffffffffffffffffffffffffffffff}
xmm4           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {
    0x8000000000000000, 0x8000000000000000}, v16_int8 = {
    0xff <repeats 16 times>}, v8_int16 = {0xffff, 0xffff, 0xffff, 0xffff, 
    0xffff, 0xffff, 0xffff, 0xffff}, v4_int32 = {0xffffffff, 0xffffffff, 
    0xffffffff, 0xffffffff}, v2_int64 = {0xffffffffffffffff, 
    0xffffffffffffffff}, uint128 = 0xffffffffffffffffffffffffffffffff}
xmm5           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {
    0x8000000000000000, 0x8000000000000000}, v16_int8 = {
    0xff <repeats 16 times>}, v8_int16 = {0xffff, 0xffff, 0xffff, 0xffff, 
    0xffff, 0xffff, 0xffff, 0xffff}, v4_int32 = {0xffffffff, 0xffffffff, 
    0xffffffff, 0xffffffff}, v2_int64 = {0xffffffffffffffff, 
    0xffffffffffffffff}, uint128 = 0xffffffffffffffffffffffffffffffff}
xmm6           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {
    0x8000000000000000, 0x8000000000000000}, v16_int8 = {
    0xff <repeats 16 times>}, v8_int16 = {0xffff, 0xffff, 0xffff, 0xffff, 
    0xffff, 0xffff, 0xffff, 0xffff}, v4_int32 = {0xffffffff, 0xffffffff, 
    0xffffffff, 0xffffffff}, v2_int64 = {0xffffffffffffffff, 
    0xffffffffffffffff}, uint128 = 0xffffffffffffffffffffffffffffffff}
xmm7           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {
    0x8000000000000000, 0x8000000000000000}, v16_int8 = {
    0xff <repeats 16 times>}, v8_int16 = {0xffff, 0xffff, 0xffff, 0xffff, 
    0xffff, 0xffff, 0xffff, 0xffff}, v4_int32 = {0xffffffff, 0xffffffff, 
    0xffffffff, 0xffffffff}, v2_int64 = {0xffffffffffffffff, 
    0xffffffffffffffff}, uint128 = 0xffffffffffffffffffffffffffffffff}
mxcsr          0x1f80	8064
mm0            {uint64 = 0x8080808080808080, v2_int32 = {0x80808080, 
    0x80808080}, v4_int16 = {0x8080, 0x8080, 0x8080, 0x8080}, v8_int8 = {0x80, 
    0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80}}
mm1            {uint64 = 0x80008000800080, v2_int32 = {0x800080, 0x800080}, 
  v4_int16 = {0x80, 0x80, 0x80, 0x80}, v8_int8 = {0x80, 0x0, 0x80, 0x0, 0x80, 
    0x0, 0x80, 0x0}}
mm2            {uint64 = 0x8080808080808080, v2_int32 = {0x80808080, 
    0x80808080}, v4_int16 = {0x8080, 0x8080, 0x8080, 0x8080}, v8_int8 = {0x80, 
    0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80}}
mm3            {uint64 = 0x80008000800080, v2_int32 = {0x800080, 0x800080}, 
  v4_int16 = {0x80, 0x80, 0x80, 0x80}, v8_int8 = {0x80, 0x0, 0x80, 0x0, 0x80, 
    0x0, 0x80, 0x0}}
mm4            {uint64 = 0xce6c800000000000, v2_int32 = {0x0, 0xce6c8000}, 
  v4_int16 = {0x0, 0x0, 0x8000, 0xce6c}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 
    0x80, 0x6c, 0xce}}
mm5            {uint64 = 0x9999999999999800, v2_int32 = {0x99999800, 
    0x99999999}, v4_int16 = {0x9800, 0x9999, 0x9999, 0x9999}, v8_int8 = {0x0, 
    0x98, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99}}
mm6            {uint64 = 0x8000000000000000, v2_int32 = {0x0, 0x80000000}, 
  v4_int16 = {0x0, 0x0, 0x0, 0x8000}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 
    0x0, 0x80}}
mm7            {uint64 = 0x8000000000000000, v2_int32 = {0x0, 0x80000000}, 
  v4_int16 = {0x0, 0x0, 0x0, 0x8000}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 
    0x0, 0x80}}


More information about the MPlayer-users mailing list