[MPlayer-users] Crash when converting Canopus HQ files to a lower fps.
Horacio Sanson
hsanson at gmail.com
Mon Mar 1 15:25:04 CET 2010
When converting a Canopus HQ file to raw with a lower fps than the
original mencoder segfaults. I tried this with my own samples and with
the sample found at: http://samples.mplayerhq.hu/V-codecs/CUVC/
As long as -ofps is set equal or higher than the source fps there is no
crash but using any lower -ofps segfaults mencoder.
Following is the gdb output:
(gdb) r -v -nosound -oac pcm -ovc raw -ofps 12 -of rawvideo -o /media/out_video.yuv /media/canopushq.avi
Starting program: /opt/suj/bin/mencoder -v -nosound -oac pcm -ovc raw -ofps 12 -of rawvideo -o /media/out_video.yuv /media/canopushq.avi
[Thread debugging using libthread_db enabled]
MEncoder SVN-r30800-4.4.1 (C) 2000-2010 MPlayer Team
Warning unknown option vo at line 16
Option of: Unknown suboption lavc
Warning unknown option of at line 83
Configuration: --prefix=/opt/suj --enable-debug=3 --extra-ldflags=-L/opt/suj/lib --extra-cflags=-I/opt/suj/include
get_path('font/font.desc') -> '/home/ryujin/.mplayer/font/font.desc'
font: can't open file: /home/ryujin/.mplayer/font/font.desc
font: can't open file: /opt/suj/share/mplayer/font/font.desc
Using MMX (with tiny bit MMX2) Optimized OnScreenDisplay
[file] File size is 7484838 bytes
STREAM: [file] /media/canopushq.avi
STREAM: Description: File
STREAM: Author: Albeu
STREAM: Comment: based on the code from ??? (probably Arpi)
success: format: 0 data: 0x0 - 0x7235a6
LAVF_check: AVI format
AVI file format detected.
list_end=0x1200
======= AVI Header =======
us/frame: 40000 (fps=25.000)
max bytes/sec: 7484838
padding: 0
MainAVIHeader.dwFlags: (16) HAS_INDEX
frames total: 25 initial: 0
streams: 1
Suggested BufferSize: 0
Size: 1440 x 1080
==========================
list_end=0x10F4
==> Found video stream: 0
[aviheader] Video stream found, -vid 0
====== STREAM Header =====
Type: vids FCC: CUVC (43565543)
Flags: 0
Priority: 0 Language: 0
InitialFrames: 0
Rate: 25/1 = 25.000
Start: 0 Len: 25
Suggested BufferSize: 333726
Quality 0
Sample size: 0
==========================
Found 'bih', 40 bytes of 40
======= VIDEO Format ======
biSize 40
biWidth 1440
biHeight 1080
biPlanes 1
biBitCount 24
biCompression 1129731395='CUVC'
biSizeImage 240598
===========================
list_end=0x1200
AVI: dmlh found (size=248) (total_frames=25)
list_end=0x72340E
Found movie at 0x200C - 0x72340E
Reading INDEX block, 25 chunks for 25 frames (fpos=7484438).
AVI index offset: 0x2008 (movi=0x200C idx0=0x4 idx1=0x46334)
Auto-selected AVI video ID = 0
AVI video size=7476026 (25) audio size=0 (0)
VIDEO: [CUVC] 1440x1080 24bpp 25.000 fps 59808.2 kbps (7300.8 kbyte/s)
[V] filefmt:3 fourcc:0x43565543 size:1440x1080 fps:25.000 ftime:=0.0400
[file] File size is 0 bytes
STREAM: [file] /media/testsequences/out_video.yuv
STREAM: Description: File
STREAM: Author: Albeu
STREAM: Comment: based on the code from ??? (probably Arpi)
Opening video filter: [expand osd=1]
Expand: -1 x -1, -1 ; -1, osd: 1, aspect: 0.000000, round: 1
==========================================================================
Opening video decoder: [vfw] Win32/VfW video codecs
======= Win32 (VFW) VIDEO Codec init =======
Loading codec DLL: 'CUVCcodc.dll'
get_path('registry') -> '/home/ryujin/.mplayer/registry'
Loaded DLL driver CUVCcodc.dll at 10000000
ICDecompressGetFormatSize ret: 40
ICDecompressGetFormat OK
VDec: vo config request - 1440 x 1080 (preferred colorspace: Packed YUY2)
[PP] Using codec's postprocessing, max q = 9.
Trying filter chain: expand raw
VDec: using BGR 24-bit as output csp (no 0)
Movie-Aspect is undefined - no prescaling applied.
VO Config (1440x1080->1440x1080,flags=0,'MPlayer',0x42475218)
REQ: flags=0x3 req=0x0
ICDecompressQuery OK
Input format:
======= VIDEO Format ======
biSize 40
biWidth 1440
biHeight 1080
biPlanes 1
biBitCount 24
biCompression 1129731395='CUVC'
biSizeImage 240598
===========================
Output format:
======= VIDEO Format ======
biSize 40
biWidth 1440
biHeight -1080
biPlanes 1
biBitCount 24
biCompression 0=''
biSizeImage 4665600
===========================
INFO: Win32 video codec init OK!
Selected video codec: [canopushq] vfm: vfw (Canopus HQ Codec)
==========================================================================
*** [raw] Allocating mp_image_t, 1440x1080x24bpp BGR packed, 4665600 bytes
*** [expand] Direct Rendering mp_image_t, 1440x1080x24bpp BGR packed, 4665600 bytes
Muxer frame buffer sending 1 frame(s) to the muxer.
Pos: 0.1s 1f ( 0%) 0fps Trem: 0min 0mb A-V:0.000 [0:0] A/Vms 0/7 D/B/S 0/0/0
Program received signal SIGSEGV, Segmentation fault.
0xb74d8485 in ?? ()
(gdb) bt
#0 0xb74d8485 in ?? ()
Cannot access memory at address 0x1c
(gdb) disass $pc-32 $pc+32
Dump of assembler code from 0xb74d8465 to 0xb74d84a5:
0xb74d8465: pusha
0xb74d8466: rorl $0x60,(%edi)
0xb74d8469: lret $0x730f
0xb74d846c: rorl %cl,(%eax)
0xb74d846e: punpcklbw %mm3,%mm2
0xb74d8471: psrlq $0x10,%mm1
0xb74d8475: movq %mm2,%mm3
0xb74d8478: punpckhwd %mm1,%mm2
0xb74d847b: psllq $0x20,%mm1
0xb74d847f: punpckhwd %mm0,%mm1
0xb74d8482: punpcklwd %mm3,%mm0
0xb74d8485: movd %mm0,(%edi)
0xb74d8488: movd %mm1,0x4(%edi)
0xb74d848c: movd %mm2,0x8(%edi)
0xb74d8490: cmp $0x4,%ecx
0xb74d8493: je 0xb74d8571
0xb74d8499: punpckhwd %mm4,%mm4
0xb74d849c: punpckhwd %mm5,%mm5
0xb74d849f: punpckhwd %mm6,%mm6
0xb74d84a2: movd 0x4(%esi),%mm3
End of assembler dump.
(gdb) info all-registers
eax 0x18 24
ecx 0x10 16
edx 0x10 16
ebx 0xbfffeef0 -1073746192
esp 0xbfffea44 0xbfffea44
ebp 0x18 0x18
esi 0xbfffeee0 -1073746208
edi 0x0 0
eip 0xb74d8485 0xb74d8485
eflags 0x210212 [ AF IF RF ID ]
cs 0x73 115
ss 0x7b 123
ds 0x7b 123
es 0x7b 123
fs 0x8f 143
gs 0x33 51
st0 -nan(0xd0c8d9d1d1ccddd5) (raw 0xffffd0c8d9d1d1ccddd5)
st1 -nan(0xdbd3c7d8d8d0c8d9) (raw 0xffffdbd3c7d8d8d0c8d9)
st2 -nan(0xd5cacadbd3c7) (raw 0xffff0000d5cacadbd3c7)
st3 -nan(0xd5cad3c7d0c8d1cc) (raw 0xffffd5cad3c7d0c8d1cc)
st4 -nan(0xfffefffefffefffe) (raw 0xfffffffefffefffefffe)
st5 -nan(0x6000600060006) (raw 0xffff0006000600060006)
st6 -nan(0xfff5fff5fff5fff5) (raw 0xfffffff5fff5fff5fff5)
st7 -inf (raw 0xffff0000000000000000)
fctrl 0x37f 895
fstat 0x0 0
ftag 0xaaaa 43690
fiseg 0x0 0
fioff 0x0 0
foseg 0x0 0
fooff 0x0 0
fop 0x0 0
xmm0 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x8000000000000000, 0x8000000000000000}, v16_int8 = {0x7f <repeats 16 times>}, v8_int16 = {
0x7f7f, 0x7f7f, 0x7f7f, 0x7f7f, 0x7f7f, 0x7f7f, 0x7f7f, 0x7f7f}, v4_int32 = {0x7f7f7f7f, 0x7f7f7f7f, 0x7f7f7f7f, 0x7f7f7f7f}, v2_int64 = {
---Type <return> to continue, or q <return> to quit---
0x7f7f7f7f7f7f7f7f, 0x7f7f7f7f7f7f7f7f}, uint128 = 0x7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f}
xmm1 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x8000000000000000, 0x8000000000000000}, v16_int8 = {0x7f <repeats 16 times>}, v8_int16 = {
0x7f7f, 0x7f7f, 0x7f7f, 0x7f7f, 0x7f7f, 0x7f7f, 0x7f7f, 0x7f7f}, v4_int32 = {0x7f7f7f7f, 0x7f7f7f7f, 0x7f7f7f7f, 0x7f7f7f7f}, v2_int64 = {
0x7f7f7f7f7f7f7f7f, 0x7f7f7f7f7f7f7f7f}, uint128 = 0x7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f}
xmm2 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x8000000000000000, 0x8000000000000000}, v16_int8 = {0x7f <repeats 16 times>}, v8_int16 = {
0x7f7f, 0x7f7f, 0x7f7f, 0x7f7f, 0x7f7f, 0x7f7f, 0x7f7f, 0x7f7f}, v4_int32 = {0x7f7f7f7f, 0x7f7f7f7f, 0x7f7f7f7f, 0x7f7f7f7f}, v2_int64 = {
0x7f7f7f7f7f7f7f7f, 0x7f7f7f7f7f7f7f7f}, uint128 = 0x7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f}
xmm3 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x8000000000000000, 0x8000000000000000}, v16_int8 = {0x7f <repeats 16 times>}, v8_int16 = {
0x7f7f, 0x7f7f, 0x7f7f, 0x7f7f, 0x7f7f, 0x7f7f, 0x7f7f, 0x7f7f}, v4_int32 = {0x7f7f7f7f, 0x7f7f7f7f, 0x7f7f7f7f, 0x7f7f7f7f}, v2_int64 = {
0x7f7f7f7f7f7f7f7f, 0x7f7f7f7f7f7f7f7f}, uint128 = 0x7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f}
xmm4 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x8000000000000000, 0x8000000000000000}, v16_int8 = {0x7f <repeats 16 times>}, v8_int16 = {
0x7f7f, 0x7f7f, 0x7f7f, 0x7f7f, 0x7f7f, 0x7f7f, 0x7f7f, 0x7f7f}, v4_int32 = {0x7f7f7f7f, 0x7f7f7f7f, 0x7f7f7f7f, 0x7f7f7f7f}, v2_int64 = {
0x7f7f7f7f7f7f7f7f, 0x7f7f7f7f7f7f7f7f}, uint128 = 0x7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f}
xmm5 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x8000000000000000, 0x8000000000000000}, v16_int8 = {0x7f <repeats 16 times>}, v8_int16 = {
0x7f7f, 0x7f7f, 0x7f7f, 0x7f7f, 0x7f7f, 0x7f7f, 0x7f7f, 0x7f7f}, v4_int32 = {0x7f7f7f7f, 0x7f7f7f7f, 0x7f7f7f7f, 0x7f7f7f7f}, v2_int64 = {
0x7f7f7f7f7f7f7f7f, 0x7f7f7f7f7f7f7f7f}, uint128 = 0x7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f}
xmm6 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x8000000000000000, 0x8000000000000000}, v16_int8 = {0x7f <repeats 16 times>}, v8_int16 = {
0x7f7f, 0x7f7f, 0x7f7f, 0x7f7f, 0x7f7f, 0x7f7f, 0x7f7f, 0x7f7f}, v4_int32 = {0x7f7f7f7f, 0x7f7f7f7f, 0x7f7f7f7f, 0x7f7f7f7f}, v2_int64 = {
0x7f7f7f7f7f7f7f7f, 0x7f7f7f7f7f7f7f7f}, uint128 = 0x7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f}
xmm7 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x8000000000000000, 0x8000000000000000}, v16_int8 = {0x7f <repeats 16 times>}, v8_int16 = {
0x7f7f, 0x7f7f, 0x7f7f, 0x7f7f, 0x7f7f, 0x7f7f, 0x7f7f, 0x7f7f}, v4_int32 = {0x7f7f7f7f, 0x7f7f7f7f, 0x7f7f7f7f, 0x7f7f7f7f}, v2_int64 = {
0x7f7f7f7f7f7f7f7f, 0x7f7f7f7f7f7f7f7f}, uint128 = 0x7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f}
mxcsr 0x1f80 [ IM DM ZM OM UM PM ]
mm0 {uint64 = 0xd0c8d9d1d1ccddd5, v2_int32 = {0xd1ccddd5, 0xd0c8d9d1}, v4_int16 = {0xddd5, 0xd1cc, 0xd9d1, 0xd0c8}, v8_int8 = {0xd5, 0xdd,
0xcc, 0xd1, 0xd1, 0xd9, 0xc8, 0xd0}}
mm1 {uint64 = 0xdbd3c7d8d8d0c8d9, v2_int32 = {0xd8d0c8d9, 0xdbd3c7d8}, v4_int16 = {0xc8d9, 0xd8d0, 0xc7d8, 0xdbd3}, v8_int8 = {0xd9, 0xc8,
0xd0, 0xd8, 0xd8, 0xc7, 0xd3, 0xdb}}
mm2 {uint64 = 0xd5cacadbd3c7, v2_int32 = {0xcadbd3c7, 0xd5ca}, v4_int16 = {0xd3c7, 0xcadb, 0xd5ca, 0x0}, v8_int8 = {0xc7, 0xd3, 0xdb, 0xca,
0xca, 0xd5, 0x0, 0x0}}
mm3 {uint64 = 0xd5cad3c7d0c8d1cc, v2_int32 = {0xd0c8d1cc, 0xd5cad3c7}, v4_int16 = {0xd1cc, 0xd0c8, 0xd3c7, 0xd5ca}, v8_int8 = {0xcc, 0xd1,
0xc8, 0xd0, 0xc7, 0xd3, 0xca, 0xd5}}
mm4 {uint64 = 0xfffefffefffefffe, v2_int32 = {0xfffefffe, 0xfffefffe}, v4_int16 = {0xfffe, 0xfffe, 0xfffe, 0xfffe}, v8_int8 = {0xfe, 0xff,
0xfe, 0xff, 0xfe, 0xff, 0xfe, 0xff}}
mm5 {uint64 = 0x6000600060006, v2_int32 = {0x60006, 0x60006}, v4_int16 = {0x6, 0x6, 0x6, 0x6}, v8_int8 = {0x6, 0x0, 0x6, 0x0, 0x6, 0x0, 0x6,
---Type <return> to continue, or q <return> to quit---
0x0}}
mm6 {uint64 = 0xfff5fff5fff5fff5, v2_int32 = {0xfff5fff5, 0xfff5fff5}, v4_int16 = {0xfff5, 0xfff5, 0xfff5, 0xfff5}, v8_int8 = {0xf5, 0xff,
0xf5, 0xff, 0xf5, 0xff, 0xf5, 0xff}}
mm7 {uint64 = 0x0, v2_int32 = {0x0, 0x0}, v4_int16 = {0x0, 0x0, 0x0, 0x0}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}}
--
regards,
Horacio Sanson
More information about the MPlayer-users
mailing list