[FFmpeg-devel] [PATCH 2/3] avformat: Support s337m in mxf/wav/w64

Tomas Härdin tjoppen at acc.umu.se
Sat Aug 3 16:56:41 EEST 2019


tor 2019-08-01 klockan 16:34 +0000 skrev Gaullier Nicolas:
> > > > MXF has a UL registered for Dolby-E:
> > I also notice this UL is already in mxf.c, but added commented out
> > by Baptiste back in 2006..
> There are two ways for signalling dolby-E in MXF : channel status IF
> using an AES3 descriptor, or the registered UL for Sound Essence
> Coding.

Which specs pertain to this?

> ARD/ZDF/HDF requires both but it is very specific. The use of the
> channel status only seems a little bit more common, I have seen it in
> Harmonic files.
> But at the end, what is really highly widespread is to have no
> signaling at all.

Wouldn't be broadcast if the crappiest way wasn't the most widespread

> > So, a general solution is needed. When the user knows the audio is
> > Dolby-E then they can obviously just override the decoder, if they
> > want (not always). Another typical case is "if you think the audio
> > is Dolby- E, automatically decode it so I don't blow my speakers!".
> > An option could allow avformat_find_stream_info() to wait for the
> > first audio packet and probe it, and not take what the demuxer says
> > at face value.
> Concerning a general solution, the problem is even worse : nowadays
> MXF files are mostly structured with mono audio tracks (ARD/ZDF, AS-
> 10 in France etc.)...
> My idea was to enable the submux only for wav/mxf/potentially
> quicktime because I don't see use case for other formats; but this
> require stereo audio.

I wouldn't be surprised if this shows up in GXF and LXF also

> For a more general solution (MXF with mono audio tracks
> specifically), I have in mind to build an audio filter : a graph
> would merge the L/R to build a dolbyE stream that the filter could
> decode: this is not very handy for users, but I don't know how it
> could be done otherwise.

This would suggest that a filter based approach would be best. It
sounds like the user will have to apply quite a bit of business logic
either way, except maybe for files that signal Dolby-E properly

> I am currently working with an AVOption in MXF&WAV contexts, but if
> you think avformat_find_stream_info() is a better way, I will take a
> look... but I am not very confident with my knowledge of ffmpeg for
> that work, and I will rather certainly concentrate on the general
> case with the audio filter if this is valid for you ?

It's been a while since I poked at lavf internals, so I'm not quite
sure what would be the best approach. Maybe Baptiste has some ideas?

Feel free to poke me on IRC about this, since it seems a bit of
discussion is needed (thardin in #ffmpeg-devel on freenode)

/Tomas




More information about the ffmpeg-devel mailing list