Badaboom: A Full Test of Elemental's GPU Accelerated H.264 Transcoder
by Anand Lal Shimpi on August 18, 2008 12:00 AM EST- Posted in
- GPUs
Final Words
I hate to be so negative about a product like Badaboom because it holds so much potential, unfortunately it just left me disappointed. There’s no way to set custom resolutions, there’s a 5Mbps bitrate cap, there’s no support for Main/High H.264 profiles, there’s no support for Dolby Digital/DTS audio, you can't convert Blu-ray movies, DivX support is flaky at best and there are output issues with some DVD titles.
For the first GPU-accelerated video transcoding application written in CUDA I expected much more from Badaboom. A simple user interface is great, but it lacks the power and customization behind it. NVIDIA has a year before Larrabee hits and you can be sure that Intel will leverage its relationships with the major codec developers (DivX anyone?) to ensure that there’s full Larrabee support right away.
The performance expectations are also interesting. Just as the 8800 GT is pretty much the minimum requirement for decent, speedy gaming in the latest titles, that ends up being the minimum requirement for solid transcoding performance. The GeForce 9500 GT and slower are only really upgrades if you have a slow dual-core CPU, the quad-core offerings are faster than any of NVIDIA's lower end GPUs. The 8800 GT, 9800 GTX and GTX 200 class of products all offer somewhere in the 2 - 4x range of a performance improvement over Intel's quad-core CPUs. While eight-core Nehalems will help close that gap, it's clear that GPUs are much more energy efficient for video transcoding.
NVIDIA needs to do more with companies like Elemental to make sure that launches like this don’t happen. Badaboom held so much promise but disappoints as it is nothing more than a quick way of getting some videos onto your MP3 player or game console without terrible concern for quality or features.
It takes users 10 - 30 hours to transcode an entire Blu-ray movie at the best quality settings on some of the fastest Intel CPUs, that’s where we need GPU acceleration. Target the top and trickle down to address the rest of the market, it’s the NVIDIA approach and it’s one that Elemental doesn’t embrace with Badaboom. This application is reasonable, at best, for the mainstream and does nothing for those serious about transcoding video.
Fix the compatibility problems, fix the crashes, fix the frame rate output issues and then we’ll have a decent app for the mainstream user just looking to put content on their iPhone/iPod. For an app that promises to fix the issue of video codec compatibility, it sure does a poor job of making sure that it itself is compatible with even the codecs it is supposed to support.
AMD has its own response to Badaboom coming before the end of the year. Cyberlink's PowerDirector is supposed to enable GPU accelerated video transcode, but it's a sad day when a video enthusiast has to look to Cyberlink to save the day. What both AMD and NVIDIA need to do is help the open source community and existing codec developers include GPU acceleration in their software today.
I want a CUDA enabled version of x264 or of the MainConcept H.264 encoder. While it's admirable that companies like Elemental would attempt their own codec and front end, there are better alternatives out there today.
There's clearly potential for GPU-accelerated H.264 video encoding, but the first attempt was honestly a bust. Let's hope Elemental or someone else gets it right for round two...
38 Comments
View All Comments
JarredWalton - Monday, August 18, 2008 - link
Wait... did you just talk about clean code and Cyberlink with a straight face!? I think every new version of PowerDVD gets worse, and I've had way too many difficulties with Blu-ray playback and their software (especially the OEM bundled version). Still, maybe they'll get it right with the ATI transcoding. And maybe I'll win the lottery.... :-)prodystopian - Monday, August 18, 2008 - link
Mike Lowry: ...It's a Limited Edition.Marcus Burnett: You d*mn right it's limited. No cup holder, no back seat...
Yes, I registered to post this.
Anand Lal Shimpi - Tuesday, August 19, 2008 - link
ahh, I love that movie. Too bad the sequel was such a letdown.10 points to you my friend :)
-A
Manabu - Monday, August 18, 2008 - link
You used too slow profiles. Acording to the handbrake site (http://trac.handbrake.fr/wiki/BuiltInPresets)">http://trac.handbrake.fr/wiki/BuiltInPresets), the Blind profile should be 4 times faster than the iPhone profile used here. Then, an quadcore leaves the GTX 280 smoking behind. The quality should be then comparable.Further discussion of this new encoder, inclusive by x264 developers: http://forum.doom9.org/showthread.php?t=136847">http://forum.doom9.org/showthread.php?t=136847
mongoosesRawesome - Tuesday, August 19, 2008 - link
Anand compares an x264 setting that is higher quality than badaboom's. He should have stopped right there, but instead he publishes numbers that show that badaboom is faster.You can't compare speeds if they aren't of similar quality!
thebackwash - Monday, August 18, 2008 - link
I must admit I never understood the consumer desire for anything more than reasonable multimedia encoding times. If I buy a new movie, and want to rip it to my computer, I only have to do it *once.* To some, any speedup they can get is well worth the price, but I honestly don't care how long it takes, as long as it's less than, say overnight, or even overnight plus whatever extra time it needs until I get home from work the next day.I understand the desire for faster computation of tasks that involve a lot of user interaction: games, web browsing, office applications, and basically the whole lot of interactive GUI-driven programs, but I never saw the draw of blazingly fast set-it-and-forget-it type computations. I can leave the computer on overnight to perform a task if need be. I personally care about quality, and whether the file can be played back in real time on the target platform. File size is important, too, but with 1TB hard drives coming in at about $125, that has started to matter a lot less.
While I *do* understand why this could provide enormous benefit to professionals working with video, any consumer of DVD movies or amateur videographer should be more than happy with what we have now. I don't see the outcry for faster word processors, and that's because computers perform that function well enough to be usable by consumers or amateurs for whom time is *not* money when it comes to using their computers.
I must admit though, I can take a chill pill and leave the computer for days at a time, as long as my RSS reader catches the daily web updates, so I might not be the average reader of tech sites.
(Once it took my old iBook *ten* days to compile KDE 3.5 from source!)
icrf - Monday, August 18, 2008 - link
Well, transcoding to a master high quality copy for long term storage, maybe. But when you want to take those with you on a portable device, you have to transcode. I'm not a fan of having multiple copies of things, despite the cost of hard drives, so I'd much rather a way to speedily convert that for me.My problem is I want to convert in bulk, which means either a nice job manager in your GUI, or a documented CLI for the app.
LTG - Monday, August 18, 2008 - link
Does it support 2-pass encoding?Does it encode uncompressed AVI?
Did they say if Main profile is coming, or if it's stuck like that?
Anand Lal Shimpi - Tuesday, August 19, 2008 - link
There are no options to control the number of passes the encoder does, this is simply a single-pass transcode that can happen in greater than real time depending on your GPU.Depending on the format of the video stream it may be able to support it.
Elemental is considering adding Main profile support to Badaboom, but right now it's reserved for the Premier plugin.
-A
erikejw - Monday, August 18, 2008 - link
Good article otherwise.If you gonna sit all day and code 100 movies or whatever this is the appropriate way to calculate energy consumption.
If not you have to include the extra seconds when your computer sit idle and the cpu transcode finishes.
This is how they do when they calculate server energy consumptin.
It is not like the computer instantly go down to 0 w when the coding is done.