[FFmpeg-trac] #9255(avformat:new): DNX120 Decoding is broken in FFMpeg and FFPlay (fine in AVID and Adobe Premiere)

FFmpeg trac at avcodec.org
Fri May 21 17:30:24 EEST 2021

#9255: DNX120 Decoding is broken in FFMpeg and FFPlay (fine in AVID and Adobe
             Reporter:  FranceBB  |                     Type:  defect
               Status:  new       |                 Priority:  normal
            Component:  avformat  |                  Version:  git-master
             Keywords:            |               Blocked By:
             Blocking:            |  Reproduced by developer:  0
Analyzed by developer:  0         |
 Summary of the bug:

 DNX120 decoding/indexing is broken in:

 - LWLibavVideoSource
 - FFVideoSource
 - DirectShowSource (LAV)
 - FFMpeg
 - Davinci Resolve

 The following players also fail to decode it properly:

 - MPV
 - PotPlayer

 The following software decode it correctly:

 - AVID Media Composer
 - AVID Media Director
 - Adobe Premiere

 Here's the mediainfo:


 This is how it's decoded in FFMpeg / FFplay:


 And this is how it should be instead (decoded by AVID):


 Unfortunately, I cannot share the footage of the game (for obvious
 reasons, it's a copyrighted event), however I asked them to send me a non-
 sensitive content and they put a blue cloth on the camera and recorded a
 I know it kind of sucks as a sample, but here we go:

 Sample - https://we.tl/t-SvCQRPGikp

 How to reproduce:

 ffmpeg -i "GreenFrames.mxf" -vcodec ffvhuff -f avi -y "test.avi"


 ffplay -i

 ffmpeg version 2021-05-05-git-7c451b609c
 built on 05/05/2021 12:29 PM UTC+01:00

 and also

 ffplay version 4.4


 [FranceBB at router-localhost ~]$ ffplay -i
 ffplay version 4.4 Copyright (c) 2003-2021 the FFmpeg developers
   built with gcc 11 (GCC)
   configuration: --prefix=/usr --bindir=/usr/bin
 --datadir=/usr/share/ffmpeg --docdir=/usr/share/doc/ffmpeg
 --incdir=/usr/include/ffmpeg --libdir=/usr/lib64 --mandir=/usr/share/man
 --arch=x86_64 --optflags='-O2 -flto=auto -ffat-lto-objects -fexceptions -g
 -grecord-gcc-switches -pipe -Wall -Werror=format-security
 -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong
 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic
 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection'
 --extra-ldflags='-Wl,-z,relro -Wl,--as-needed -Wl,-z,now
 -specs=/usr/lib/rpm/redhat/redhat-hardened-ld ' --extra-cflags='
 -I/usr/include/rav1e' --enable-libopencore-amrnb --enable-libopencore-
 amrwb --enable-libvo-amrwbenc --enable-version3 --enable-bzlib --disable-
 crystalhd --enable-fontconfig --enable-frei0r --enable-gcrypt --enable-
 gnutls --enable-ladspa --enable-libaom --enable-libdav1d --enable-libass
 --enable-libbluray --enable-libcdio --enable-libdrm --enable-libjack
 --enable-libfreetype --enable-libfribidi --enable-libgsm --enable-
 libmp3lame --enable-libmysofa --enable-nvenc --enable-openal --enable-
 opencl --enable-opengl --enable-libopenjpeg --enable-libopenmpt --enable-
 libopus --enable-libpulse --enable-librsvg --enable-librav1e --enable-
 libsmbclient --enable-version3 --enable-libsoxr --enable-libspeex
 --enable-libsrt --enable-libssh --enable-libsvtav1 --enable-libtheora
 --enable-libvorbis --enable-libv4l2 --enable-libvidstab --enable-libvmaf
 --enable-version3 --enable-vapoursynth --enable-libvpx --enable-vulkan
 --enable-libglslang --enable-libx264 --enable-libx265 --enable-libxvid
 --enable-libxml2 --enable-libzimg --enable-libzvbi --enable-lv2 --enable-
 avfilter --enable-avresample --enable-libmodplug --enable-postproc
 --enable-pthreads --disable-static --enable-shared --enable-gpl --disable-
 debug --disable-stripping --shlibdir=/usr/lib64 --enable-lto --enable-
 libmfx --enable-runtime-cpudetect
   libavutil      56. 70.100 / 56. 70.100
   libavcodec     58.134.100 / 58.134.100
   libavformat    58. 76.100 / 58. 76.100
   libavdevice    58. 13.100 / 58. 13.100
   libavfilter     7.110.100 /  7.110.100
   libavresample   4.  0.  0 /  4.  0.  0
   libswscale      5.  9.100 /  5.  9.100
   libswresample   3.  9.100 /  3.  9.100
   libpostproc    55.  9.100 / 55.  9.100
 Input #0, mxf, from
     operational_pattern_ul: 060e2b34.04010101.0d010201.01010100
     application_platform: Microsoft Windows 7 Professional Service Pack 1
 (Build 7601)
     uid             : f3687fb0-a928-11eb-92b0-0cc47a8346df
     generation_uid  : f3687fb0-a928-11eb-92b1-0cc47a8346df
     company_name    : OpenCube
     product_name    : MXFTk Advanced
     product_uid     : 3a4fe380-0d01-11e4-869f-3cd92b5c1dfc
     product_version :
     modification_date: 2021-04-29T21:25:14.052000Z
     timecode        : 21:25:24:09
   Duration: 00:00:35.68, start: 0.000000, bitrate: 121346 kb/s
   Stream #0:0: Video: dnxhd (DNXHD), yuv422p(bt709/unknown/bt709, top
 first), 1920x1080, SAR 1:1 DAR 16:9, 25 fps, 25 tbr, 25 tbn, 25 tbc
       track_name      : Picture
    5.24 M-V:  0.045 fd=   0 aq=    0KB vq=15392KB sq=    0B f=0/0
Ticket URL: <https://trac.ffmpeg.org/ticket/9255>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker

More information about the FFmpeg-trac mailing list