Real-time HD video encoding on PS3?

Digital Foundry puts Cell to a serious test.

If there is one thing that is beyond doubt, it's that the raw computational power of the PlayStation 3's Cell CPU is something quite special. The architecture of the chip is somewhat unique - featuring a conventional PowerPC CPU core surrounded by eight ultra-fast satellite sub-processors (though one is disabled), each capable of some pretty phenomenal number-crunching. Just one of these SPUs can decode 300 MP3 files simultaneously in real time.

So long as the tasks fit the unique processing properties of the SPUs, in theory the chip should be capable of outperforming even the very latest in Intel i7 processing technology. Certainly, the Folding@Home client built into the Life With PlayStation software is clearly outperforming the equivalent multi-core Folding client available for PC (more on that a bit later).

So bearing in mind that video and video encoding is something I spend a lot of time doing (to the point where I constructed a second i7 workstation for encoding your HD vids so I can still continue working on other stuff), it was with some interest that I stumbled upon the CodecSys CE-10 h264 software. Dubbed as a consumer/prosumer-level h264 encoder, it runs from PC but with all the hard processing actually performed by the Cell chip in your PlayStation 3, which is connected to your computer via a conventional LAN cable.

It's actually not the first SPU-based encoder. Leadtek has its PCI Express-based SpursEngine card that works very quickly indeed using four SPUs, but doesn't appear to offer much in the way of quality compared to competitors, according to this review. The question is, can the CodecSys solution offer the speed increase we want from a solution like this, while still maintaining the quality? And secondly, does the whole package warrant the $200 price for the personal edition, or indeed the whopping great $2000 price for the professional version?

Well, it's fairly easy to find out as the developer, FixStars, offers a 14-day trial period of the full package, offering all the functionality of both versions of the software. Installation is easy. The program loads into your PC within moments and you simply put the PS3 code onto a USB flash drive, and point the OtherOS installer on the XMB towards it. You don't even need to partition your PS3 hard drive, even though the PS3 part of the package is based on the Yellow Dog Linux distribution. And with that, you are on your way.

First impressions of the options on offer are not massively encouraging. You're only given an average bitrate encoding profile, so just one pass then - not two, as is usually the case with most video encoders. The best way to encode video when you have a low bandwidth budget is via a minimum of two passes: the first is a general scan of the video to see which parts need the most data throughput, and which do not. The second pass then carries that out, giving the best picture quality with the available bandwidth budget. For a professional package to offer one-pass encoding only makes it very difficult to recommend straight off the bat.

That said, the speed is the key here, and make no mistake, CodecSys CE-10 can be stupendously fast. In my tests I found I could encode 720p at 35-40FPS, while 1080p came in at around 20-24FPS. That isn't exactly real-time, but it's still very, very fast. But speed counts for nothing in the greater scheme of things, if the quality of the encode you get out of the other end isn't particularly good. The freeware x264 encoder can pump out 1080p at a sustained 24FPS using just one core of a 3.0GHz Core 2 Duo if you turn off enough encoding features. Speed is important, but the whole point of h264 is that quality is king.

But CodecSys developer Fixstars reckons it's onto something special with its tech, as this press release says: "CodecSys utilises a patented, multi-codec approach in which a video stream is analysed and the codec best-suited for a particular frame or video sequence is automatically selected from an entire library of specialised codecs. By compressing video to under 3Mbps, CodecSys enables video providers to reduce their bandwidth needs by more than 50 per cent for HD quality and pack more video into less bandwidth."

Just the sort of claims I like as they are easily measured. Time for a quality showdown then, and everyone can check out the quality thanks to the glory of the Eurogamer HD player. I dug out my favourite stress test video - a short montage of Burnout Paradise clips, the same video I used for the infamous OnLive article, and used a 30FPS version for this comparison. It's worth pointing out that Fixstar itself has a number of samples on its website based on a couple of copyright free CG animated movies. However, generally speaking, these are easy to compress and offer little in the way of challenge to the encoder. Game video on the other hand can be far more of a worthwhile test: blurred images (e.g. out-of-focus background detail) are easy to compress but most games have a nigh-on infinite depth of field. Game video also has fast motion and is typically far more colourful: a combination that causes encoders lots of problems.

Comments (21) Latest comment 2 years ago

