[MEncoder-users] All video files must have identical fps, resolution, and codec for -ovc copy.
Gilles Pelletier
pellgill at gmail.com
Thu May 8 04:11:13 CEST 2008
On Tue, May 6, 2008 at 1:42 PM, Vince Gatto <vgatto at gmail.com> wrote:
> This might be a better post for the developer list, but hopefully
> someone reading this is geeky enough to help out. So I'm having a
> problem joining two files using a pretty normal command:
>
> mencoder -oac pcm -ovc copy -o joined.mp4 1.mp4 2.mp4
>
> And I'm getting the error "All video files must have identical fps,
> resolution, and codec for -ovc copy". I've pasted the output below,
> though I doubt it will be much help. I'm 100% certain that these
> files have the same fps, resolution and codec. I went so far as to
> edit the source code to dump some additional data about how mencoder
> determines that two files are not encoded identically. If you check
> out mencoder.c, you'll find a section that compares the
> BITMAPINFOHEADER structures of the files byte-for-byte. As far as
> the useful information in these structures are concerned, my files are
> identical, except that they differ in structure size (the first
> member, biSize). Both of the files in question are using the avc1
> codec, and were created by the same ffmpeg command (using libx264).
> Snooping around the code some more, this extra data in the structure
> is being added by demux_mov.c and is referred to as "stream header
> data". Does anyone know what that is or what it is used for? When
> I modify mencoder to check only the standard parts of
> BITMAPHEADERINFO, my files join and play without a problem, but I'm
> worried that I've removed or subverted something I don't really
> understand and that could cause a problem with other files somehow.
>
>
> And here's the output:
>
> MEncoder 1.0rc2-4.0.1 (C) 2000-2007 MPlayer Team
> CPU: Intel(R) Core(TM)2 Duo CPU T7700 @ 2.40GHz (Family: 6,
> Model: 15, Stepping: 11)
> CPUflags: Type: 6 MMX: 1 MMX2: 1 3DNow: 0 3DNow2: 0 SSE: 1 SSE2: 1
> Compiled for x86 CPU with extensions: MMX MMX2 SSE SSE2
>
>
> WARNING: OUTPUT FILE FORMAT IS _AVI_. See -of help.
> success: format: 0 data: 0x0 - 0x1751b
> Quicktime/MOV file format detected.
> [mov] Video stream found, -vid 0
> VIDEO: [avc1] 640x480 24bpp 24.000 fps 0.0 kbps ( 0.0 kbyte/s)
> [V] filefmt:7 fourcc:0x31637661 size:640x480 fps:24.00 ftime:=0.0417
> videocodec: framecopy (640x480 24bpp fourcc=31637661)
> Writing header...
> ODML: Aspect information not (yet?) available or unspecified, not
> writing vprp header.
> Writing header...
> ODML: Aspect information not (yet?) available or unspecified, not
> writing vprp header.
> Quicktime/MOV file format detected.
> [mov] Video stream found, -vid 0
> [mov] Audio stream found, -aid 1
> VIDEO: [avc1] 640x480 24bpp 24.000 fps 0.0 kbps ( 0.0 kbyte/s)
> [V] filefmt:7 fourcc:0x31637661 size:640x480 fps:24.00 ftime:=0.0417
> ==========================================================================
> Opening audio decoder: [faad] AAC (MPEG2/4 Advanced Audio Coding)
> FAAD: compressed input bitrate missing, assuming 128kbit/s!
> AUDIO: 44100 Hz, 2 ch, s16le, 128.0 kbit/9.07% (ratio: 16000->176400)
> Selected audio codec: [faad] afm: faad (FAAD AAC (MPEG-2/MPEG-4 Audio) decoder)
> ==========================================================================
> videocodec: framecopy (640x480 24bpp fourcc=31637661)
> videocodec: framecopy (640x480 24bpp fourcc=31637661)
>
> All video files must have identical fps, resolution, and codec for -ovc copy.
> _______________________________________________
> MEncoder-users mailing list
> MEncoder-users at mplayerhq.hu
> https://lists.mplayerhq.hu/mailman/listinfo/mencoder-users
>
The only way I found to solve this problem is to pass both videos
through a standard encoder command:
mencoder in.avi -ofps 30000/1001 -ovc lavc -lavcopts
vcodec=mjpeg:vbitrate=2554 -vf scale=640:480 -oac mp3lame -o out.avi
More information about the MEncoder-users
mailing list