Opened 11 years ago

Last modified 2 years ago

#3511 reopened enhancement

support FrameRate in dpx files

Reported by: dave rice Owned by:
Priority: normal Component: avcodec
Version: git-master Keywords: dpx
Cc: Elliott Blocked By:
Blocking: Reproduced by developer: yes
Analyzed by developer: no

Description

Summary of the enhancement:

A request for frame rate support in the dpx encoder/decoder. The dpx IndustryFilmInfoHeader (and the Television one) have a frame rate field. See: http://www.fileformat.info/format/dpx/egff.htm

How to reproduce:

Making a test set of dpx files at 18 fps. I use -t 1 and -r:v 18 so 18 dpx files are created.

ffmpeg -f lavfi -i color -r:v 18 -t 1 -f image2 -y 18fps_%06d.dpx
ffmpeg version 2.2 Copyright (c) 2000-2014 the FFmpeg developers
  built on Mar 26 2014 16:18:04 with Apple LLVM version 5.0 (clang-500.2.79) (based on LLVM 3.3svn)
  configuration: --prefix=/usr/local/Cellar/ffmpeg/2.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-ffplay --enable-libopenjpeg --extra-cflags='-I/usr/local/Cellar/openjpeg/1.5.1_1/include/openjpeg-1.5 '
  libavutil      52. 66.100 / 52. 66.100
  libavcodec     55. 52.102 / 55. 52.102
  libavformat    55. 33.100 / 55. 33.100
  libavdevice    55. 10.100 / 55. 10.100
  libavfilter     4.  2.100 /  4.  2.100
  libavresample   1.  2.  0 /  1.  2.  0
  libswscale      2.  5.102 /  2.  5.102
  libswresample   0. 18.100 /  0. 18.100
  libpostproc    52.  3.100 / 52.  3.100
Input #0, lavfi, from 'color':
  Duration: N/A, start: 0.000000, bitrate: N/A
    Stream #0:0: Video: rawvideo (I420 / 0x30323449), yuv420p, 320x240 [SAR 1:1 DAR 4:3], 25 tbr, 25 tbn, 25 tbc
Output #0, image2, to '18fps_%06d.dpx':
  Metadata:
    encoder         : Lavf55.33.100
    Stream #0:0: Video: dpx, rgb24, 320x240 [SAR 1:1 DAR 4:3], q=2-31, 200 kb/s, 90k tbn, 18 tbc
Stream mapping:
  Stream #0:0 -> #0:0 (rawvideo -> dpx)
Press [q] to stop, [?] for help
frame=   18 fps=0.0 q=-1.0 Lsize=N/A time=00:00:01.00 bitrate=N/A dup=0 drop=4    
video:4079kB audio:0kB subtitle:0 data:0 global headers:0kB muxing overhead -100.000526%

Reading the first dpx shows a default frame rate of 25.

ffmpeg -i 18fps_000001.dpx 
ffmpeg version 2.2 Copyright (c) 2000-2014 the FFmpeg developers
  built on Mar 26 2014 16:18:04 with Apple LLVM version 5.0 (clang-500.2.79) (based on LLVM 3.3svn)
  configuration: --prefix=/usr/local/Cellar/ffmpeg/2.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-ffplay --enable-libopenjpeg --extra-cflags='-I/usr/local/Cellar/openjpeg/1.5.1_1/include/openjpeg-1.5 '
  libavutil      52. 66.100 / 52. 66.100
  libavcodec     55. 52.102 / 55. 52.102
  libavformat    55. 33.100 / 55. 33.100
  libavdevice    55. 10.100 / 55. 10.100
  libavfilter     4.  2.100 /  4.  2.100
  libavresample   1.  2.  0 /  1.  2.  0
  libswscale      2.  5.102 /  2.  5.102
  libswresample   0. 18.100 /  0. 18.100
  libpostproc    52.  3.100 / 52.  3.100
Input #0, image2, from '18fps_000001.dpx':
  Duration: 00:00:00.04, start: 0.000000, bitrate: N/A
    Stream #0:0: Video: dpx, rgb24, 320x240 [SAR 1:1 DAR 4:3], 25 tbr, 25 tbn, 25 tbc
At least one output file must be specified

Change History (4)

comment:1 by Michael Niedermayer, 11 years ago

comment:2 by Elon Musk, 4 years ago

Resolution: fixed
Status: newclosed

comment:3 by Carl Eugen Hoyos, 4 years ago

Component: undeterminedavcodec
Reproduced by developer: set
Resolution: fixed
Status: closedreopened

Still reproducible with above commands.

comment:4 by Elliott, 2 years ago

Cc: Elliott added

In case a sample helps, here is a DPX image with frame rate of 23.976. ffmpeg identifies it as 25.
You can see the correct frame rate with Mediainfo.
https://drive.google.com/file/d/1FTfnIEAGYeUL259qVm9rzs7Owp8Hw4SH/view?usp=sharing

It also shows this warning, which I believe is because it checks for upper-case v:

[dpx @ 0x65cdf40] Unknown header format version v1.0.
Note: See TracTickets for help on using tickets.