[Ffmpeg-devel] Compilation with --enable-theora fails

Måns Rullgård mru
Thu May 12 00:57:38 CEST 2005


Rich Felker <dalias at aerifal.cx> writes:

> On Wed, May 11, 2005 at 09:31:40PM +0200, M?ns Rullg?rd wrote:
>> > How is it passing the header packets to the theora decoder? This MUST
>> > be done via extradata, not as fake non-frame codec packets (which is
>> > the way it's actually stored in the ogg file).
>> 
>> Of course I'm using extradata.
>> 
>> > See how it's done in ogg2's vorbis demuxing for an example,
>> 
>> I'm pretty familiar with that one, since I was the one who wrote it.
>
> Oops, sorry! I didn't know. :)

What?  Didn't you read the copyright header? ;-)

>> > (using int16 is stupid/limited).
>> 
>> Can the header packets ever be more than 64k?  I did it that way,
>
> Yes. The vorbis comment packet can be arbitrarily large. Imagine the
> case where some idiot stores a high-res jpeg cover image in here..

The comment header is only allowed to contain text strings with utf-8
encoding, so no jpegs there.

>> since that's what the libvorbis wrapper expects.  I'm not the one who
>> wrote that one.
>
> Let's not worry about blame, let's just fix it..

Think of it as more of an explanation than blame.

>> > We had a discussion on IRC last night about how to fix it (basically
>> > duplicating the vorbis header packing used as a defacto standard in
>> > Matroska) which someone will probably implement soon.
>> 
>> Since when are you advocating matroska?
>
> :)
> I don't like it, but I also don't like introducing multiple
> incompatible storage methods.

Fair enough.

> Also, the method used by Matroska for storing the vorbis headers is
> fairly harmonious with the the Xiph design,

Do we have any reason to like that?

> using ogg vlc (aka lace-coded) numbers for the lengths of the
> individual packets. It goes like:

I know how it goes.  I believe I also added vorbis support to the
libavformat matroska demuxer (as well as writing a completely separate
matroska demuxer).

> The last packet's length is omitted since it's implicit from the total
> extradata size. Note: this format is identical to a headerless OGG
> page iirc.

Yes, except that an ogg page has only one size field, or segment list
as they call it.

>> And before I'd consider anything related to matroska a de facto
>> standard, I'd want to see at least a few percent of the files in
>> the wild to be in matroska format.  So far, I have come across two
>> (2) matroska files, not counting sample files.
>
> Download anime.

Are you telling me to break the law?

> There are hundreds, probably thousands of files in Matroska
> format. Most of them have vorbis audio, although more and more are
> (stupidly) AAC instead now because of a myth that it compresses
> better. I can give you plenty of samples (first few megs of a file)
> if you want to see... Or just browse anidb.info to look at all the
> mkv files in the database.

Alright, I guess I just haven't been looking in the right places.

-- 
M?ns Rullg?rd
mru at inprovide.com





More information about the ffmpeg-devel mailing list