[FFmpeg-user] v210 to Prores Original Picture Scanning type

Dave Rice dave at dericed.com
Tue Jun 12 16:55:59 EEST 2018


> On Jun 12, 2018, at 4:36 AM, Philippe Laterrade <laterradep at vectracom.fr> wrote:
> 
> Hi all,
> 
> 
> 
> Little question, perhaps already answered.
> 
> I'm transoding v210 to Prores using the last nightly build ffmpeg version.
> 
> What ever the v210 container I used as input (I tried Qt, mxf, avi),
> MediaInfo still says :
> 
> Original scan type                       : Progressive
> 
> The thing is, the input is TFF.
> 
> I already tried several things but didn't pass.
> 
> Any idea what to do get the right value ?

This works for me.
1. create a tff v210

ffmpeg -f lavfi -i testsrc -vf setfield=tff -vframes 1 -c:v prores_ks -flags +ildct+ilme -y tff.mov
ffmpeg version N-52443-g44a2415a6d Copyright (c) 2000-2018 the FFmpeg developers
  built with Apple LLVM version 9.0.0 (clang-900.0.38)
  configuration: --prefix=/usr/local/Cellar/ffmpeg/HEAD-44a2415 --enable-shared --enable-pthreads --enable-version3 --enable-hardcoded-tables --enable-avresample --cc=clang --host-cflags= --host-ldflags= --enable-gpl --enable-ffplay --enable-libfreetype --enable-libmp3lame --enable-libx264 --enable-libxvid --enable-opencl --enable-videotoolbox --disable-lzma
  libavutil      56. 18.102 / 56. 18.102
  libavcodec     58. 19.104 / 58. 19.104
  libavformat    58. 17.100 / 58. 17.100
  libavdevice    58.  4.100 / 58.  4.100
  libavfilter     7. 24.100 /  7. 24.100
  libavresample   4.  0.  0 /  4.  0.  0
  libswscale      5.  2.100 /  5.  2.100
  libswresample   3.  2.100 /  3.  2.100
  libpostproc    55.  2.100 / 55.  2.100
Input #0, lavfi, from 'testsrc':
  Duration: N/A, start: 0.000000, bitrate: N/A
    Stream #0:0: Video: rawvideo (RGB[24] / 0x18424752), rgb24, 320x240 [SAR 1:1 DAR 4:3], 25 tbr, 25 tbn, 25 tbc
Stream mapping:
  Stream #0:0 -> #0:0 (rawvideo (native) -> prores (prores_ks))
Press [q] to stop, [?] for help
[prores_ks @ 0x7fae1981fe00] Autoselected 4:4:4:4 profile because of the used input colorspace. It can be overridden through -profile option.
[prores_ks @ 0x7fae19829c00] Autoselected 4:4:4:4 profile because of the used input colorspace. It can be overridden through -profile option.
[prores_ks @ 0x7fae19833a00] Autoselected 4:4:4:4 profile because of the used input colorspace. It can be overridden through -profile option.
[prores_ks @ 0x7fae1983d800] Autoselected 4:4:4:4 profile because of the used input colorspace. It can be overridden through -profile option.
[prores_ks @ 0x7fae19847a00] Autoselected 4:4:4:4 profile because of the used input colorspace. It can be overridden through -profile option.
[prores_ks @ 0x7fae19851c00] Autoselected 4:4:4:4 profile because of the used input colorspace. It can be overridden through -profile option.
[prores_ks @ 0x7fae1985be00] Autoselected 4:4:4:4 profile because of the used input colorspace. It can be overridden through -profile option.
[prores_ks @ 0x7fae19866000] Autoselected 4:4:4:4 profile because of the used input colorspace. It can be overridden through -profile option.
[prores_ks @ 0x7fae19870200] Autoselected 4:4:4:4 profile because of the used input colorspace. It can be overridden through -profile option.
[prores_ks @ 0x7fae1987a400] Autoselected 4:4:4:4 profile because of the used input colorspace. It can be overridden through -profile option.
[prores_ks @ 0x7fae19884600] Autoselected 4:4:4:4 profile because of the used input colorspace. It can be overridden through -profile option.
[prores_ks @ 0x7fae1988e800] Autoselected 4:4:4:4 profile because of the used input colorspace. It can be overridden through -profile option.
[prores_ks @ 0x7fae19898a00] Autoselected 4:4:4:4 profile because of the used input colorspace. It can be overridden through -profile option.
[prores_ks @ 0x7fae198a2c00] Autoselected 4:4:4:4 profile because of the used input colorspace. It can be overridden through -profile option.
[prores_ks @ 0x7fae198ace00] Autoselected 4:4:4:4 profile because of the used input colorspace. It can be overridden through -profile option.
[prores_ks @ 0x7fae198b7000] Autoselected 4:4:4:4 profile because of the used input colorspace. It can be overridden through -profile option.
[prores_ks @ 0x7fae198c1200] Autoselected 4:4:4:4 profile because of the used input colorspace. It can be overridden through -profile option.
[prores_ks @ 0x7fae198cb400] Autoselected 4:4:4:4 profile because of the used input colorspace. It can be overridden through -profile option.
[prores_ks @ 0x7fae198d5600] Autoselected 4:4:4:4 profile because of the used input colorspace. It can be overridden through -profile option.
[prores_ks @ 0x7fae198df800] Autoselected 4:4:4:4 profile because of the used input colorspace. It can be overridden through -profile option.
[prores_ks @ 0x7fae198e9a00] Autoselected 4:4:4:4 profile because of the used input colorspace. It can be overridden through -profile option.
[prores_ks @ 0x7fae198f3c00] Autoselected 4:4:4:4 profile because of the used input colorspace. It can be overridden through -profile option.
[prores_ks @ 0x7fae198fde00] Autoselected 4:4:4:4 profile because of the used input colorspace. It can be overridden through -profile option.
[prores_ks @ 0x7fae19908000] Autoselected 4:4:4:4 profile because of the used input colorspace. It can be overridden through -profile option.
[prores_ks @ 0x7fae19002400] Autoselected 4:4:4:4 profile because of the used input colorspace. It can be overridden through -profile option.
Output #0, mov, to 'tff.mov':
  Metadata:
    encoder         : Lavf58.17.100
    Stream #0:0: Video: prores (prores_ks) (ap4h / 0x68347061), yuv444p10le, 320x240 [SAR 1:1 DAR 4:3], q=2-31, 200 kb/s, 25 fps, 12800 tbn, 25 tbc
    Metadata:
      encoder         : Lavc58.19.104 prores_ks
