[MEncoder-users] mencoder -oac copy and ac3

Mike Castle dalgoda+mplayer at gmail.com
Thu Mar 8 03:33:37 CET 2012


I'd been happily using a mencoder I built from tip a few months ago.
Recently I updated and something broke.  Of course, I didn't capture
what version I was using before (if svn has that kind of history, I'd
dig it out).

Anyway, from researching the problem, it appears this may fall into
the realm of ``This was never supported and if it worked at all it was
by accident; consider yourself lucky that it worked that long.''  If
so, then I won't bother trying to figure out when the error was
introduced.  In some hits I've seen, it looks like trying to use -oac
copy with AC3 was unsupported, but I think those were posted prior to
me having an actual working binary at some point.

So, onto the error.

I have a vob file ripped from a DVD.  If I try to do something like:
mencoder -quiet -endpos 00:03:00 -oac copy -ovc copy -o a.avi a.vob

I get this:
MEncoder SVN-r34790-4.6 (C) 2000-2012 MPlayer Team
success: format: 0  data: 0x0 - 0x41bac000
libavformat version 54.2.100 (internal)
MPEG-PS file format detected.
VIDEO:  MPEG2  720x480  (aspect 3)  29.970 fps  5726.0 kbps (715.8 kbyte/s)
[V] filefmt:2  fourcc:0x10000002  size:720x480  fps:29.970  ftime:=0.0334
==========================================================================
Opening audio decoder: [ffmpeg] FFmpeg/libavcodec audio decoders
libavcodec version 54.6.100 (internal)
AUDIO: 48000 Hz, 2 ch, s16le, 192.0 kbit/12.50% (ratio: 24000->192000)
Selected audio codec: [ffac3] afm: ffmpeg (FFmpeg AC-3)
==========================================================================
videocodec: framecopy (720x480 24bpp fourcc=10000002)
audiocodec: framecopy (format=2000 chans=2 rate=48000 bits=16
B/s=24000 sample-1)
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.

demux_mpg: 24000/1001fps progressive NTSC content detected, switching framerate.

Too many video packets in the buffer: (4096 in 8278781 bytes).
Maybe you are playing a non-interleaved stream/file or the codec failed?
For AVI files, try to force non-interleaved mode with the -ni option.

Too many video packets in the buffer: (4096 in 8275684 bytes).
Maybe you are playing a non-interleaved stream/file or the codec failed?
For AVI files, try to force non-interleaved mode with the -ni option.

Too many video packets in the buffer: (4096 in 8279156 bytes).
Maybe you are playing a non-interleaved stream/file or the codec failed?
For AVI files, try to force non-interleaved mode with the -ni option.

Too many video packets in the buffer: (4096 in 8271258 bytes).
Maybe you are playing a non-interleaved stream/file or the codec failed?
For AVI files, try to force non-interleaved mode with the -ni option.

Too many video packets in the buffer: (4096 in 8277435 bytes).
Maybe you are playing a non-interleaved stream/file or the codec failed?
For AVI files, try to force non-interleaved mode with the -ni option.

Too many video packets in the buffer: (4096 in 8275056 bytes).
Maybe you are playing a non-interleaved stream/file or the codec failed?
For AVI files, try to force non-interleaved mode with the -ni option.

Too many video packets in the buffer: (4096 in 8273038 bytes).
Maybe you are playing a non-interleaved stream/file or the codec failed?
For AVI files, try to force non-interleaved mode with the -ni option.

Too many video packets in the buffer: (4096 in 8278307 bytes).
Maybe you are playing a non-interleaved stream/file or the codec failed?
For AVI files, try to force non-interleaved mode with the -ni option.

Too many video packets in the buffer: (4096 in 8277483 bytes).
Maybe you are playing a non-interleaved stream/file or the codec failed?
For AVI files, try to force non-interleaved mode with the -ni option.

Too many video packets in the buffer: (4096 in 8274280 bytes).
Maybe you are playing a non-interleaved stream/file or the codec failed?
For AVI files, try to force non-interleaved mode with the -ni option.
Writing index...
Writing header...
ODML: Aspect information not (yet?) available or unspecified, not
writing vprp header.

Video stream: 6426.393 kbit/s  (803299 B/s)  size: 144604416 bytes
180.013 secs  3946 frames

Audio stream:  192.000 kbit/s  (24000 B/s)  size: 3962400 bytes  165.100 secs



