[FFmpeg-devel] [PATCH] Add a parser for DNET (byte-swapped AC3).
Reimar Döffinger
Reimar.Doeffinger
Thu Mar 3 00:00:38 CET 2011
On 2 Mar 2011, at 23:43, Justin Ruggles <justin.ruggles at gmail.com> wrote:
> On 03/02/2011 05:18 PM, M?ns Rullg?rd wrote:
>
>> Reimar D?ffinger <Reimar.Doeffinger at gmx.de> writes:
>>
>>> On Wed, Mar 02, 2011 at 09:10:21PM +0000, M?ns Rullg?rd wrote:
>>>> Reimar D?ffinger <Reimar.Doeffinger at gmx.de> writes:
>>>>>> Then how did you intend to detect it as ac3 in the first place?
>>>>>
>>>>> By the fact that the RealMedia header says "DNET"?
>>>>
>>>> AC3 exists outside of realmedia file, you know...
>>>
>>> So what? Has anyone seen the byte-swapped variant outside a container?
>>> Either way libavformat has a better infrastructure to do this kind
>>> of format detection when it's hard to decide, a parser is not really
>>> such a great place for it.
>>
>> The parser can reasonably assume it is being fed AC3 data in some form
>> or other, so the difficulty of detection is irrelevant there.
>>
>>> Which, as said, is in addition to the fact whether there is a point
>>> at all of supporting byte-swapped raw AC3. It obviously exists
>>> in other containers, but already for that there seem to be no samples
>>> available, DNET is the only one actually common (and even that seems
>>> relative).
>>
>> AC3 in WAV is fairly common. I'm sure we have a few samples of that.
>>
>> All else aside, calling it DNET is ridiculous. It is called AC3
>> whatever container you wrap it in. We don't have a CODEC_ID_ for every
>> tag used in some obscure container, we have one per codec. Please keep
>> it that way.
>
>
> I agree. We can handle this in a different way.
>
> For example, I think it would be fine for the AC3 parser to detect byte
> order and then not accept switching byte order during parsing. This
> would mitigate the false positive probability increase for all but the
> first frame, which is ok with me.
Why would you want to do this? Making things difficult just for the heck of it or what?
There is _no_ AC3 decoder that even tries to do this.
Just to avoid a CODEC_ID? We do have one for each raw format, including differently swapped ones. And you would be ready to accept an error rate of 1:64000 just for that?
More information about the ffmpeg-devel
mailing list