Opened 13 years ago
Closed 13 years ago
#553 closed defect (invalid)
ffmpeg fails to transcode VCD file
Reported by: | Bartłomiej Pater | Owned by: | Michael Niedermayer |
---|---|---|---|
Priority: | normal | Component: | avformat |
Version: | unspecified | Keywords: | |
Cc: | Blocked By: | ||
Blocking: | Reproduced by developer: | no | |
Analyzed by developer: | no |
Description
I have a MPEG2 video file that is stored inside MPEG1 container. During transcoding ffmpeg fails with the following message:
FFmpeg version SVN-r25838, Copyright (c) 2000-2010 the FFmpeg developers
built on Oct 5 2011 13:59:08 with gcc 4.4.5
configuration: --enable-libdc1394 --prefix=/usr --extra-cflags='-Wall -g ' --cc='ccache cc' --enable-shared --enable-libmp3lame --enable-gpl --enable-libvorbis --enable-pthreads --enable-libfaac --enable-libxvid --enable-postproc --enable-x11grab --enable-libgsm --enable-libtheora --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libx264 --enable-libspeex --enable-nonfree --disable-stripping --enable-avfilter --enable-libdirac --disable-decoder=libdirac --enable-libschroedinger --disable-encoder=libschroedinger --enable-version3 --enable-libopenjpeg --enable-libvpx --enable-librtmp --extra-libs=-lgcrypt --disable-altivec --disable-armv5te --disable-armv6 --disable-vis
libavutil 50.33. 0 / 50.33. 0
libavcore 0.14. 0 / 0.14. 0
libavcodec 52.97. 2 / 52.97. 2
libavformat 52.87. 1 / 52.87. 1
libavdevice 52. 2. 2 / 52. 2. 2
libavfilter 1.65. 0 / 1.65. 0
libswscale 0.12. 0 / 0.12. 0
libpostproc 51. 2. 0 / 51. 2. 0
[mpeg2video @ 0x15f01f0] mpeg_decode_postinit() failure
Last message repeated 13 times
[mpeg @ 0x15ed760] max_analyze_duration reached
Input #0, mpeg, from 'mpeg2_in_mpeg1.vcd':
Duration: 00:00:32.99, start: 0.500000, bitrate: 2114 kb/s
Stream #0.0[0x1e0]: Video: mpeg2video, yuv420p, 720x480 [PAR 8:9 DAR 4:3], 2000 kb/s, 32.57 fps, 29.97 tbr, 90k tbn, 59.94 tbc
Stream #0.1[0x1c0]: Audio: mp2, 0 channels
[buffer @ 0x15f4fc0] w:720 h:480 pixfmt:yuv420p
[libfaac @ 0x15f4880] encoding 0 channel(s) is not allowed
Output #0, mp4, to '/tmp/test.mp4':
Stream #0.0: Video: mpeg4, yuv420p, 720x480 [PAR 8:9 DAR 4:3], q=2-31, 200 kb/s, 90k tbn, 29.97 tbc
Stream #0.1: Audio: libfaac, 0 channels, s16, 64 kb/s
Stream mapping:
Error while opening encoder for output stream #0.1 - maybe incorrect parameters such as bit_rate, rate, width or height
I used this command:
$ ffmpeg -i mpeg2_in_mpeg1.vcd -vcodec mpeg4 -acodec libfaac /tmp/test.mp4
No matter what bitrates/width/height or other parameters I use, I always get this message. The only thing that can make ffmpeg to transcode is to disable audio with -an option. But this results in movie without audio track.
It seems that ffmpeg/ffplay could not determine audio track parameters. I've tried ffmpeg versions 0.6.1, 0.8.4 and 0.8.5 from debian-multimedia packages.
At the same time mediainfo recognizes properly the both audio and video tracks:
General
Complete name : mpeg2_in_mpeg1.vcd
Format : MPEG-PS
File size : 8.32 MiB
Duration : 33s 144ms
Overall bit rate : 2 105 Kbps
Video
ID : 224 (0xE0)
Format : MPEG Video
Format version : Version 2
Format profile : Main@Main
Format settings, BVOP : Yes
Format settings, Matrix : Custom
Format settings, GOP : M=3, N=15
Duration : 33s 33ms
Bit rate : 1 967 Kbps
Maximum bit rate : 2 000 Kbps
Width : 720 pixels
Height : 480 pixels
Display aspect ratio : 4:3
Frame rate : 29.970 fps
Standard : NTSC
Color space : YUV
Chroma subsampling : 4:2:0
Bit depth : 8 bits
Scan type : Interlaced
Scan order : Top Field First
Compression mode : Lossy
Bits/(Pixel*Frame) : 0.190
Stream size : 7.75 MiB (93%)
Audio
ID : 192 (0xC0)
Format : MPEG Audio
Format version : Version 1
Format profile : Layer 2
Duration : 33s 144ms
Bit rate mode : Constant
Bit rate : 96.0 Kbps
Channel(s) : 2 channels
Sampling rate : 48.0 KHz
Compression mode : Lossy
Delay relative to video : 6s 167ms
Stream size : 388 KiB (5%)
Also VLC (linux) or Quicktime player (mac) plays this file with both audio and video.
Attachments (1)
Change History (2)
by , 13 years ago
Attachment: | mpeg2_in_mpeg1_cut.vcd added |
---|
comment:1 by , 13 years ago
Component: | FFmpeg → avformat |
---|---|
Resolution: | → invalid |
Status: | new → closed |
Version: | 0.8.5 → unspecified |
You have to pass -analyzeduration 6000000 to ffmpeg, audio stream starts late.
While I hope the preset value will be increased, there will be always be samples that need an even higher value.
Note that FFmpeg has switched to git - see http://ffmpeg.org/download.html - and on this bug tracker, only current git head (and current releases) are supported, your version is ancient and misses many features / contains many bugs that have been fixed meanwhile.