[FFmpeg-trac] #10392(avcodec:new): mxf with DolbyE and channel_count != 02 is wrongly read by FFMpeg and cannot be remuxed

FFmpeg trac at avcodec.org
Fri Jun 9 15:20:55 EEST 2023


#10392: mxf with DolbyE and channel_count != 02 is wrongly read by FFMpeg and
cannot be remuxed
-------------------------------------+-------------------------------------
             Reporter:  Francesco    |                    Owner:  (none)
  Bucciantini                        |
                 Type:  defect       |                   Status:  new
             Priority:  normal       |                Component:  avcodec
              Version:  git-master   |               Resolution:
             Keywords:  dolby_e mxf  |               Blocked By:
             Blocking:               |  Reproduced by developer:  0
Analyzed by developer:  0            |
-------------------------------------+-------------------------------------
Comment (by Francesco Bucciantini):

 Hi Tomas,
 you're absolutely right, the file is indeed broken and has been wrongly
 muxed by ommcp, which is why I reached out to Harmonic last year at IBC
 and I managed to get it fixed on their end.
 As results, the new Omneon Media API are creating correctly muxed files
 once again.
 In other words, those who are paying for Harmonic's support and can update
 their version of the muxer, can easily remux those files and/or make sure
 they're correct.

 Now, the reason why I brought this up is that we won't get rid of those
 broken files anytime soon, unfortunately.
 The reason is that there are many companies using Omneon video server to
 record feeds via SDI and those hardware encoders can't have their firmware
 upgraded, so they're gonna be stuck forever producing faulty files.
 Unfortunately I'm a victim of this and I've been receiving faulty files on
 a daily basis.
 Luckily I'm also an Omneon user myself, so I can remux them with version
 9.8 and call it a day, but at the same time I'm an Avisynth contributor
 and one of the developers of FFAStrans which stands for (FFMpeg Avisynth
 Transcoder) which is free and based on the same open source software I
 contribute to. This means that although I can easily deal with broken
 files, my very own users won't be able to, nor will the wider open source
 community.
 I told them to use gsar to change the hex of the file which corresponds to
 the channel_count entry to bring it back from 08 to 02 before using
 FFMpeg, however that's not just time consuming but also a bit risky 'cause
 they can't blindly use it or script it.

 The best solution would be to be able to manage those broken files within
 FFMpeg directly.
 Would it be possible to introduce a cross check based on the EditUnit to
 actually make FFMpeg read the file as if it was really 2 channels instead
 of just blindly trusting the metadata?
-- 
Ticket URL: <https://trac.ffmpeg.org/ticket/10392#comment:4>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list