[FFmpeg-devel] Codec IDs for AC3/DTS variants (Was: Re: [RFC] additinaldesc_type for dtshd mpeg-ts demuxer)

Justin Ruggles justinruggles
Tue Jun 10 00:03:04 CEST 2008

M?ns Rullg?rd wrote:
> Benjamin Larsson wrote:
>> elupus wrote:
>>> [...]
>>> Hmm. AC3_TRUE_HD should probably chenge. It's not the same thing as AC3, its
>>> more like MLP from DVDAudio standards.
>> Correct.
>>> AC3+, will be decodable by standard ac3 decoder, it should just ignore the
>>> extension if I understand correctly.
>> I think that is not entirely true. Justin should know for sure.

Not sure what you mean by AC3+.  Is that the Bluray mixed AC3 and E-AC3?
 Either way, to FFmpeg it's all just AC3.

> Either way, having the ability to choose different decoders (e.g. hardware
> or software) depending on the stream type would be nice.  If I have a
> decoder that can handle the extensions, I want to use it, even if a basic
> decoder will accept the stream.

AVCodecContext.sub_id sounds like a possible solution.  I had honestly
never even noticed that field before.  Are there any codecs which use
it?  If so, are the sub_id's defined in a public header or a
codec-specific header?

For AC3, the demuxer is raw, so it relies on the parser, which should be
able to tell the difference between the various types of streams
(normal, mixed, enhanced, whatever).  The decoder just reuses the
function from the parser to distinguish the stream type for each frame.

I can look into adding support for some of this stuff after E-AC3 has
made it completely into SVN.


More information about the ffmpeg-devel mailing list