Comments threads automatically close after 30 days, but please feel free to continue chatting on the forum!

  • Monkey_Puncher #1 3 years ago

    Interesting!

    *yawns*
  • stevetuck #2 3 years ago

    Ok i cba to read all that... summary plx!

    edit: curse by bad speeling
    Edited by 1 at 21/07/09 @ 16:39
  • Psychotext #3 3 years ago

    I actually read the whole thing... really quite interesting. :)
  • Wolfman #4 3 years ago

    I would have thought that the quality of the video encoded is a function of how well the encoding software is written rather than which hardware it is running on. I see no reason why a decent encoder running on the CELL hardware cannot give you high quality video. At that point you can start comparing speeds to see whether its faster using the unusual architecture or whether it is faster on the PC. Until then comparison is pointless.

  • Bagpuss #5 3 years ago

    All that processing power held back by a 2005 class Nvidia PC gfx chip with a 128bit memory interface and 25Gb memory bandwidth....such a waste....

    Updated to a 2008/09 class gfx card like a Nvidia 260/280 or ATI 4850/4890 and and extra 512mb Ram, and the Ps3 could piss all over a £1500 PC.......
    Edited by 1 at 21/07/09 @ 17:02
  • Eighthours #6 3 years ago

    I understood much more of that than I would have done before I started reading Digital Foundry stuff, but I think it'd be great for Richard to write a "beginner's guide" for video compression gubbins that unpicks the jargon for us mere mortals.
  • Gurgeh #7 3 years ago

    "Is Cell really built for high-end quality-based encoding work? "

    Sort of, IBM envisioned it as a supercomputer building block. Better questions would be:

    "is Cell really built to be a games console processor" - answer: no, even though parts of it ended up in both the XBox 360 Xenon chip and even the Wii. It is, of course, pure coincidence that the IBM Cell processor guys were working next door to the IBM Xenon guys.

    "what the hell were Sony thinking of" - answer: debatable. Microsoft paid for Xenon to get away from being locked in to Intel, but Sony were fleeced for $400 million.
  • Pulsar_t #8 3 years ago

    Interesting article! I have to agree that the PC is still the most viable platform for processor cycle-intensive multimedia tasks. All those SPUs on the PS3 and there's only the Folding@Home project to make use of them. $200 for an encoder package can get you a very fast Intel/AMD CPU instead that would outperform the PS3.
  • Psychotext #9 3 years ago

    "I would have thought that the quality of the video encoded is a function of how well the encoding software is written rather than which hardware it is running on."

    The limitation here seems to be inadequate options to allow decent results.
  • Dizzy #10 3 years ago

    "Updated to a 2008/09 class gfx card like a Nvidia 260/280 or ATI 4850/4890 and and extra 512mb Ram, and the Ps3 could piss all over a £1500 PC....... "

    Not really. CPU of todays PC greatly outperform Cell for games. Hell even the 360 CPU does.
  • SwedBear #11 3 years ago

    Wouldn't it had been interesting to include some encoding programs that can use the GPU's? I'm thinking of Badaboom, Cyberlink MediaShow Expresso etc.?
  • SnakePlissken09 #12 3 years ago

    Yet another nail in the coffin for Microsoft shit console, when are they going to step up and admit that the xbox360 has hit it's peak and all they can do is piss-poor sequels. Ok Development is a lot harder for the PS3 but we haven't seen even half of what it's capable of.
  • ukgamer #13 3 years ago

    lol @ all the ps3 haters

    no other console has this much functionality. no other console lets you run custom code (legally at least).
  • Doctor_What #14 3 years ago

    @ SnakePlissken09 : I too prefer the PS3, mostly for the build quality and multi-functionality, but the 360 really isn't 'a piss poor console'. Try getting some perspective. Both systems have their strengths, and the relative ease of development for 360 is a major factor in its favor.
  • Alkeno #15 3 years ago

    This was interesting, but the results were of little use. The main point is that if you want good quality h264 encoding, then you need to use a PC because PC tools are suitable for the task and those using the Cell are not. As many said, it's a matter of software. Don't know what would happen if there was a more versatile, quality oriented software using the Cell SPU's.

    joe75, you could explain why this article is so wrong? Maybe the author is wrong and you know better, in that case please explain your point a little at least. Calling him "xbot" without further information is too rushed.
  • Flamebait #16 3 years ago

    video encoding? what about the ps3 trying to run crysis at 1080p full settings ;),that's what i thought..
  • menschenfracht #17 3 years ago

    @ Alkeno
    AFAIK, the Folding Home PS3, nvidia and PC clients can't be measured face t o face, because they all are given different kinds of tasks.

    [link url=ht tp://folding.stanford.edu/English/FAQ-PS3#ntoc14
    ]http://fo lding.stanford.edu/English/FAQ-...[/link]
    http://fo lding.stanford.edu/English/FAQ-...
  • Mar27w #18 3 years ago

    what the hell is all this geekspeak and what the hell does it have to do with playing gamers,incedently the PS3 main function
  • jellyhead #19 2 years ago

    Will the new Firmware 3.0 upgrade stop this working? It removes the ability to boot another OS from a USB Stick so does that make this product defunct on the PS3 now?
  • MinerWilly #20 2 years ago

    Didn't understand most of that but I'm glad I got a PS3 . Will get a 360 too one day .
  • zedzee #21 2 years ago

    I'm not an expert on this but, as someone mentioned earlier, doesn't it all depend on how decently written and optimised is the application, as well as the graphics controller?

    Since there's no INDUSTRY STANDARD benchmark that 'feeds' the data to be encoded (so that the same formulae and algorithms - from the same application are running on both the PC and the PS3) to both systems simultaneously from the same stream, using the same delivery mechanism and pipe width, then it will always be like comparing apples with oranges...surely!