Slashdot Mirror


The Future of Ogg Vorbis

Brett writes "The author of MAD, the fixed point MP3 decoder comments on what is wrong with Ogg Vorbis, with a response from jack, one of the founders of the format. "Ogg Vorbis may be the holy grail of patent-free audio compression, but there are some serious issues blocking its path to widespread acceptance. Unfortunately most of us are powerless to correct the situation; the problems must be addressed by Vorbis' creators. " The rest of the of the story is currently running on K5." And Jack's response is enlightening as well.

38 of 227 comments (clear)

  1. Emacs by zerosignal · · Score: 3, Funny
    Sorry for the rambling. Writing in this little box is a little difficult and is not nearly as much fun as Emacs :). If anyone has any questions regarding you can contact emmett@xiph.org or myself if I don't respond to here.
    Can someone please teach this guy how to use 'copy and paste'!
  2. Re:Fixed point MP3 decoder by mukund · · Score: 4, Informative

    Fractint was fast with integer operations, cause in those days, integer operations were traditionally much faster than floating point operations on the x86 platform.

    The fixed point implementation of Vorbis would be very useful for embedded hardware where floating point support is usually not available on its CPUs.

    --
    Banu
  3. Mentality by jeroenb · · Score: 4, Insightful

    From the Vorbis guy's response it's clear what the problem is: The idea is great, the plan is good, but the deliverables just take time to materialize. Nothing bad about that, it's true for practically every piece of software (or related, like the Ogg Vorbis specification.)

    Regardless of whether the author of the K5 piece is right about the points he discusses, the Ogg Vorbis creators should take his criticism to heart instead of dismissing it. It's not about whether all those points are valid, so trying to prove that they are not doesn't accomplish anything. They should understand that apparantly they have a problem communicating their plans to their possible supporters from the development community and that what they are doing apparantly makes a strange impression.

    They should be glad someone took the time to actually write this down and complain instead of just forgetting about their project and doing something else.

    1. Re:Mentality by phreak404 · · Score: 3

      Yea, I agree. MAD is easily the BEST software mpeg audio decoder currently available. Its quality is simply amazing, so I can't see why the OGG people wouldn't do what they could to help him implement the same for their format.

    2. Re:Mentality by Dominic_Mazzoni · · Score: 4, Interesting

      > How does MAD compare to mpg123 ? Is it much better?

      MAD is more portable, higher quality (outputs 24-bit samples instead of 16-bit samples if you want) and an order of magnitude faster.

      Is that good enough for you?

    3. Re:Mentality by iabervon · · Score: 3, Interesting

      Jack mentions that one of the implementations only plays files up through beta 4. That means that something changed at that point in the file format. In part, they didn't release a full specification, most likely, because then their later versions would break compatibility with it. It makes sense to only release an official specification with your version 1.0 release, where you have worked on it enough to believe that you can avoid breaking compatibility in the future. Similarly for getting standard bodies involved; there are plenty of things where there's a "official standard" that is not quite right, because not all issues had been resolved when the standard was made.

      Also, it seems like the Ogg Vorbis people will only write up a specification if they think anyone is interested in reading it. It's obviously a lot of work, and, if they didn't think their format would be implemented by other people, they would just work more on their own implementations instead. It's not particularly useful for people to complain about the lack of a specification (since they know it hasn't gotten done), although it is probably useful to hear that people still care.

  4. Barriers to acceptance by lushman · · Score: 5, Interesting

    I can see one main way for Ogg to gain widespread acceptance quickly - as the sound track of your run-of-the-mill, MPAA-angering DiVX. MP3 soundtracks only allow for 2 channels, whereas Ogg will allow for n. The main thing that pisses me off about DiVX is the lack of 5.1.

    Imagine how widespread Ogg would be if it was the favored soundtrack of the DiVX generation.

  5. Re:arrogance by Zachary+DeAquila · · Score: 5, Insightful

    Actually, I got the impression that the author was very frustrated at trying to do an independent 'from-spec' implementation of Ogg... which is impossible since there's no spec.

    Code defines an implementation, not a specification, and using code as a spec leads to 'bug compatible' further implementations (ie. Yeah, that's feature's done really poorly, but it has to in order to be compatible with the bug(s) in the original)
    This is ungood.

    --Z

  6. My iPod by Zo0ok · · Score: 5, Informative

    Sorry to say it, but I cannot use it on my iPod and with iTunes. I ripped my 125+ audio-cds to MP3 as when I got my iPod.

    I hate it when people comes up with this kind of reasons for not switching to a free format and making the world a better place... but now I do it myself. It is a pity. It is a shame.

    But maybe I am wrong? Has anyone installed Ogg in iTunes, and is there any chans to hack the iPod?

    1. Re:My iPod by foniksonik · · Score: 5, Informative

      There is Ogg for iTunes!!!!

      http://www.macosxhints.com/article.php?story=200 20 424233612407

      and more directly:

      http://qtcomponents.sourceforge.net/

      "This site is dedicated to open source QuickTime development for popular open source audio and video codecs. We are currently working on Ogg Vorbis, an audio codec developed by Xiphophorus, and MNG, an animation video codec.

      We have just begun the project, expect many changes over the next few weeks. We will offer a site for developers, as well as one for end-users interested in using our software. At the moment, some areas of our site are not yet implemented. "

      --
      A fool throws a stone into a well and a thousand sages can not remove it.
  7. Re:arrogance by Saint+Aardvark · · Score: 3, Insightful
    Hm, I didn't get that at all. The impression I had was of two people sitting on different sides of the issue, explaining things forcefully but respectfully. If the first guy (sorry, it's like 5.30am) had truly thought the worst of Xiph, he would've compared 'em to Microsoft, or announced he was reporting them to the FSF, or said that they poison wells and steal children.

    I thought they both had valid points. What really struck me (it's all about me :-) was that Xiph guy responded to his points. Compare and contrast with the guy from ... oh crap it's early ... Redmond Linux? the one who didn't have source for his Linux distro in the beta CDs. He ducked all attempts at answering the points that were raised against him, and just whined about the Linux community "eating its young" or some such. That left a bad taste in my mouth -- side step the questions, throw mud around -- whereas with this I came out w/respect for both people and both points of view.

    Of course, I could be wrong. I remember the last time it happened. It was a Monday...

  8. Not arrogance by yem · · Score: 3, Insightful

    Its not arrogance. We all want Ogg to be in wider use and to appear in portable players. From this discussion it is very clear that Ogg Vorbis is still very much in development and needs to be much more stable before anyone starts making software and hardware Ogg players. An incomplete specification and a reference implementation is not sufficient.

    I use madplay and I'd like to see a version for Ogg, but at this stage it doesn't seem like Xiph are ready for developers. As they say, wait for 1.0 final and the promised complete documentation.

    --
    No, I did not read the f***ing article!
  9. Re:The author of that article needs some cheese... by Zachary+DeAquila · · Score: 4, Insightful

    What kind of embedded system would have an Ogg player? How about a car stereo? Like, say.. an empeg? Which doesn't have a much in the way of CPU, including the fine lack of a floating point processor?

  10. wtf? by SuiteSisterMary · · Score: 5, Insightful
    In regards to the standards bodies, there are really two well known ones, the IETF and the W3C.
    Why, pray tell, would you try to submit an audio codec to the Internet Engineering Task Force, or the World Wide Web Consortium? Why not submit it to one of the 'really well known' and yet APPROPRIATE standards bodies?
    --
    Vintage computer games and RPG books available. Email me if you're interested.
    1. Re:wtf? by Explo · · Score: 3, Funny

      Why, pray tell, would you try to submit an audio codec to the Internet Engineering Task Force, or the World Wide Web Consortium? Why not submit it to one of the 'really well known' and yet APPROPRIATE standards bodies?


      Yes, they should submit to the Microsoft, the standards body that has done good work to correct Kerberos, HTML and several other standards from their initially flawed state;)

      --
      Everyone who makes generalizations should be shot.
    2. Re:wtf? by sharkey · · Score: 3, Funny

      Check the 'Presentation Layer' of the well known seven layer model.

      The Taco Bell 7-Layer model? The Presentation Layer is the Cheese, if I am not mistaken.

      --

      --
      "Outlook not so good." That magic 8-ball knows everything! I'll ask about Exchange Server next.
  11. Too bad my moderation points expired.. by Daniel · · Score: 4, Informative

    ..because I could correct the idiot who moderated this Interesting. Is there a "Misinformative" rating?

    Anyway, not to interrupt a fun GPL thread, but Ogg Vorbis is BSD-licensed precisely to encourage adoption.

    Daniel

    --
    Hurry up and jump on the individualist bandwagon!
  12. Re:Isn't the problem the GPL ? by Bartab · · Score: 3, Informative

    As open source Ogg Vorbis is released under the GPL/LGPL. However doesn't this prevent companies to integrate the sources into their software ?

    Except... Ogg Vorbis isn't released under the GPL/LGPL. The license is basically BSD in form, but different wording.

    To quote Jack, which wouldn't be necessary if you had read the linked message:

    It's actually Free-er than most Free Software in some ways, siince we chose to prioritize adoption rather than require everyone buy into the LGPL. In essence by giving up a few freedoms with the more lax license, we are preserving freedom because the world will adopt Ogg, the only audio codec right now of it's kind that can be freely implemented.

    --
    Any sufficiently advanced technology is indistinguishable from a rigged demo.
  13. multichannel divx by 2br02b · · Score: 3, Interesting

    Not really, divx only specifies the video format. You can plug in any sound codec you want to, including AC3. Here's a nice guide

  14. Re:Isn't the problem the GPL ? by rknop · · Score: 5, Informative

    As open source Ogg Vorbis is released under the GPL/LGPL. However doesn't this prevent companies to integrate the sources into their software ?

    This is wrong.

    The spec is public domain-- it's not well documented, evidently, but the format itself is public domain.

    The utilities are GPLed, so you have to distribute the source to anything that encompases them.

    The libraries themselves, however, are under BSD.

    See The Ogg Vorbis FAQ.

    -Rob

  15. Re:The author of that article needs some cheese... by PunchMonkey · · Score: 3, Interesting

    Honestly...what kind of embedded system would have an Ogg player in it? Your microwave? A candy dispenser?

    Seems silly now, but what if someone makes a talking microwave, or a talking candy dispenser. Compressing the audio files, even if it is just a voice, would save space.

    --
    I'll have something intelligent to add one of these days...
  16. Re:Isn't the problem the GPL ? by psamuels · · Score: 3, Informative
    As open source Ogg Vorbis is released under the GPL/LGPL. However doesn't this prevent companies to integrate the sources into their software ?

    Where did you hear that Ogg Vorbis [by which I assume you mean the reference implementation libraries] was released under the GPL/LGPL?

    The sample tools are GPL - but the libraries are under a license similar to the 3-clause [ie old] BSD. This is specifically to encourage widespread adoption of the standard. Think about it: if you want to add Ogg Vorbis support to your application or embedded box, you won't be borrowing the command-line tools, just the libraries.

    --
    "How can you claim that you are anti-crack, while still writing a window manager?" — Metacity README
  17. Most embedded systems don't have an FPU by pslam · · Score: 4, Insightful
    See my comment here.

    For example, I am not aware of any flash portable pocket player that has an FPU. That's because it's entirely possible to do MP3/WMA in integer. Nobody is going to fit an expensive and battery draining processor into their product just to support an extreme minority codec.

    By using floating point for the algorithms, libvorbis is ruled out from nearly all embedded devices. At the moment it pretty much only runs (in real time) on PC/Mac systems.

    1. Re:Most embedded systems don't have an FPU by Skuto · · Score: 5, Insightful

      >Nobody is going to fit an expensive and battery draining processor into their product just to support an extreme minority codec.

      >By using floating point for the algorithms, libvorbis is ruled out from nearly all embedded
      >devices. At the moment it pretty much only runs (in real time) on PC/Mac systems.

      The way you state this sounds like as if Vorbis can't be done with integer-only artihmetic, which is false.

      The reference implementation uses floats, because it makes the code easier to understand (that's what the article indirectly is about!), but there's no reason why you can't have integer decoders (and they already exist...)

      --
      GCP

    2. Re:Most embedded systems don't have an FPU by pslam · · Score: 3, Interesting
      The way you state this sounds like as if Vorbis can't be done with integer-only artihmetic, which is false.

      Sorry, didn't mean to have that impression come across. The main problem is that it's going to take a long time to rewrite all of the algorithms for integer. It's a shame really, because it would have taken just about as long to write it in integer in the first place. Floating point isn't the magic bullet everyone makes it out to be - it doesn't eliminate truncation and it certainly doesn't eliminate word size issues.

      Actually, I find DSP code written in integer easier to understand because you can see exactly where the author is taking care of those issues much more clearly. In floating point it's all a bit magic, and in most cases they just didn't realise what's actually going on.

      There's integer decoders for MP3 and WMA (and all sort of other codecs), so I agree there's no particular reason Vorbis couldn't be either. In fact, there are integer implementation of Vorbis - the trouble is Xiph want to sell them. Fair enough, but hardly anyone's going to buy it, and you've got to weigh that against the market penetration you'd get if it were free. Maybe they've got it right, but it still annoys me that, for example, I couldn't add Vorbis to an empeg car player because integer Vorbis isn't free, and I don't have the spare time to write an integer version.

  18. Re:The author of that article needs some cheese... by p3d0 · · Score: 3, Insightful
    Honestly...what kind of embedded system would have an Ogg player in it?
    How about a car stereo? How about a portable Nomad-type Vorbis player?
    --
    Patrick Doyle
    I mod down every jackass who puts his moderation policy in his sig. Oh, wait a sec....
  19. Too little, too late by NiftyNews · · Score: 4, Insightful

    The problem with OV is that it doesn't make enough of a jump in compression from its predecessor, the MP3 format.

    MP3s will continue to rein supreme, Iron Chef style, until someone releases a new compression algorythm that saves at least 10x more space. It is too much work to convince MOST people to use other forms of music compression when there is negligable savings (in quality and size) for the average user.

    1. Re:Too little, too late by shren · · Score: 3, Insightful

      until someone releases a new compression algorythm that saves at least 10x more space.

      An order of magnitude more space? Take an mp3 file, and turn it into one tenth as many bits at the same quality level? I doubt that's even possible.

      --
      Maybe the state's highest function is to grind out insoluble problems. (Zelazny, Hall of Mirrors)
  20. Reasons by moonboy · · Score: 5, Insightful


    • The name. Cool for geeks, but for the general public, it sounds funny. It gives no indication whatsoever about the product and what it's used for. Granted 'mp3' isn't much better, but that leads to the next point.
    • mp3 was "first to market". It is deeply entrenched .
    • Ogg may be better sound quality-wise, but for the majority of mp3 users, mp3's "sound good enough" and Ogg doesn't offer enough of an improvement for people to encode all of their stuff over again.
    • Yes Ogg is FREE but again, the average Joe could care less about Free or Open Source software.

    Sorry if I sound like I'm trolling. I'm not. I'm just being honest.
    --

    Co-founder and designer at Music Nearby: http://musicnearby.com
    1. Re:Reasons by Dephex+Twin · · Score: 3, Insightful

      Excellent points. I can ask any of my non-geek friends about Ogg Vorbis and almost guarantee they have no idea what it is. And you are absolutely right about "good enough"-- once they know what it is, they won't really care all that much. Heck, I'd guess even most geeks here don't have any plans in the near future to move everything over to Ogg.

      I think the best hope for Ogg Vorbis is if it is accept alongside MP3. So if every (hardware and software) MP3 player can play .ogg, any encoder/decoder can handle .ogg, etc. (or most of them at least), then people won't have to care about all the MP3 stuff they have going on already. It could eventually evolve to be that Ogg is the higher quality MP3.

      I think that is THE way to get Ogg in the mainstream. Make Ogg and MP3 exist together in perfect harmony.

      mark

      --

      If you want to make an apple pie from scratch, you must first create the universe. -- Carl Sagan
  21. Ogg Vorbis is in Winamp 2.80 by eddy · · Score: 5, Informative

    Personally I thought the news that Ogg Vorbis is now shipped with Winamp 2.80 was the news of they day. Any guess as to how many times over this will double the installed base of computers capable of playing Vorbis-files?

    --
    Belief is the currency of delusion.
  22. Somewhat offtopic remark by Skuto · · Score: 3, Interesting

    This is somewhat besides the point, but in case noone had noticed, the latest Winamp 2.80 ships with Vorbis support by default.

    This is very nice because:

    a) no more explaining how to install plugins to less-literate users

    b) it seems that the legal team of AOL considers Vorbis to be patent-safe (they looked into the matter, which is why this lasted so long)

    c) some of the WinAmp developers have become Vorbis freaks :)

    --
    GCP

  23. Re:The author of that article needs some cheese... by dr_connector · · Score: 4, Informative

    I totally agree. As the hardware developer on a portable mp3 player I can tell you that unless you want to use a hardware decoder (the MAS... chip) and get locked into a particular format (MP3) you're need an software implementation sans floating point. While it is possible to get embedded proc's with floating point capability, the price is simply not worth it in most cases. For instance an EP7312 with no floating point costs about $20, an EP9312 with floating point costs more like $50. Which is why small companies with a low budget like mine choose the cheaper proc's. We are totally open to supporting Ogg, but our first release will support MP3 only because we do have a free library that runs on our proc and runs on it well (well we pay 25 cents per player to Fraunhoffer, but I think that's entirely reasonable)

  24. How about you look up which CPUs they use? by pslam · · Score: 5, Informative
    I think I could answer that far more accurately (see my user info page). Guess what, most of the "good" MP3 players use ARM based CPUs:
    • empeg/Rio car player: StrongARM 220MHz, roughly equivalent to a Pentium 133 without FPU/MMX. Plays MP3s fine at a tiny fraction of CPU.
    • iPod - Portal player dual ARM-7 core 74MHz, roughly equivalent to a 486-100 without FPU/MMX.
    • Rio Receiver: Cirrus 7212 ARM7-TDMI 74MHz. Plays MP3/WMA.
    • Rio Central: StrongARM 220MHz. Plays MP3/WMA.

    They are decent processors - you can do MP3/WMA/Whatever without an FPU. Hell, you can play Quake on them at a reasonable speed. Same goes for Vorbis - it "just" needs an integer implementation, which is rather a large task that nobody in the public domain wants to take on, and no business wants to spend development time on.

  25. Here's how to gain widespread acceptance by DrXym · · Score: 3, Insightful
    If you want to see Ogg succeed then the easiest way is write a plugin for the "Copy Music" feature in windows media player. Media player uses the stinky WMA by default and has lousy MP3 support (on purpose). Write a plugin encoder/decoder for it and distribute it far and wide. And don't forget ask the user during installation if they want to make it the default.


    It would also help to lobby people like Winamp, LimeWire, WinMX etc. to include Ogg as a recognized format by default making it easier to locate and play music.

  26. Specifications more important than Implementation by inquis · · Score: 4, Insightful

    What I'm going to say is what software engineers already know.

    The specifications for software are much, much more important than your implementation. If the specifications are written completely and well, the design of said software project will "fall" from the specifications, and the implementation will "fall" from the design. "Specification" isn't something you can do after-the-fact; at best, you will have an incomplete specs document (because of developers who incompletely document their own code), and at worst you will have WRONG specs (because a developer makes an innocent typo that doesn't get caught).

    Sure, the ogg stream format and the vorbis audio format have been frozen for a year; however, code is not self-documenting. One of my wisest professors said that the only man he has known that writes self-documenting code is Knuth, and you might be a good hacker, but you are NOT Knuth. Every mortal man needs specifications and design documents to be able to make ANYTHING out of ANY piece of code; hell, I have some relatively simple Java apps I hacked together six months ago that would read like Greek if I didn't have my specs and my design documents.

    How can anyone expect to reasonably use an undocumented format?

  27. Re:Ogg is not finalized by Derkec · · Score: 3, Insightful

    Either way, it's generally a good idea to have spec done prior to completing your product. I know the hackers out there will balk at this simple minded engineer, but some people out there think that writing down what you're going to do before you do it, might be a decent way to get it done. But let's face it, writing specs isn't always the sexiest work.

  28. Re:JPEG vs GIF by big.ears · · Score: 3, Informative

    JPEG vs GIF is more like MP3 vs MIDI. (actually that's a reasonable analogy

    Here's a more reasonable isomorphism between audio and image formats:

    JPG :: mp3/ogg/etc. (lossy compression via removal of high frequencies)

    .gif/.png :: flac/lpac/shorten/etc. (lossless compression via huffman coding compression)

    .svg/.eps/etc. :: midi (lossless symbolic description of media primitives)