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