[FFmpeg-user] How can I remux a video from 2997/100 to 30000/1001 fps?

Peter B. pb at das-werkstatt.com
Mon Jul 30 11:40:00 CEST 2012


Quoting Michael Niedermayer <michaelni at gmx.at>:

> On Thu, Jul 26, 2012 at 12:59:59PM +0200, Peter B. wrote:
>> I just ran into a really weird issue with "born digital" video material:
>>
>> I've tried to transcode a FFv1/PCM lossless file (720x576
>> @29.970fps) to a DVD conform MPEG, but mencoder threw the following
>> error message:
>>
>> "MPEG1/2 does not support 2997/100 fps"
>>
>> If I tell mencoder to use "-ofps 30000/1001" everything works fine.
>>
>>
>> Now, my question is:
>> Can I use ffmpeg to "clean" my original file to have the fps stored
>> "correctly"?
>>
>> I've tried this:
>> "$ ffmpeg -i input.avi -r 30000/1001 -acodec copy -vcodec copy output.avi"
>>
>> but the resulting file still had the "wrong" fps (2997/100).
>
> i cant reproduce this
> here:
> Stream #0:0, 1, 100/2997: Video: ffv1 (FFV1 / 0x31564646), yuv420p,  
> 720x576, 100/2997, SAR 16:15 DAR 4:3, 29.97 tbr, 29.97 tbn, 29.97 tbc
> changes to:
> Stream #0:0, 1, 1001/30000: Video: ffv1 (FFV1 / 0x31564646),  
> yuv420p, 720x576, 1001/30000, SAR 16:15 DAR 4:3, 29.97 tbr, 29.97  
> tbn, 29.97 tbc

Hm...
How do you get the output which shows the exact fps as fraction  
(100/2997, 1001/30000) - and why are they written reversed (100/2997  
!= 2997/100) ?

I only get this:

//---------------------------------
$ ffprobe cer-s1-5v-125-000.avi
//---------------------------------
ffprobe version N-42853-g0e1925d Copyright (c) 2007-2012 the FFmpeg developers
   built on Jul 24 2012 15:26:10 with gcc 4.4.5 (Debian 4.4.5-8)
   configuration: --prefix=/usr/local --enable-gpl --enable-nonfree  
--enable-postproc --enable-swscale --enable-avfi
lter --enable-pthreads --enable-bzlib --enable-libmp3lame  
--enable-libvorbis --enable-libxvid --enable-zlib --enable-libopenjpeg  
--enable-decoder=png --enable-encoder=png --enable-libschroedinger
   libavutil      51. 65.100 / 51. 65.100
   libavcodec     54. 44.100 / 54. 44.100
   libavformat    54. 20.100 / 54. 20.100
   libavdevice    54.  2.100 / 54.  2.100
   libavfilter     3.  3.100 /  3.  3.100
   libswscale      2.  1.100 /  2.  1.100
   libswresample   0. 15.100 /  0. 15.100
   libpostproc    52.  0.100 / 52.  0.100
[avi @ 0xa48a5e0] non-interleaved AVI
Input #0, avi, from 'cer-s1-5v-125-000.avi':
   Metadata:
     IARL            : cer-s1-5v-125
     date            : 2012-06-13T00:23:58+02:00
     title           : "Der Riese vom Steinfeld" (op. 125)
     track           : 1 / 15
     encoder         : Lavf52.111.0
   Duration: 00:00:50.05, start: 0.000000, bitrate: 70654 kb/s
     Stream #0:0: Video: ffv1 (FFV1 / 0x31564646), yuv422p, 720x486,  
29.97 tbr, 29.97 tbn, 29.97 tbc
     Stream #0:1: Audio: pcm_s16le ([1][0][0][0] / 0x0001), 48000 Hz,  
2 channels, s16, 1536 kb/s
//---------------------------------


I'll try again with current git, but as you can see I've been using a  
quite recently compiled version (24. July)

Thanks,
Pb



More information about the ffmpeg-user mailing list