Previous Entry Share Next Entry
on the ffmpeg Vorbis encoder
maikmerten now has all moving images content also available as Ogg Vorbis + Theora. This is great!

This was a massive reencoding effort and the details of what tools were used are available at

A setup to get the job done. However, after having had a closer look I discovered that the Vorbis encodings were done with e.g.

ffmpeg -y -i CapeCodMarsh.avi -vn -acodec vorbis -ac 2 -ab 128k -ar 44100 audio.ogg

Ooops. This means there's massive amount of content, encoded with libavcodec's Vorbis encoder. The only problem: That encoder is rather primitive and produces significantly inferior audio quality compared to libvorbis. And yup, the encodings sound rather unpleasant despite not starving on bitrate.

How I wished ffmpeg would loudly complain whenever using unfinished/experimental/not-state-of-the-art encoders.

  • 1

Vorbis stuff in Moonlight?

Someone mentioned that you might be interested in getting vorbis stuff into moonlight. Want to help? :) Some folks think it would be pointless, but I think it would promote more independent publishing of multimedia.

15:30 <@directhex> cj, something i thought might interest you
15:31 <@directhex> jms@osc-franzibald:~$ ldd /usr/lib/ | grep
15:31 <@directhex> => /usr/lib/
15:31 <@directhex> doesn't do anything useful, mind, since moon neither
                   supports ogg containers nor has codec mappings for theora etc
15:31 <@directhex> it's an unavoidable consequence of building against debbuntu
                   libavcodec to pull in libtheora
15:44 -!- spouliot_away is now known as spouliot
15:46 <@cj> directhex: any idea what needs to happen in order to add that
            support?  I don't know the first thing about how all that stuff
15:47 <@directhex> cj, well, the 2 things i said. moon would need its own ogg
                   demuxer, and for the appropriate codec mappings to exist.
                   the latter part is easy. the former, somewhat less so (and
                   probably not very useful in the grand scheme of things)
15:50 <@jeff__> I think there's a library for demuxing ogg
15:50 <@jeff__> I looked at some ogg.h a while back
15:51 <@jeff__> rpm -qf /usr/include/ogg/ogg.h
15:51 <@jeff__> libogg-devel-1.1.3-86.1
15:51 <@jeff__> that's the demuxer API afaik
15:52 <@jeff__> yep
15:52 <@jeff__> it is
15:53 <@jeff__> someone coul probably write a patch in a matter of hours
15:53 <@jeff__> using that lib, assuming it's available under a suitable license
15:53 <@jeff__> which I think it is
15:54 <@jeff__> of course, according to Roy - implementing ogg support in
                Moonlight "only helps Microsoft", but not doing it "helps
                Microsoft" - either way, we can't win according to him
15:54 <@jeff__> so I'm not inclined to bother humoring him by implementing it
15:54 <@jeff__> if it'd make him shutup, I would. but it won't
15:55 <@miguel> Morn!
15:57 <@kangaroo> jeff__: its a afternoon hack for sure
15:57 <@kangaroo> wrte a demuxer for our pipeline
15:57 <@kangaroo> and pass the rest to avcodec
15:57 <@jeff__> exactly
15:58 <@jeff__> trivial
15:58 <@kangaroo> but whats the fucking point
15:58 <@kangaroo> you'll never find a site with content you could use
15:58 <@jeff__> it'd just bloat the binary
15:58 <@kangaroo> exactly
15:58 <@kangaroo> Plus, it would expose us to patent liability
15:58 <@kangaroo> anyone who claims that Ogg isn't violating patents is a
15:58 <@kangaroo> actualyl I shouldn't say that
15:59 <@kangaroo> I should say its HIGHLY UNLIKELY that ogg/theora isn't
                  violating patents
15:59 <@kangaroo> media is a minefield
15:59 <@kangaroo> I think the MPEG-LA just doesn't care yet, since no one uses
16:01 <@kangaroo> but thats just my opinion
16:01 <@kangaroo> and patents are stupid
16:02 <@directhex> never said it wasn't stupid
16:02 <@directhex> :p
16:02 <@kangaroo> but
16:02 <@kangaroo> we accept patches! :)

Re: Vorbis stuff in Moonlight?

Well, it's highly unlikely I'll be able to deliver Ogg support for Moonlight - I'm a complete stranger to Moonlight's subsystems and quite frankly: I see Silverlight as a hostile effort by Microsoft to undermine the multi-vendor-open-standards ecosystem of the Web, so while *I applaud* Moonlight's mission to not let Unix/Linux user left out in the rain I think I'll only begin to fully appreciate that once/if Silverlight becomes unavoidable.

(I have the suspicion Microsoft will deliberately keep Internet Explorer pretty outdated in terms of new web standards (SVG, media elements) to make a case for Silverlight)

Note that I have a pretty similar dislike for Adobe's Flash.

Wow, that was vastly offtopic and had lots of tinfoil-hat-theories.

Anyway, having Ogg in Moonlight would still be a good thing - upping the Ogg-enabled-application-count is always a good thing.

As for the "anyone who claims that Ogg isn't violating patents is a lunatic": The "MPEG patents" are pretty specific and of course it's possible to do video coding in different ways (although you won't be able to create valid MPEG streams, of course). Companies like On2 make a living out of avoiding 3rd-party coding patents - and I bet MPEG-LA would love to sue On2 for VP3 (technological base for Theora) and VP6/VP7 (Flash video, JavaFX video) if their patent pool would enable them to do so and succeed.

We're convinced that Ogg codecs build upon technologies with patents long expired or upon general prior art. Theora's bitstream basically is a decade old and has been used commercially a long time ago (VP3) - plus quite frankly there's nothing in there that is really innovative. No bidirectional prediction. No support for interlacing. No quarter-pixel precision used in the motion-compensation. No fancy entropy coding, just old Huffman. It's hard to imagine a to-this-day valid patent claim.

What channel was this IRC log from, if I may ask?

Re: Vorbis stuff in Moonlight? #mono

Yeah, I feel the same way. I've been doing web development for a while, and having to deal with the proprietary Flash plug-in is a pain. At least with Moonlight I can poke at the code. Patents are too easy to misuse. Tinfoil-hat theories aren't always *entirely* off ;)

If you know anybody who's interested in adding Ogg support to Moonlight, let me (or the moon devs) know, and we'll help them get a dev environment all set up and ready for patching.

  • 1

Log in