iPod May Not Have The Horsepower For Ogg [updated]
An anonymous reader writes "Gizmodo has an interview with a Rio engineer who speculates that current iPods may not have enough CPU power and/or memory to decode Ogg. He concludes that the Minis might be able to do it, and the next generation iPods will certainly be able to. Of course, just because Apple can doesn't mean it will." Update: 06/06 04:44 GMT by T : csm writes with this rebuttal: "According to Monty from Xiph.org (author of the Tremor codec and OGG itself), it should very well be possible to run Ogg on older generation iPods."
Not to be a smartass, but Ogg is just the name of the larger project. The actual audio compression format is called "Vorbis."
Developer time and support time, mainly.
The more important question: What do they have to gain?
An engineer for a company in direct competition with Apple rips on Apple's hardware. Oh, he's speculating on it.
"Engineer Hugo Fiennes took a break from his day job as a hardware and firmware designer at Rio Audio (maker of the iPod competitor Karma player, among other things)"
That's news?
What's next, someone at Microsoft doesn't like Aqua? Ford engineer says Corvette "not as good as new Mustang"? Fiat engineers doesn't care for Ford Focus?
...a standard that doesn't have a lot of real-world support? I mean, if you go onto one of the p2p systems, you find that everything is still pretty much mp3. So there is some incentive there for Apple to provide mp3 support. Why would they want to promote an alternative standard that they aren't selling, though?
Seems to me that Apple wouldn't benefit much from ogg or flac support. So why bother - besides, the article makes it clear that the processor in the older ipods probably won't even support the decoding of ogg due to cpu limitations.
Barking up the wrong tree here, sadly. Ogg has to get some critical mass before Apple would even consider it.
HBI's Law: Frequency of calling others Nazis is directly correlated with the likelihood of the accuser being Communist.
Adding OGG support would be more than enough to convince me to buy an iPod. I can't really see the downside except for increased strain on the system memory, if what the article claims is true.
On
http://www.designchain.com/coverstory.asp?issue=su mmer02
... that article is almost 2 years old now?
Nothing new folks
Sunny Dubey
This article indicates precisely why OGG Vorbis probably isn't a good idea on your ipod or mp3 player... namely, you get 25% LESS battery life. In a non portable, that's fine, but for a portable player with limited battery life... why in the world would anyone choose to get 75% performance with a negligable increase in sound quality (from headphones)?
I thought that the Linux on iPod project managed to get Ogg playback working ?
Sure - it may not be at 100 percent realtime, but I bet Apple engineers (vs the noble folks who had to reverse engineer the iPod) could manage.
Vorbis is a better codec at sticking more audio data in less space due to the years of research between itself and MPEG-1. But decoding that data doesn't come for free, and so Vorbis decoding is more memory and CPU intensive than mp3 is. But thanks to the integer decoder, that difference mainly shows up in high bitrate Vorbis files.
Ita erat quando hic adveni.
By your logic, Apple does not need to support itself because Windows users, in general, have no need for it.
Why don't you try running a successful large company and get a feel for not being a producer, not a consumer?
[...] This means that running code that doesn't fit in the internal 96kbyte SRAM of the player is very inefficient, both in terms of CPU cycles and power. MP3 and AAC just about squeeze into the internal memory (one at a time, obviously!), but anything that didn't would result in a big power hit - my guess is 30-40%+.
Surely only code in external RAM would incur this hit. Vorbis decoders spend most of their time doing discrete cosine transforms, which would easily fit into 96K. As would a lot of other performance-critical routines, I'd imagine. So we're talking about a 40% hit on 5% of execution time, which seems pretty trivial, right? Or am I missing something?
There's no reason why they couldn't put the FairPlay wrapper around Ogg Vorbis files the same way they do around Advanced Audio Codec files now.
However, MPEG formats have always been mindful of keeping the decoding processing load low, even if that sometimes comes at the expense of encoding time or quality. The idea is that they want to keep the playback devices as cheap as possible.
Apparently OGG sounds better, but its processor load is putting it out of reach of dumber consumer devices.
AAC and MP3 do not have DRM either.. the DRM layer was added for the iTunes music STORE, which is a recent addition.... people bought ipods LONG before the iTMS existed.....
Why do people insist on thinking that ipods and itunes are all just about the store? The majority of ipod owners DONT use the store.
Memory isn't a problem. The full of the iPod's memory is directly addressable, and there are even projects (including iPod Linux) which do Ogg (vorbis, really) decoding, however only at low bitrates. The CPU speed is the strangling factor here. If someone wants to do some hard work, they might be able to raise the bitrate a bit, but owing to people generally relying on VBR encodes, it's going to be difficult to fully enable people's libraries, even when they think they have mostly low-bitrate tunes.
Is it just me or is Ogg becoming quite popular - as a movie format? I've seen lots of .ogm files on Suprnova.
iPod support for Vorbis would be cool.
What I would truly love would be iPod support for Ogg Speex. I download quite a few audio lectures/interviews, and if the iPod supported Speex, I'd buy one ASAP and go on a campaign to get a few organizations I deal with to put their stuff out in Speex, not just mp3 and wma. For that matter, I'd love to be able to encode my audio books in Speex and have then on the go.
Forget the ipod, the Rio Karma is wonderful from a GNU/Linux users perspective!
It plays all my ogg files without problems (a friends iriver could only handle lower bitrate ogg files).
I could upload music to it quickly and easily from my linux desktop using their java gui and connecting to the rio karma across my lan.
As I use this player to drive my car speakers (I only have an amp, no head unit), it was very important that the interface be user friendly. This is where I had seen the ipod shine, and where I was doubtful about getting the rio karma (as I knew no owners of one and had not seen a showroom model). However I (and several passengers) found the rio karma interface to be as friendly, if not more so, than the ipod.
The rio karma was cheaper than the ipod, has more features, and is more cross platform. I have no regrets and strongly recomend it to music fans.
donfede
Seriously, who cares about Vorbis outside the faction of *nix users with +1 Amulets of OSS Awe?
Apple's primary market are the throngs of not-quite-but-almost-technologically-literate end users out there who see gadgets as tools, not lifestyles. Does this afforementioned throng care about Vorbis? No. Should Apple therefore care about Vorbis? No.
Get the fuck over it, already.
Most codecs are designed to simply give the best audio per kilobyte, and recent tests point to (a retuning of) Ogg Vorbis as near the top of the heap. It's certainly achieved what it set out to do: a Free audio codec with fairly wide acceptance that sounds better than mp3/wma under most circumstances.
Vorbis, of course, takes much more CPU muscle to decode than mp3. The difference may be between 0.1% and 1% of my Athlon XP[1], but obviously on an iPod it matters.
Maybe it's time for some group to look at weak-CPU audio codecs? You've got to balance audio-quality-per-bitrate with expense (and power consumption!) of CPU required to decode in realtime.
There's got to be something out there that sounds better than mp3 but can still be decoded with a cheap processor using an amount of power that's not really significant compared to the amplification/transmission circuitry required to get the signal out of the device.
Ideally this could be done on the decode side: write a codec that produces Vorbis-quality results when decoded by a fast CPU, but that could be decoded by a slow processor to produce a good-enough signal. This would solve the current dilemma: do I encode in vorbis to save disk space/get better quality, or mp3 to play stuff on portables?
[1]What a stupid name for a processor.
John Klos
Running Amigas for more than a decade.
Let us assume that it really is a CPU horsepower vs. file size vs. sound quality issue.
Looking at two extremes:
Realaudio files used to play justfine, Back In The Day, on a slowish 486. It sounded like shit, but it worked fine. Of course, this same 486 was incapable of playing MP3s. For that, you generally needed a Pentium, and preferably a fast(ish) one.
And of course, these days, it just doesn't matter. MP3 playing consumes so little CPU time that nobody gives a thought to it running in the background. In other words, the hardware finally caught up (some time ago, really).
Fast forward, and things are the same, only portable. MP3 files play justfine, on just about everything. My old Riovolt SP-250, after a lot of effort from the Xiph folks and iRiver, is able to play some Vorbis without a hiccup.
Newer units play all Vorbis justfine, though. They use even less power doing it, and cost less than my SP-250 did. In other words, the hardware is already caught up.
Sufficient CPU power to play such new-ish formats as Vorbis will eventually creep into more products as the cost of CPU power decreases (eg. Moore's Law).
I'd like to forecast that it'll be easier, cheaper, faster, and better to simply wait for CPU power to catch up across the board, than to go ahead and invent a scalable codec. By the time you're done making the thing, no matter how brilliant it is, CPUs and DSPs will have advanced the price/performance ratio sufficiently that your efforts will fade into obscurity, just like intel's indeo video format[1] of more than a decade ago.
Meanwhile, any foolish manufacturers or software developers who jumped on your scalable codec-bandwagon will watch their efforts fizzle and die, as people regroup to support formats that Don't Suck, like our existing OGG Vorbis.
That said, if you must tinker with software, do feel free to help improve Vorbis. Make it faster, make it smaller. Make it shit golden eggs, whatever. But don't reinvent the wheel without first examining where the rest of the world will be by the time you get done.
[1]: indeo was created as a high-ish quality, high-bitrate video format, designed to be encoded once and played anywhere. Framerate and quality would drop on low-end devices, while things would be more pristine on faster machines, all from the same source file. It died a quiet death when inevitable increases CPU speed made it a non-issue. Subsequently, better and more-intensive codecs like MPEG1 took over. The near-universal playability, and use, of the previously-hideously-intensive DivX family of codecs drive this point home.
Kid-proof tablet..
The sentence in the article about ogg's battery life is very misleading. Yes, it is true that "you get about 25% less battery life" on ogg vs. mp3. However this comparison is done at the same bitrate -- that is to say, 128 kbps ogg will only have 75% the battery life of 128 kbps mp3.
But, what the quote doesn't take into account is that nobody uses oggs and mp3s at the same bitrate. I for one find that ogg can match mp3 in sound quality at about 60% of the bitrate. When you use a smaller bitrate, battery life goes up, because your hard drive activity is less. My firsthand experience is that you can get 15 hrs of continuous ogg playback on the karma, if you use a lower bitrate like 64 or 72 kbps. Also, you will note that even if we hypothetically penalized this real-world measurement of 15 hours by a theoretical 25%, it would still be better battery life than an iPod.
As to your dismissal of headphone sound quality, there are a great many headphones that are good enough to tell the difference. Even without good headphones, 72 kbps mp3 is so bad that anyone who is running out of disk space on their portable can easily justify the switch to vorbis.
The codec is independent of the DRM, and the files generated by Apple's lossless encoder are AAC lossless files with no DRM. Thank you for demonstrating that you have no idea what you're talking about.
Please send a me $1000 dollar check.
okay, i will refute the guy's arguments. i am an embedded systems developer, and often deal with swapping code in from dram/flash to sram for quick execution just such as this. the guy's arguments are, well...
first, the cache is not broken. this is a common design limitation of embedded processors. running code or accessing data from external ram can be VERY slow (1 cycle delay is pretty good). however, his argument is bullshit. the support code for the codec is usually run from dram (like the "open a file, parse a bitstream part"). the core decoder loop, on the other hand, is loaded into sram for fast execution (code and data). if the ogg vorbis decoder can be squeezed into whatever apple has left of the 96kb depends mostly on the efficiency of apple's memory allocation. but i have no doubt that they could do it (they may need to optimize some tables out by computing them at runtime, and other such tricks).
having said that... adding a complex codec into such a system such as the ipod firmware is a major pain in the ass. they may want to enable vorbis support, but it is a large amount of work, and probably hard for apple engineers to justify. if someone could find a good excuse for apple marketing to justify it, i'm sure engineering could figure it out.