Xiph.org Releases Free Fixed-Point Vorbis Decoder
volsung writes "A lot of us want portable music players with Vorbis support, right? Well, Xiph.org has decided to help speed the process by releasing their integerized Vorbis decoder, named "Tremor," under a BSD-like license. Tremor is a Vorbis decoding library written for CPUs without floating point hardware, like most handheld devices use. It was previously a proprietary library--licensed by theKompany for their Sharp Zaurus player, among others--but now it's available for everyone to use. The release page also gives contact information for many of the popular hardware manufacturers. If you want Vorbis support in your hardware, now is the time to send some emails! (Also, please say thanks to the Xiph.org crew with a donation if you can.)"
Woohoo, finally some *GOOD* news ... however, I thought most MP3 players used hardware decoders. Will they still benefit from this?
Now put them down and get writing to the manufacturing companies!
This was a big stumbling block in getting RIO & iPod type players to support Ogg.
Any idea if this means we can look forward to some Ogg lovin' built-in to consumer products? Timetable?
Thanks Xiph!
W
-------------------
This is my SIG. There are many like it, but this one is mine.
I was wondering if someone with more relevant knowledge than I might make an estimation about how much more quickly we might expect to see Ogg support now that this has happened. Are embedded chips without FPU really that much more prevalent, or are they just that much cheaper?
... listen to Howard Stern and then switch to music when it gets dull/commercials. Is this so complicated?
I also wanted to know, on a side note, why the hell portable mp3 players don't come with a damn FM tuner in them. Is it a design/form factor issue? Perceived marketability problem?
I want to use my mp3/ogg player while at the gym
As my father lik@(munch munch)...
This is good news, but without a big corp behind it I'm sceptical about whether hardware manufacturers will adopt it. What I'm more worried about now is Xiph themselves though. They've done a great job, and given us this fantastic gift, but now how do they make money? If the library was originally proprietary, then what do they have now?
and I believe OGG will achieved the same popularity and extension that it's other BSD Licensed bretheren enjoy. It's gotta be the freedom of the BSD license that encourages companys to pick up on this stuff, rather than re-inventing the wheel with yet another standard because they don't like a particular clause or so in the license..
Actually, Emmett says they were cool with it. None of the people who had licensed the code earlier have to pay any money from this point on, so they are pretty happy, actually.
Most embedded CPUs (and all the StrongARMs, IIRC) don't. Nothing unusual there -- needing an FPU is kinda' rare on a tiny system, and putting it in is inappropriate in such cases where size, power consumption and per-unit cost are at such premiums.
If you own a NEX II like I do, please write to frontier labs and let them know that you'd like an ogg decoder in their firmware and that it's even freely available for them to use now too!
Then we won't having to worry about that stupid mp3 licensing fee.
Go OGG Go!!!
P.S. Thanks xiph.org dudes!!!
AirSpeak - http://itunes.com/apps/AirSpeak
This is good for the public at large, but I'll bet theKompany feels like suckers for buying a license.
And I'll bet that this will make it more difficult for Vorbis to sell more licenses for other products down the road.
By "they still haven't released a complete specification for the file format, or the audio format", I assume you meant, "Back when Vorbis hit 1.0, I read the full specification and stopped spreading FUD", right?
Nearly every moderately priced handheld device I can think of does not have an FPU, so this isn't a limitation specific to the Zaurus.
Does anyone familar with this implementation have any idea how processor-heavy it is?
.ogg to flac at the server level. Or just to rip everything to flac (which requires a whole lot more disk space. :( )
I ask because people have played with an earlier floating point implementation on the Rio Receiver, and have found that it wasn't terribly usable. I'm a little short on details, but I think it was too intensive for the low-speed CPU in the receiver.
On the other hand, there has been work to build replacement clients for the Rio Receiver that use FLAC lossless compression, and that apparently works pretty well. So the current thinking is to transcode
Actually not at all. We didn't pay a big licensing fee for Tremor and this came about before we paid any royalties, so it works out just fine for us. We love Xiph and Ogg Vorbis and have lots more stuff coming along to continue working with them. We have a nice easy to use and multi-platform (later this week) ripper for Ogg Vorbis called tkcOggRipper which you can check out at www.thekompany.com/projects/tkcoggripper. We also have an entirely ogg based internet radio station coming online shortly at www.progrock.com - we ripped about 350 CD's using tkcOggRipper, and we have even more fun stuff ahead.
. com
Rock on Xiph and may Ogg Vorbis rule the day!
Shawn Gordon
President
theKompany.com
www.thekompany
The lack of a floating point processor in most mp3 players was a major technical problem with vendors adding ogg support to their hardware. Now that a non-fp codebase is available for the taking, this could very well mean the beginning of widespread ogg acceptance! My only concern would be the following: If was a company like Sony and I did some R&D to improve the quality of ogg files in order to give my products a competative edge over other brands, would I have to make those improvements open source?
/me raises a pint of Murph's and salutes Xiph.org. May MP3 die a fast, utterly shamefull and painfull death.
(B) + (D) + (B) + (D) = (K) + (&)
I know that everyone is down on the BSD and up on the GPL, but we owe a tremendous amount to the BSD license.. Companys (like microsoft) took up stuff like the TCP/IP stack, BIND, etc..
The BSD License is an excellent license for some things, just as the GPL is an excellent license for other things.
OggVorbis is one area where the BSD License makes perfect sense, namely, in an effort to get a published, open format implimented as widely as possible.
The GPL is an ideal license for persons and companies that wish to make their code available and participate in a public commons, without unconditionally handing their crown jewels over to a competitor. Indeed, there are many commercially written programs whose source code likely wouldn't have been released at all, or would have been released only under really onerous restrictions, such as Microsoft's so-called open license, Sun's community license, or something along those lines.
Both licenses are excellent. Both philosophies are a positive contribution to the intellectual wealth of humankind, and both have their place. Which one is most applicable to a given set of circumstances depends largely upon those circumstances and the goals in mind.
In this case, the goal is to spread the use of Ogg Vorbis as far and wide as possible, for which the BSD license is ideal. Indeed, even the FSF, which normally has strong reservations with regard to the BSD license, has endorsed the release of OggVorbis under the BSD license.
The Future of Human Evolution: Autonomy
My only concern would be the following: If was a company like Sony and I did some R&D to improve the quality of ogg files in order to give my products a competative edge over other brands, would I have to make those improvements open source?
RTFL:
Have there been any REAL double-blind tests as well as equipment tests of quality comparisons between MP3 and Ogg Vorbis yet? They never seem to get done. All the tests so far are of the form "Hey! My music sounds really l33t !!!!!"
Anybody know of some honest testing across a wide variety of music (particularly instrumental / classical / baroque) that is not just one person's subjective opinion?
Everyone seems to think that doing a lossy music compressor is just a "matter of cranking it out", but it's an extremely difficult problem. I'm not going to trust a bunch of amateurs until I see some real evidence that they know what they're doing. And no, "test it out yourself" is not an option. I have better things to do with my time, particularly since MP3 is free.
Sometimes it's best to just let stupid people be stupid.
Please tell Apple you want Ogg Vorbis support in the iPod.
Yes... yes there are... and the NEX-II could be the very first player to support Ogg/vorbis with this release if the company making it would get going quickly! (Hell a hack that replaces wma with ogg would be awesome!)
But the actual first player to use this and give you the first portable ogg player is going to be.... Archos Jukebox 6000, Archos Jukebox Studio and Archos Jukebox Recorder MP3 players.
and you cant watch it happen right here
Do not look at laser with remaining good eye.
I don't care about portables, it's my home system I'm curious about. XMMS I don't so much worry about, but I'm not going to replace hardware. What I have works for me, and if I have to use .mp3 with it, then I will, no matter what license the format has. I suspect a lot of people that have bought and are using MP3-only hardware feel and will act the same way, at least until that hardware gets replaced. mayeb what we need is for new hardware to decode both formats? I could see phasing in Vorbis decoders as being easily doable.
I really wish OGG would have been around (read: taken off) like in 1997...
-B
Ash and Hickory, straight-grained and true, make excellent bludgeons, dandy for the cudgeling of vegetarians.
Yawn, because it took so long for it to happen. Come on. Fixed point is not exactly difficult to deal with. Why didn't we see it sooner?
Why is this interesting? Hey moderators wake the heck up.
An 8051 is a trivial old-school 8-bit MCU that doesn't even have a fast enough clockrate to handle the throughput let alone the data itself. Not to mention it has one 8-bit register, 128 bytes of ram and virtually no support for DSP math.
Might as well have asked if you could implement it on a 4004 or something!
Tom
Someday, I'll have a real sig.
I'm not sure the proc in the archos can handel decoding of ogg in RT (the decoding af mp3 is done by a closed DSP, not the proc it self)
I hope it can..
He's just cranky because Thomson is doing its level best to kill MP3 so that they can replace it with MP3Pro, and along comes the Ogg format which is both better and cheaper (and now available on FP-less processors).
If Ogg really catches on, future hardware might not support MP3, and those folks with large MP3 collections will be in the same boat as people with large 8-track collections.
Strictly speaking, this isn't 'fixed-point' although it is all integer. It uses primarily fixed point, but in the deep S/N vector paths, it uses integerized movable point in a way that most embedded architectures can do the shifts for free during ALU load (eg, look at the ARM assembly for the shift/multiplies). Have a look at the Vorbis codec spec on xiph.org if you want to know why this is necessary.
Also, this code's been around for a while... we're releasing it for free now as commercial code has a short shelf life. It ran through it's commercial usefulness, and now we want it to be commodity code.
Monty
> Uh, no, seeing is that I haven't heard of Vorbis until now.
Mmm, this begs one of a few responses:
1) "Gee, you don't care. That's nice. You must be talking to hear yourself talk, then."
2) "Really? I'll tell you what Ogg is if you explain to me why I was supposed to get all excited about Jessica Simpson."
3) "[rolls eyes] Not need respond to rhetorical question, Grog."
4) "Quick! There's another parade to rain on over there! Hurry up, you'll miss it!"
Monty
"All in good fun until someone loses an eye. Then we're talking serious fun."
Wait... let me get this straight. You read /., and you haven't heard of Vorbis?
It's hard to be religious when certain people are never incinerated by bolts of lightning.
Start here: Hydrogen Audio
No, that's not us (Although we like them as they're likely the least bullshit-laden codec comparison and development bulletin board out there. These guys were *very* harsh about Vorbis's quality the first few years. That feedback was invaluable for making the codec as good as it is today.)
c't has also run tests including Vorbis, and will have a big test run on several thousand listeners to offer here sometime soon. It's basically a much larger version of the tests ff123 has run on Hydrogen Audio. We're not privy to any of the current results, but I expect we'll do just fine ;-)
As for 'cranking it out', Ogg development started in 1993.
Monty
yeah great how about a lib that is for the ARM arch
this is how the windows media gets in most players
then we are talking
Ipod - ARM7 based (with hardware layer 3 MPEG)
rio (new) - ARM7 based
empeg - StrongARM based
talk to cirrus and do a Lib that is ansi c and can be compiled with SDT 2.X and ADS
oh yeah and if it was MIPS based we would have no problems but hey here's wishing (-;
regards
John '64bit for ieee754' Jones
Yes, there will always be software MP3 decoders, they might even continue to compile with new compilers on modern operating systems. But if Ogg becomes the new standard and MP3 becomes a legacy format then MP3 enthusiasts will find it hard to find MP3 hardware. Your new stereo will understand the Ogg format, but not MP3, for example. If you only use your computer to listen to your MP3s, then you are safe, otherwise the future standard for digital music matters.
This is not the case with Vorbis. Xiph.org decided to charge for Tremor in the past, but there never was (and never will be) any restrictions on third-party encoders/decoders. Another person wrote a free integerized Vorbis decoder while Tremor was still proprietary, (though there were some concerns at the time about whether the decoder would produce output equivalent to the floating-point decoder). The Vorbis format is completely open and not hindered by patents, whereas Vorbis software can be licensed however the author wishes.
On May 04, Nicolas Pitre released a free (GPL) fixed point vorbis decoder and announced it on Vorbis Developement list.
But this important contribution was kept in silence. Even all posts from May 2002 had mysteriously dissapeared from Vorbis-dev archive.
Fortunately a copy of Nicolas announcement could be find here.
Now Xiph.org anounces that its fixed-point implementation is available for free under BSD style license.
This seems very strange to me.
MOD THE CHILD UP!
A question which could have been answered in 10 seconds by Google.
Is the original libvorbis faster (due to making productive use of the FPU), or is the new integer math one faster (because floating point is pretty slow in general)? I'd guess that libvorbis is better on Intel and tremor is better on non-Intel x86 (due to the relative strengths of different vendors), but it's hard to say. Has anyone actually benchmarked them? libvorbis is a noticeable load on one of the machiens I use, so it would be worth switching if it would help.
The original target for Tremor was a 74MHz Cirrus Maverick (ARM 7 TDMI core).
Monty
So admittedly this is a bit off topic, but, having been frustrated with my RCA lyra for 2 years now (esp. 'cause i got it as a gift so i feel bad selling it on ebay, but owning it makes it hard to justify buying a real player), i thought "schweet. soon i can get an ogg codec for it, and maybe it won't be like their proprietary brain-damaged MPX format which is like MP3 but 'unpiratable' and requires a particular CF device and software to load onto the card." Well, lyrazone.com has links for an mp3pro codec, wma, etc, but no mention of an ogg codec. Ok, it's a little early for that, it did just come out after all. But there's no way to contact them to inquire about ogg support, request it, etc. Not even in help. Not even in help help.
So the short story is, if i can prevent anyone from buying an rca lyra, please allow me to do so. Their product sucks, their customer service more, and i'll be surprised if they release a vorbis codec which could possibly redeem the lyra.
ok. done ranting. mod at will.
Actually, many hardware MP3 players use CPUs similar to this. All they have to do is pull data off an IDE bus and feed it to a MAS3057 MPEG decoder chip - not exactly tricky.
You're partially right, of course. You couldn't implement a software decoder on an 8051. Well, you could, just not in real-time.
Thank you, afidel, for trying to conduct some reasonably objective tests and posting the results.
In general, your point is sound, but in this case you picked a really bad example. With mp3, it's not even close: vorbis wins in a landslide, especially at low bitrates.
Just take literally any sound file and encode it at 64 kbps vorbis vs. 64 kbps mp3, and listen to it once. The double blind concept isn't even useful here because the mp3 sounds so much worse than the vorbis that anyone can instantly tell which is which, rendering the blind useless.
Whether the same holds at high bitrates, or with other formats, is a different question, one which is well served by a blind test. Others have already pointed out some links to such tests. But in many situations the advantages of vorbis, especially over mp3, are so obvious that the concept of blind testing is not even applicable.
Well gee, now I can do a port to the SM2496 module for the Visor. Oh, wait... Handspring has killed the Springboard market. Nevermind.
Remember Lexington Green!
Your post would in fact be informative if the link had pointed somewhere relevant.
The Hydrogen Audio link you gave just redirects to a message board at audio-illumination.org. Now I didn't go through every post with a magnifying glass or anything, but I did look around a bit, and didn't see any listening tests in any sort of prominent location. Care to comment?
"Mind, as manifested by the capacity to make choices, is to some extent present in every electron." -Freeman Dyson
No.
According to some documents I read about the Archos Jukebox devices over the last days, it seems that Ogg playback is impossible on them.
Why? They contain a CPU to do the graphics and some other stuff and a hard-programmed DSP that is doing MP3->Audio conversion.
Even if you would be able to use the fixed-point Ogg code, it would have to be re-converted to MP3 or the DSP won't be able to play it. It only plays MP3.
And have a look at the fixed-point code. It contains lots of tables. This is quite much of RAM requirement.
42. Easy. What is 32 + 8 + 2?
Heise was just doing this (German) at the moment (ended August 29th). Public double-blind test.
Featuring:
Watch out for results, which are being published (according to the web page) in c't magazine 19/2002 (out 2002-09-09).
42. Easy. What is 32 + 8 + 2?