In watching a.avi, audio looks like the right speed, but the video is
slow.  In particular, I can tell that an scene change which should
happen at 2:30 is delayed until 2:45.  This is consistent with doing
the whole track, and independent of using -ovc copy or something other
codec.

If I use -oac pcm, everything works fine, but of course the audio
track is then large.


In trying some random prebuilt versions that I can find in the Debian
archive, I can verify that this worked as of r31918 and failing with
r34728.


Some maybe useful information:

$ mplayer -frames 0 -identify a.vob
MPlayer SVN-r34790-4.6 (C) 2000-2012 MPlayer Team

Playing a.vob.
libavformat version 54.2.100 (internal)
ID_VIDEO_ID=0
ID_AUDIO_ID=128
MPEG-PS file format detected.
VIDEO:  MPEG2  720x480  (aspect 3)  29.970 fps  5726.0 kbps (715.8 kbyte/s)
Load subtitles in ./
ID_FILENAME=a.vob
ID_DEMUXER=mpegps
ID_VIDEO_FORMAT=0x10000002
ID_VIDEO_BITRATE=5726000
ID_VIDEO_WIDTH=720
ID_VIDEO_HEIGHT=480
ID_VIDEO_FPS=29.970
ID_VIDEO_ASPECT=0.0000
ID_AUDIO_FORMAT=8192
ID_AUDIO_BITRATE=0
ID_AUDIO_RATE=0
ID_AUDIO_NCH=0
ID_START_TIME=0.22
ID_LENGTH=7541.36
ID_SEEKABLE=1
ID_CHAPTERS=0
==========================================================================
Opening video decoder: [ffmpeg] FFmpeg's libavcodec codec family
libavcodec version 54.6.100 (internal)
Selected video codec: [ffmpeg2] vfm: ffmpeg (FFmpeg MPEG-2)
==========================================================================
ID_VIDEO_CODEC=ffmpeg2
==========================================================================
Opening audio decoder: [ffmpeg] FFmpeg/libavcodec audio decoders
AUDIO: 48000 Hz, 2 ch, s16le, 192.0 kbit/12.50% (ratio: 24000->192000)
ID_AUDIO_BITRATE=192000
ID_AUDIO_RATE=48000
ID_AUDIO_NCH=2
Selected audio codec: [ffac3] afm: ffmpeg (FFmpeg AC-3)
==========================================================================
AO: [alsa] 48000Hz 2ch s16le (2 bytes per sample)
ID_AUDIO_CODEC=ffac3
Starting playback...


Exiting... (End of file)
ID_EXIT=EOF


Output from an older version that works:
$ LD_LIBRARY_PATH=/home/nexus/t/menc/usr/lib
/home/nexus/t/menc/usr/bin/mencoder -endpos 00:03:00 -quiet -oac copy
-ovc copy -o a.avi a.vob
MPlayer SVN-r31918 (C) 2000-2010 MPlayer Team
success: format: 0  data: 0x0 - 0x41bac000
MPEG-PS file format detected.
VIDEO:  MPEG2  720x480  (aspect 3)  29.970 fps  5726.0 kbps (715.8 kbyte/s)
[V] filefmt:2  fourcc:0x10000002  size:720x480  fps:29.970  ftime:=0.0334
==========================================================================
Opening audio decoder: [ffmpeg] FFmpeg/libavcodec audio decoders
AUDIO: 48000 Hz, 2 ch, s16le, 192.0 kbit/12.50% (ratio: 24000->192000)
Selected audio codec: [ffac3] afm: ffmpeg (FFmpeg AC-3)
==========================================================================
videocodec: framecopy (720x480 24bpp fourcc=10000002)
audiocodec: framecopy (format=2000 chans=2 rate=48000 bits=16
B/s=24000 sample-1)
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.

demux_mpg: 24000/1001fps progressive NTSC content detected, switching framerate.
Writing index...
Writing header...
ODML: Aspect information not (yet?) available or unspecified, not
writing vprp header.

Video stream: 7072.976 kbit/s  (884121 B/s)  size: 159153600 bytes
180.013 secs  4340 frames

Audio stream:  192.000 kbit/s  (24000 B/s)  size: 4320000 bytes  180.000 secs




So, before I start bisecting changes, is this something that SHOULD work?



If so, would it be more likely to be a problem with mplayer or ffmpeg?
   Or should I just sync both to the same various points in time and
rebuild for testing purposes?   I think that when I build mplayer and
friends, it resyncs ffmpeg, right?  Any hints for pinning?

Any other recommended techniques for testing?


Thanks,
mrc


More information about the MEncoder-users mailing list