frame=    1 fps=0.0 q=-0.0 Lsize=      43kB time=00:00:00.00 bitrate=4531179.5kbits/s speed=0.00399x    
video:42kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 1.708221%

2. check tff v210 file in mediainfo

mediainfo tff_v210.mov 
General
Complete name                            : tff_v210.mov
Format                                   : MPEG-4
Format profile                           : QuickTime
Codec ID                                 : qt   0000.02 (qt  )
File size                                : 211 KiB
Duration                                 : 40 ms
Overall bit rate                         : 43.2 Mb/s
Writing application                      : Lavf58.17.100

Video
ID                                       : 1
Format                                   : YUV
Codec ID                                 : v210
Codec ID/Hint                            : AJA Video Systems Xena
Duration                                 : 40 ms
Bit rate                                 : 43.0 Mb/s
Width                                    : 320 pixels
Clean aperture width                     : 320 pixels
Height                                   : 240 pixels
Clean aperture height                    : 240 pixels
Display aspect ratio                     : 4:3
Clean aperture display aspect ratio      : 4:3
Frame rate mode                          : Constant
Frame rate                               : 25.000 FPS
Color space                              : YUV
Chroma subsampling                       : 4:2:2
Bit depth                                : 10 bits
Scan type                                : Interlaced
Scan type, store method                  : Interleaved fields
Scan order                               : Top Field First
Compression mode                         : Lossless
Bits/(Pixel*Frame)                       : 22.400
Stream size                              : 210 KiB (100%)
Language                                 : English

3. transcode to prores

ffmpeg -i tff_v210.mov -c:v prores_ks -flags +ildct+ilme tff_prores.mov
ffmpeg version N-52443-g44a2415a6d Copyright (c) 2000-2018 the FFmpeg developers
  built with Apple LLVM version 9.0.0 (clang-900.0.38)
  configuration: --prefix=/usr/local/Cellar/ffmpeg/HEAD-44a2415 --enable-shared --enable-pthreads --enable-version3 --enable-hardcoded-tables --enable-avresample --cc=clang --host-cflags= --host-ldflags= --enable-gpl --enable-ffplay --enable-libfreetype --enable-libmp3lame --enable-libx264 --enable-libxvid --enable-opencl --enable-videotoolbox --disable-lzma
  libavutil      56. 18.102 / 56. 18.102
  libavcodec     58. 19.104 / 58. 19.104
  libavformat    58. 17.100 / 58. 17.100
  libavdevice    58.  4.100 / 58.  4.100
  libavfilter     7. 24.100 /  7. 24.100
  libavresample   4.  0.  0 /  4.  0.  0
  libswscale      5.  2.100 /  5.  2.100
  libswresample   3.  2.100 /  3.  2.100
  libpostproc    55.  2.100 / 55.  2.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'tff_v210.mov':
  Metadata:
    major_brand     : qt  
    minor_version   : 512
    compatible_brands: qt  
    encoder         : Lavf58.17.100
  Duration: 00:00:00.04, start: 0.000000, bitrate: 43164 kb/s
    Stream #0:0(eng): Video: v210 (v210 / 0x30313276), yuv422p10le(top coded first (swapped)), 320x240, 43008 kb/s, SAR 1:1 DAR 4:3, 25 fps, 25 tbr, 12800 tbn, 12800 tbc (default)
    Metadata:
      handler_name    : DataHandler
      encoder         : Lavc58.19.104 v210
Stream mapping:
  Stream #0:0 -> #0:0 (v210 (native) -> prores (prores_ks))
