Opened 13 years ago

Last modified 13 years ago

#1921 new defect

Cinepak encoder not working on Ubuntu 11.04

Reported by: bv3000@… Owned by: reimar
Priority: normal Component: core
Version: 1.0rc4 Severity: normal
Keywords: Cc: compn
Blocked By: Blocking:
Reproduced by developer: no Analyzed by developer: no

Description

I'm attempting to use the cinepak codec with mencoder. I'm using 1.0~svn33468 on Ubuntu 11.04

I'm attempting to encode a video using the cinepak codec (iccvid.dll). As an example I've been working with this file http://ubuntuone.com/p/iJr/

I converted it to the rgb colourspace in ffmpeg

ffmpeg -i vid.mov -vcodec png -pix_fmt bgr24 outfile.avi

And then tried to run this command in mencoder to convert it to a video using the cinepak codec

mencoder outfile.avi -vf format=bgr24 -ovc vfw -xvfwopts codec=iccvid.dll -oac mp3lame -o outfile_2.avi

When executing that command I get a segmentation fault (output shown below)

MEncoder SVN-r33468-4.5.2 (C) 2000-2011 MPlayer Team
success: format: 0 data: 0x0 - 0x36f103e
AVI file format detected.
[aviheader] Video stream found, -vid 0
AVI: No audio stream found -> no sound.
VIDEO: [MPNG] 640x480 24bpp 25.000 fps 31645.9 kbps (3863.0 kbyte/s)
[V] filefmt:3 fourcc:0x474E504D size:640x480 fps:25.000 ftime:=0.0400
Loading codec DLL: 'iccvid.dll'
Loaded DLL driver iccvid.dll at 6ea20000
HIC: aad5f60
568 - 568 - 568
Compressor type: 63646976
Compressor subtype: 64697663
Compressor flags: 47, version 65536, ICM version: 260
Flags: quality
ICCompressGetFormatSize ret: 40
Opening video filter: [expand osd=1]
Expand: -1 x -1, -1 ; -1, osd: 1, aspect: 0.000000, round: 1
Opening video filter: [format fmt=bgr24]
==========================================================================
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
Selected video codec: [ffpng] vfm: ffmpeg (FFmpeg PNG)
==========================================================================
Could not find matching colorspace - retrying with -vf scale...
Opening video filter: [scale]
Opening video filter: [flip]
Movie-Aspect is 1.82:1 - prescaling to correct movie aspect.
[swscaler @ 0x8840900]using unscaled rgb24 -> bgr24 special converter
Opening video filter: [expand]
Expand: -1 x -1, -1 ; -1, osd: 0, aspect: 0.000000, round: 1
Starting compression:

Input format:
biSize 40
biWidth 640
biHeight 480
biPlanes 1
biBitCount 24
biCompression 0x0 ()
biSizeImage 921600
Output format:
biSize 40
biWidth 640
biHeight 480
biPlanes 1
biBitCount 24
biCompression 0x64697663 ('cvid')
biSizeImage 90900
Output format after query/begin:
biSize 40
biWidth 640
biHeight 480
biPlanes 1
biBitCount 24
biCompression 0x64697663 ('cvid')
biSizeImage 90900

Segmentation fault

A backtrace from gdb gives me this:

#0 0xb5e92b98 in ?? ()
#1 0x6ea300f6 in ?? ()
Backtrace stopped: previous frame inner to this frame (corrupt stack?)

Change History (3)

comment:1 by compn, 13 years ago

Cc: patriotact@… added

why did you convert the file to rgb first ?
encoding works on windows, did not test linux.

D:\>mencoder vid.mov -nosound -ovc vfw -xvfwopts codec=iccvid.dll -o crap.avi
MEncoder Sherpya-SVN-r32492-4.2.5 (C) 2000-2010 MPlayer Team
161 audio & 353 video codecs
success: format: 0 data: 0x0 - 0x46983e
AVI file format detected.
[aviheader] Video stream found, -vid 0
[aviheader] Audio stream found, -aid 1
VIDEO: [H264] 1280x720 24bpp 23.976 fps 9093.2 kbps (1110.0 kbyte/s)
[V] filefmt:3 fourcc:0x34363248 size:1280x720 fps:23.976 ftime:=0.0417
Loading codec DLL: 'iccvid.dll'
Loaded DLL driver iccvid.dll at 6ea20000
HIC: 2719d0
568 - 568 - 568
Compressor type: 63646976
Compressor subtype: 64697663
Compressor flags: 47, version 65536, ICM version: 260
Flags: quality
ICCompressGetFormatSize ret: 40
Opening video filter: [expand osd=1]
Expand: -1 x -1, -1 ; -1, osd: 1, aspect: 0.000000, round: 1
==========================================================================
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
Selected video codec: [ffh264] vfm: ffmpeg (FFmpeg H.264)
==========================================================================
Could not find matching colorspace - retrying with -vf scale...
Opening video filter: [scale]
Opening video filter: [flip]
Movie-Aspect is 1.78:1 - prescaling to correct movie aspect.
[swscaler @ 0114e074]using unscaled yuv420p -> bgr24 special converter
Opening video filter: [expand]
Expand: -1 x -1, -1 ; -1, osd: 0, aspect: 0.000000, round: 1
Starting compression:

Input format:

biSize 40
biWidth 1280
biHeight 720
biPlanes 1
biBitCount 24
biCompression 0x0 ()
biSizeImage 2764800

Output format:

biSize 40
biWidth 1280
biHeight 720
biPlanes 1
biBitCount 24
biCompression 0x64697663 ('cvid')
biSizeImage 254100

Output format after query/begin:

biSize 40
biWidth 1280
biHeight 720
biPlanes 1
biBitCount 24
biCompression 0x64697663 ('cvid')
biSizeImage 254100

Fontconfig error: Cannot load default config file
Fontconfig failed to select a font. Trying without fontconfig...
Fontconfig failed to select a font. Trying without fontconfig...
Writing header...
ODML: vprp aspect is 16:9.
Writing header...
ODML: vprp aspect is 16:9.
Pos: 1.1s 27f (28%) 1.15fps Trem: 0min 9mb A-V:0.000 [20964:0]

Flushing video frames.
Writing index...
Writing header...
ODML: vprp aspect is 16:9.

Video stream: 20964.160 kbit/s (2620519 B/s) size: 2951036 bytes 1.126 secs 27 frames

comment:2 by bv3000@…, 13 years ago

It was my understanding that it could only work on videos in rgb. Perhaps I'm wrong about that.

I tried your command (mencoder vid.mov -nosound -ovc vfw -xvfwopts codec=iccvid.dll -o crap.avi) on the same video file and still got the same segmentation fault as before.

I'm now using mencoder version 2:1.0~svn33634 on Ubuntu 11.04

comment:3 by bv3000@…, 13 years ago

I finally got it working! However, the result shows that there may be an error with the iccvid.dll file that is supplied with mencoder (at least on Linux)

I downloaded the iccvid.dll file from here http://www.dlldump.com/download-dll-files_new.php/dllfiles/I/iccvid.dll/1.10.0.11/download.html and then replaced the one in /usr/lib/codecs with the new one.

I then ran your code again (mencoder vid.mov -nosound -ovc vfw -xvfwopts
codec=iccvid.dll -o crap.avi) and the video encoded and played as expected

Note: See TracTickets for help on using tickets.