[FFmpeg-trac] #6383(avcodec:new): Incorrect scan type (AVI DV)

FFmpeg trac at avcodec.org
Wed May 10 16:19:49 EEST 2017

#6383: Incorrect scan type (AVI DV)
             Reporter:  laurfb       |                     Type:  defect
               Status:  new          |                 Priority:  normal
            Component:  avcodec      |                  Version:  git-
             Keywords:  vprp chunk,  |  master
  FieldPerFrame                      |               Blocked By:
             Blocking:               |  Reproduced by developer:  0
Analyzed by developer:  0            |
 Hi. I'm not sure if this is a normal behaviour or I'm doing something
 I try to convert some videos to PAL DV AVI using ffmpeg-git (dvvideo
 Always, checking resulted videos I found that mediainfo report AVI-DV as
 "Scan type: Progressive".
 Even for simple avi dv to avi dv conversions.

 Command used:
 ffmpeg -i pal_dv_orig.avi -c:v dvvideo pal_dv_ffmpeg.avi

 With mediainfo pal_dv_orig.avi is described as
  "Scan type : Interlaced
  Scan order : Bottom Field First"
 while for the resulted video file (pal_dv_ffmpeg.avi) mediainfo report:
  "'''Scan type : Progressive'''
  Original scan type : Interlaced
  Original scan order : Bottom Field First"

 According to Jerome Martinez (Mediainfo developer) to whom I asked for

 "You see the two lines with "Original", which means there is a conflict
 between container (AVI) metadata and stream (DV) metadata.
 DV in "ffmpeg" has same scan type as DV in "orig" (Interlaced, BFF).
 but "ffmpeg" AVI contains a "'''vprp'''" chunk (Video properties) with
 '''FieldPerFrame of 1'''.
 In your result file:
 00010F4 Video properties (76 bytes)
 00010F4 Header (8 bytes)
 00010F4 Name: vprp
 00010F8 Size: 68 (0x00000044)
 00010FC VideoFormatToken: 0 (0x00000000)
 0001100 VideoStandard: 0 (0x00000000)
 0001104 VerticalRefreshRate: 25 (0x00000019)
 0001108 HTotalInT: 720 (0x000002D0)
 000110C VTotalInLines: 576 (0x00000240)
 0001110 FrameAspectRatio Height: 9 (0x0009)
 0001112 FrameAspectRatio Width: 16 (0x0010)
 0001114 FrameWidthInPixels: 720 (0x000002D0)
 0001118 FrameHeightInLines: 576 (0x00000240)
 000111C FieldPerFrame: 1 (0x00000001)
 0001120 Field (32 bytes)
 0001120 CompressedBMHeight: 576 (0x00000240)
 0001124 CompressedBMWidth: 720 (0x000002D0)
 0001128 ValidBMHeight: 576 (0x00000240)
 000112C ValidBMWidth: 720 (0x000002D0)
 0001130 ValidBMXOffset: 0 (0x00000000)
 0001134 ValidBMYOffset: 0 (0x00000000)
 0001138 VideoXOffsetInT: 0 (0x00000000)
 000113C VideoYValidStartLine: 0 (0x00000000)
 (there is no "vprp" chunk in your "orig" file)
 from specs
 "Number of Fields Per Frame
 One or two, depending on whether the video is interlaced or progressive"
 '''Maybe I am wrong, but from my point of view "vprp" filling by FFmpeg is
 wrong for such interlaced content ("Number of Fields Per Frame" value
 should be 2 instead of 1), please ask FFmpeg developers for an argument
 about why "Number of Fields Per Frame" is 1 even for such interlaced
 content (maybe it means that both fields are in the same chunk? specs are
 not very explicit, I display what I understood from specs i.e. interlaced
 DV should use "2" for "Number of Fields Per Frame").'''
 Note: in the same kind of issue, I see "25" for "refresh rate" and specs
 say "50 for PAL", but for frame rate I don't test this value for the

 So, is something about ffmpeg/dvvideo encoder, command used or mediainfo
 report is wrong?
 Seems to be related on how ffmpeg pack DV stream in AVI container.


 Video samples
 pal_dv_orig.avi - http://www76.zippyshare.com/v/HOF8lFAG/file.html
 pal_dv_ffmpeg.avi - http://www76.zippyshare.com/v/8BY8dniE/file.html

Ticket URL: <https://trac.ffmpeg.org/ticket/6383>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker

More information about the FFmpeg-trac mailing list