Press [q] to stop, [?] for help
[prores_ks @ 0x7f9305810400] Autoselected HQ profile to keep best quality. It can be overridden through -profile option.
[prores_ks @ 0x7f9305810a00] Autoselected HQ profile to keep best quality. It can be overridden through -profile option.
[prores_ks @ 0x7f9305856c00] Autoselected HQ profile to keep best quality. It can be overridden through -profile option.
[prores_ks @ 0x7f9305860e00] Autoselected HQ profile to keep best quality. It can be overridden through -profile option.
[prores_ks @ 0x7f930586b000] Autoselected HQ profile to keep best quality. It can be overridden through -profile option.
[prores_ks @ 0x7f9305875200] Autoselected HQ profile to keep best quality. It can be overridden through -profile option.
[prores_ks @ 0x7f930587f400] Autoselected HQ profile to keep best quality. It can be overridden through -profile option.
[prores_ks @ 0x7f9305889600] Autoselected HQ profile to keep best quality. It can be overridden through -profile option.
[prores_ks @ 0x7f9305893800] Autoselected HQ profile to keep best quality. It can be overridden through -profile option.
[prores_ks @ 0x7f930589da00] Autoselected HQ profile to keep best quality. It can be overridden through -profile option.
[prores_ks @ 0x7f93058a7c00] Autoselected HQ profile to keep best quality. It can be overridden through -profile option.
[prores_ks @ 0x7f93058b1e00] Autoselected HQ profile to keep best quality. It can be overridden through -profile option.
[prores_ks @ 0x7f93058bc000] Autoselected HQ profile to keep best quality. It can be overridden through -profile option.
[prores_ks @ 0x7f93058c6200] Autoselected HQ profile to keep best quality. It can be overridden through -profile option.
[prores_ks @ 0x7f93058d0400] Autoselected HQ profile to keep best quality. It can be overridden through -profile option.
[prores_ks @ 0x7f93058da600] Autoselected HQ profile to keep best quality. It can be overridden through -profile option.
[prores_ks @ 0x7f93058e4800] Autoselected HQ profile to keep best quality. It can be overridden through -profile option.
[prores_ks @ 0x7f93058eea00] Autoselected HQ profile to keep best quality. It can be overridden through -profile option.
[prores_ks @ 0x7f93058f8c00] Autoselected HQ profile to keep best quality. It can be overridden through -profile option.
[prores_ks @ 0x7f9305902e00] Autoselected HQ profile to keep best quality. It can be overridden through -profile option.
[prores_ks @ 0x7f930590d000] Autoselected HQ profile to keep best quality. It can be overridden through -profile option.
[prores_ks @ 0x7f9305917200] Autoselected HQ profile to keep best quality. It can be overridden through -profile option.
[prores_ks @ 0x7f9305921400] Autoselected HQ profile to keep best quality. It can be overridden through -profile option.
[prores_ks @ 0x7f930592b600] Autoselected HQ profile to keep best quality. It can be overridden through -profile option.
[prores_ks @ 0x7f9305809c00] Autoselected HQ profile to keep best quality. It can be overridden through -profile option.
Output #0, mov, to 'tff_prores.mov':
  Metadata:
    major_brand     : qt  
    minor_version   : 512
    compatible_brands: qt  
    encoder         : Lavf58.17.100
    Stream #0:0(eng): Video: prores (prores_ks) (apch / 0x68637061), yuv422p10le, 320x240 [SAR 1:1 DAR 4:3], q=2-31, 200 kb/s, 25 fps, 12800 tbn, 25 tbc (default)
    Metadata:
      handler_name    : DataHandler
      encoder         : Lavc58.19.104 prores_ks
frame=    1 fps=0.0 q=-0.0 Lsize=      37kB time=00:00:00.00 bitrate=3926769.2kbits/s speed=0.00552x    
video:37kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 1.976348%

4. check tff in prores with mediainfo

mediainfo tff_prores.mov 
General
Complete name                            : tff_prores.mov
Format                                   : MPEG-4
Format profile                           : QuickTime
Codec ID                                 : qt   0000.02 (qt  )
File size                                : 37.4 KiB
Duration                                 : 40 ms
Overall bit rate                         : 7 657 kb/s
Writing application                      : Lavf58.17.100

Video
ID                                       : 1
Format                                   : ProRes
Format version                           : Version 0
Format profile                           : 422 HQ
Codec ID                                 : apch
Duration                                 : 40 ms
Bit rate                                 : 7 509 kb/s
Width                                    : 320 pixels
Height                                   : 240 pixels
Display aspect ratio                     : 4:3
Frame rate mode                          : Constant
Frame rate                               : 25.000 FPS
Color space                              : YUV
Chroma subsampling                       : 4:2:2
Scan type                                : Interlaced
Scan type, store method                  : Interleaved fields
Scan order                               : Top Field First
Bits/(Pixel*Frame)                       : 3.911
Stream size                              : 36.7 KiB (98%)
Writing library                          : Lavc
Language                                 : English

But to preserve the interlacement data in the prores encoding, I think you need to use a combination of the prores_ks encoder with the -flags +ildct+ilme option.
Dave Rice



More information about the ffmpeg-user mailing list