[Ffmpeg-devel] Re: Re: Re: [theora-dev] Theora encoding in FFmpeg

Roine Gustafsson roine
Tue Jan 2 00:17:08 CET 2007


On 2 Jan 2007, at 03:37, Paul Richards wrote:

> On 01/01/07, Rich Felker <dalias at aerifal.cx> wrote:
>> On Sun, Dec 31, 2006 at 08:09:54PM +0000, Paul Richards wrote:
>> > On 31/12/06, Michael Niedermayer <michaelni at gmx.at> wrote:
>> > >On Sun, Dec 31, 2006 at 05:56:11PM +0000, Paul Richards wrote:
>> > >> And on a deeper level..
>> > >>
>> > >> Why is all this special packing of the output from  
>> theora_encode_***()
>> > >> into the extradata required?  I naively assumed that any  
>> packing like
>> > >> this would be the responsibility of the muxer...
>> > >
>> > >no of course not, just think about this for a moment, should  
>> the avi muxer
>> > >contain code to repackage theora, vorbis, ... headers? then  
>> what about
>> > >matroska, nut, asf, mov, mp4, ... ? should every muxer contain  
>> (duplicated)
>> > >code to pack all the codec specific xiph headers into a single  
>> packet?
>> > >
>> > >and then after you duplicated that code in every muxer, you  
>> will have to
>> > >add code to every corresponding demuxer to undo it otherwise  
>> you cannot
>> > >copy a stream between 2 containers witout reencoding ...
>> > >
>> > >simply putting the (de)packaging code into the 2 or 3 xiph  
>> codecs is much
>> > >easier ...
>> > >
>> >
>> > In that case shouldn't there be a function in libtheora to  
>> concatenate
>> > all of the "extradata" packets together in a container-insensitive
>> > way?
>>
>> yes, there certainly should be. unfortunately the xiph people, in
>> their infinite wisdom, are outwardly hostile to container-insensitive
>> things and want to make their codecs as painful as possible to use
>> with non-ogg containers.
>>
>> btw, is there a reason you want to use theora so much? it's not a  
>> good
>> codec at all..
>>
>
> I have two reasons.
>
> 1)  I want to show some support for a patent-free video codec.

Theora is not patent free. All you have is on2's assurance that  
_they_ won't sue you.
There are literally thousands of video compression patents, many of  
which Theora no doubt infringes on. No codec is patent free.

> 2)  Theora was quite good in a few basic tests I ran here.  Compared
> against ffmpeg's "mpeg4" codec at 400kbit CBR, theora was clearly
> better.  Compared against ffmpeg's "h264" (libx264), there was no
> clear winner (part of the problem was that I couldn't get h264 to
> stick to CBR).

A correctly configured good MPEG4 codec is better than vp3. XviD  
might still hold an edge but ffmpeg's MPEG4 is as good as they come.  
It does need some parameter loving to excel though. And h.264 is  
several generations better than vp3.

Maybe ffmpeg should have an --preset like lame does? It's easier to  
write "--preset insane" than "-g 300 -bf 1 -mbd 2 -mbcmp satd -subcmp  
satd -cmp satd -mv4 -umv -qpel -trell ..."

   Roine





More information about the ffmpeg-devel mailing list