Slashdot Mirror


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."

14 of 399 comments (clear)

  1. The name is wrong by iriefrank · · Score: 5, Informative

    Not to be a smartass, but Ogg is just the name of the larger project. The actual audio compression format is called "Vorbis."

    1. Re:The name is wrong by Whyrph · · Score: 5, Funny

      They could've said "Ogg Vorbis", but they wanted to avoid superflous vorbisity.

      Yes, I know I spelled it wrong. And yes, you can beat me up. Here's the lunch money.

    2. Re:The name is wrong by LostCluster · · Score: 5, Insightful

      Well, true, but nobody ever says "MPEG Layer 3 Audio Only File" instead of just calling it "MP3". The tradition of having a three-letter file type extention usually sticks, and since Vorbis files are .ogg files, "Ogg" is the word that sticks.

  2. Huh? by Wyatt+Earp · · Score: 5, Insightful

    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?

    1. Re:Huh? by busonerd · · Score: 5, Informative

      Speaking as a member of the ipodlinux project, there is a lot of room for optimization. 80% of realtime refers to running a decoder and linux on only 1 of the two cores ( the other is only running a dma-engine) currently. One of the next big tasks is to put both cores to work (for technical reasons, smp is most likely impossible).

      As well, the story is wrong about storing their code in flash. Only the bootloader is stored in flash, which bootstraps the os from the harddrive into sdram, so flash or not, its a non-issue.

      --David Carne

  3. Exactly why would Apple add in... by HBI · · Score: 5, Insightful

    ...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.
  4. Why OGG? by Anonymous Coward · · Score: 5, Insightful

    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)?

    1. Re:Why OGG? by mcgroarty · · Score: 5, Insightful
      why in the world would anyone choose to get 75% performance with a negligable increase in sound quality (from headphones)?
      It's not really a linear scale from worse to better. Setting aside the dogmatic choices a lot of the free software people make, the compression artifacts and failures of the MPEG layer 3 and vorbis CODECs is fairly different.

      Even at higher bitrates, mp3 (or its encoders) tend to have a lot of difficulty producing tuned white noise, especially in harmony with better-formed sounds. A breathy voice or a flute can be murder to reproduce. There's also a kind of "glistening" that happens when it tries to represent overtones near the high end of the encoding frequency.

      On the other hand, vorbis seems to more often fail with balances of the frequency range, making some components of sounds louder and others softer than the original, especially with the earlier encoders. Sometimes this merely gives you a too-tuned and prounounced bass range while bands in higher frequencies become too soft. At other times, more complex instruments can lose their character altogether. Steel guitar strings lose the harsher-defined overtones and sound more like nylon, for example.

      Personal preference determines which kind of loss people will choose. Some even pick specific formats to best represent specific styles of music.

  5. Re:No call for...... by tuffy · · Score: 5, Informative
    Does OOG have much more memory requirements than other formats ? If so, why ?

    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.

  6. Re:Apple will not by mindstrm · · Score: 5, Informative

    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.

  7. *Why?* by adun · · Score: 5, Insightful

    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.

  8. mild Gizmodo rebuttal from Monty by xiphmont · · Score: 5, Informative
    I sent a mild rebuttal to Gizmodo about Hugo's article back when Gizmodo first ran it. As it hasn't appeared on Gizmodo, here's the text:

    Hi there; it's interesting to see one's software being talked about by others as if it fell from the sky :-)

    First off, the original iPod does indeed have the horsepower for Ogg; the original Tremor codec written in C used approximately 40MHz of a Cirrus Maverick (720TDMI), an ARM7 chip somewhat more underpowered than the chip in the iPod. What the Maverick often has that many other DSPs don't have is access to alot of memory. This was indeed a stumbling block for a while.

    Since then, we've made three mostly seperate branches of the Tremor codec line (used in the Rio), each tailored to specific CPU and memory structural differences found in different DSP architectures. Hugo Fiennes didn't mention which he was using... or if he was aware there are multiple different branches today (although I expect he is aware, it's worth mentioning).

    From the story:

    "The 5002 has a "broken" cache (1 wait state per access for program or data, meaning you effectively have half the effective clock rate when running code from external memory). 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."

    He didn't say if he meant code, data or both, but modern Tremor can fit both comfortably into this space. This is still substantially faster than the ARM7 DRAM-based access Tremor was originally designed for (using SRAM as a random-replacement cache with 7-14 wait-states on a cache miss).

    Also, he says it uses more power but also says they didn't optimize much and so, they're mostly using the stock ANSI C Tremor decoder, written by a single engineer (me) in a month as a 'starting point' to help other engineers write a Vorbis decoder for their own platforms. The mp3 playback is likely handcoded assembly written by a professional team focused on only that task. This is in fact astounding! It's also a testement to the power of good modern compilers. I smile every time GCC soundly beats me at optimizing.

    I agree that the newer iPods are more likely to decode Ogg and Vorbis with ease. I do, however, strongly believe the original iPods can also do so with room and cycles to spare.

    Monty
    TD, Xiph.Org

  9. iPod has more HP than Amiga, and Amiga can do Ogg by chaoskitty · · Score: 5, Interesting
    Amiga programmers (yes, I know Amiga's dead (long live Amiga!)) can get Ogg Vorbis playback in real time on a 50 MHz m68060. They can also get >10 fps out of the Quake 2 engine on an '060, too. Considering that the ARM is quite a bit faster, it can certainly be done if someone puts in the effort.

    John Klos
    Running Amigas for more than a decade.

  10. Re:RTFA, though you probably won't understand it by pchan- · · Score: 5, Informative
    So unless you're just another ignorant Apple fanboy, refute the guy's arguments.

    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...

    The 5002 has a "broken" cache (1 wait state per access for program or data, meaning you effectively have half the effective clock rate when running code from external memory). 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%+. This would be a bad user experience, considering the already short gen3 battery life.


    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.