On 16 May 2015 at 10:24, Carl Eugen Hoyos <ceho...@ag.or.at> wrote: > Reuben Martin <reuben.m <at> gmail.com> writes: > > > On Friday, May 15, 2015 02:42:06 PM Carl Eugen Hoyos wrote: > > > Carles Vila <cvilad <at> gmail.com> writes: > > > > 2. Is there a way to conform a ProRes file > > > > directly with ffmpeg? All audio channels playback > > > > sample rate should also be modified accordingly. > > > > > > How is that possible without transcoding? > > > > > Just a guess, it might have a flag set somewhere to > > indicate pull up or pull down for the audio sampling rate. > > Allow me to rephrase: > You cannot change the audio playback sample rate without > reencoding. > > There is an input option -r that should allow changing > the video speed, it does not always work though. > Please test and report back. > > Carl Eugen > > _______________________________________________ > ffmpeg-user mailing list > ffmpeg-user@ffmpeg.org > http://ffmpeg.org/mailman/listinfo/ffmpeg-user >
Hi, here are some of my findings regarding frame rate conforming. Please find below 2 links with video samples. I created the original at 24 fps from scratch and then I used Apple Cinema tools to create the conformed 25 fps version. As you can see, the 25 fps version has the same exact frames but shorter duration. That's what I would like to achieve with ffmpeg. Additionally the sample rate of the conformed version has been pulled up to 50.000 kHz (=48.000x(25/24)) to keep audio in sync, but I can assure no transcoding is made in this operation, it takes fractions of a second to modify the header of the file. I believe this is a feature of the Quicktime structure to be able to modify these values in the header, btw. the operation of conforming in Cinema Tools is only possible with intra-frame codecs like Prores. Thanks for your insight wether this could be possible to do with ffmpeg. If audio is a problem, I could afford to skip it completely and keep only the video stream (-an) Here is the information ffmpeg gives about both files ++++++++++++++++++++++++++ $ ffmpeg -i* original+24fps.mov* ffmpeg version 2.4.2 Copyright (c) 2000-2014 the FFmpeg developers built on Oct 28 2014 17:39:46 with Apple LLVM version 5.1 (clang-503.0.40) (based on LLVM 3.4svn) configuration: --prefix=/usr/local/Cellar/ffmpeg/2.4.2 --enable-shared --enable-pthreads --enable-gpl --enable-version3 --enable-nonfree --enable-hardcoded-tables --enable-avresample --enable-vda --cc=clang --host-cflags= --host-ldflags= --enable-libx264 --enable-libfaac --enable-libmp3lame --enable-libxvid --enable-libfreetype --enable-libtheora --enable-libvorbis --enable-libvpx --enable-librtmp --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libvo-aacenc --enable-libass --enable-ffplay --enable-libspeex --enable-libschroedinger --enable-libfdk-aac --enable-libopus --enable-frei0r --enable-libopenjpeg --extra-cflags='-I/usr/local/Cellar/openjpeg/1.5.1_1/include/openjpeg-1.5 ' libavutil 54. 7.100 / 54. 7.100 libavcodec 56. 1.100 / 56. 1.100 libavformat 56. 4.101 / 56. 4.101 libavdevice 56. 0.100 / 56. 0.100 libavfilter 5. 1.100 / 5. 1.100 libavresample 2. 1. 0 / 2. 1. 0 libswscale 3. 0.100 / 3. 0.100 libswresample 1. 1.100 / 1. 1.100 libpostproc 53. 0.100 / 53. 0.100 Guessed Channel Layout for Input Stream #0.1 : mono Guessed Channel Layout for Input Stream #0.2 : mono Guessed Channel Layout for Input Stream #0.3 : mono Guessed Channel Layout for Input Stream #0.4 : mono Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'original+24fps.mov': Metadata: major_brand : qt minor_version : 537199360 compatible_brands: qt creation_time : 2015-05-16 22:46:55 *Duration: 00:00:04.17,* start: 0.000000, bitrate: 23585 kb/s Stream #0:0(eng): Video: prores (apch / 0x68637061), yuv422p10le, 1920x1080, 20475 kb/s, SAR 1:1 DAR 16:9, *24 fps, 24 tbr, 24 tbn, 24 tbc (default)* Metadata: creation_time : 2015-05-16 22:46:55 handler_name : Apple Alias Data Handler encoder : Apple ProRes 422 HQ timecode : 01:00:00:00 Stream #0:1(eng): Audio: pcm_s16le (sowt / 0x74776F73), *48000 Hz,* 1 channels, s16, 768 kb/s (default) Metadata: creation_time : 2015-05-16 22:46:55 handler_name : Apple Alias Data Handler Stream #0:2(eng): Audio: pcm_s16le (sowt / 0x74776F73), 48000 Hz, 1 channels, s16, 768 kb/s (default) Metadata: creation_time : 2015-05-16 22:46:55 handler_name : Apple Alias Data Handler Stream #0:3(eng): Audio: pcm_s16le (sowt / 0x74776F73), 48000 Hz, 1 channels, s16, 768 kb/s (default) Metadata: creation_time : 2015-05-16 22:46:55 handler_name : Apple Alias Data Handler Stream #0:4(eng): Audio: pcm_s16le (sowt / 0x74776F73), 48000 Hz, 1 channels, s16, 768 kb/s (default) Metadata: creation_time : 2015-05-16 22:46:55 handler_name : Apple Alias Data Handler Stream #0:5(eng): Data: none (tmcd / 0x64636D74), 0 kb/s (default) Metadata: creation_time : 2015-05-16 22:47:59 handler_name : Apple Alias Data Handler timecode : 01:00:00:00 +++++++++++++++++++++++++++++++++++++ $ ffmpeg -i *Conformed_24_to_25.mov * ffmpeg version 2.4.2 Copyright (c) 2000-2014 the FFmpeg developers built on Oct 28 2014 17:39:46 with Apple LLVM version 5.1 (clang-503.0.40) (based on LLVM 3.4svn) configuration: --prefix=/usr/local/Cellar/ffmpeg/2.4.2 --enable-shared --enable-pthreads --enable-gpl --enable-version3 --enable-nonfree --enable-hardcoded-tables --enable-avresample --enable-vda --cc=clang --host-cflags= --host-ldflags= --enable-libx264 --enable-libfaac --enable-libmp3lame --enable-libxvid --enable-libfreetype --enable-libtheora --enable-libvorbis --enable-libvpx --enable-librtmp --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libvo-aacenc --enable-libass --enable-ffplay --enable-libspeex --enable-libschroedinger --enable-libfdk-aac --enable-libopus --enable-frei0r --enable-libopenjpeg --extra-cflags='-I/usr/local/Cellar/openjpeg/1.5.1_1/include/openjpeg-1.5 ' libavutil 54. 7.100 / 54. 7.100 libavcodec 56. 1.100 / 56. 1.100 libavformat 56. 4.101 / 56. 4.101 libavdevice 56. 0.100 / 56. 0.100 libavfilter 5. 1.100 / 5. 1.100 libavresample 2. 1. 0 / 2. 1. 0 libswscale 3. 0.100 / 3. 0.100 libswresample 1. 1.100 / 1. 1.100 libpostproc 53. 0.100 / 53. 0.100 Guessed Channel Layout for Input Stream #0.0 : mono Guessed Channel Layout for Input Stream #0.1 : mono Guessed Channel Layout for Input Stream #0.2 : mono Guessed Channel Layout for Input Stream #0.3 : mono Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'Conformed_24_to_25.mov': Metadata: major_brand : qt minor_version : 537199360 compatible_brands: qt creation_time : 2015-05-16 22:46:55 timecode : 01:00:00:00 *Duration: 00:00:04.00*, start: 0.000000, bitrate: 24567 kb/s Stream #0:0(eng): Audio: pcm_s16le (sowt / 0x74776F73), *50000 Hz*, 1 channels, s16, 800 kb/s (default) Metadata: creation_time : 2015-05-16 22:46:55 handler_name : Apple Alias Data Handler Stream #0:1(eng): Audio: pcm_s16le (sowt / 0x74776F73), 50000 Hz, 1 channels, s16, 800 kb/s (default) Metadata: creation_time : 2015-05-16 22:46:55 handler_name : Apple Alias Data Handler Stream #0:2(eng): Audio: pcm_s16le (sowt / 0x74776F73), 50000 Hz, 1 channels, s16, 800 kb/s (default) Metadata: creation_time : 2015-05-16 22:46:55 handler_name : Apple Alias Data Handler Stream #0:3(eng): Audio: pcm_s16le (sowt / 0x74776F73), 50000 Hz, 1 channels, s16, 800 kb/s (default) Metadata: creation_time : 2015-05-16 22:46:55 handler_name : Apple Alias Data Handler Stream #0:4(eng): Video: prores (apch / 0x68637061), yuv422p10le, 1920x1080, 21328 kb/s, SAR 1:1 DAR 16:9, *25 fps, 25 tbr, 2500 tbn, 2500 tbc *(default) Metadata: creation_time : 2015-05-16 22:51:23 handler_name : Apple Alias Data Handler encoder : Apple ProRes 422 HQ timecode : 01:00:00:00 Stream #0:5(eng): Data: none (tmcd / 0x64636D74), 0 kb/s (default) Metadata: creation_time : 2015-05-16 22:51:23 handler_name : Apple Alias Data Handler timecode : 01:00:00:00 ++++++++++++++++++++++++++++++++ link to the samples: https://www.dropbox.com/sh/cavkkgbvjkoh7fy/AABSTFcPJ4rdh8LZUZTG0BM1a?dl=0 _______________________________________________ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-user