GPU Transcoding Throwdown: Elemental's Badaboom vs. AMD's Avivo Video Converter
by Anand Lal Shimpi & Derek Wilson on December 15, 2008 3:00 PM EST- Posted in
- GPUs
And now, the rest of the story
To say that the output quality is bad would be entirely too generous. Rather than just take our word for it, here are some screenshots of the video. The actual video is worse as the corruption and anomalies change over time as well, but this is enough to show the problems.
This is the 64-bit version of Avivo encoding WMV files:
Our highest quality output video was S02E01 of MacGyver which lacked any deinterlacing.
Bad Boys delivered the second best output with massive corruption frequently occurring.
The Empire Strikes Back with completely unwatchable video that is nothing but completely corrupted and can even crash a player.
The 32-bit version has fewer problems. Codec choice didn't seem to fix corruption on the 64-bit version, but under the 32-bit version we were able to get cleaner output encoding to WMV (but not iPod (H.264) which remained corrupted).
Here's the Empire shot from the video encoded to WMV under Vista 32. Looks better.
MacGyver is unchanged in quality with the interlacing still a major problem, but at least some of the corruption issues are fixed for those running 32-bit Vista.
Our goal was to test the case where an end user may want to encode DVDs for use on their iPod, as this would allow us to more easily compare the software to Badaboom. Comparing quality comes out well in favor of NVIDIA on either the 64-bit or 32-bit version of Avivo when encoding to iPod video, so this makes any performance comparison much more difficult. We can't honestly directly compare the two software packages because of the major difference in the quality of output they generate.
To further illustrate the point I uploaded a segment to Viddler, but the further conversion to a flash video greatly improved quality. Some of the corruption is still there, but lost is the choppiness and other motion issues as well as the fact that every second or two we get a frame that looks like this thrown in:
It ain't easy being green.
Anyway, here's video clip. Yes, it also encoded with no sound, which is apparently also a feature of the Avivo video converter with some video formats.
We did also try using other sources to transcode from with Avivo, but our attempt to use H.264, DivX, or WMV sources all failed with different results. Some had video with no sound, some had only sound and no video, and some just gave us an error saying the file wasn't a valid movie and it wouldn't even try to transcode it.
And since when is video transcoding not a deterministic process? While working with our Star Wars clip, we noticed that our files weren't all the same size. Our first thought was that maybe when running on different video cards the transcoder operated differently. But after extended testing, we discovered that we don't always get the same output even if nothing changes. Not only do two different cards not output the same data, but one card isn't guaranteed to give you the same result from run to run.
This, on top of all the other issues, makes any performance comparison moot. But we ran the numbers anyway. And here's what we got:
This is a roughly 18 minute section of The Empire Strikes Back that took between 38 and 43 seconds to encode, and we recorded the first run. Subsequent runs came out between 38 and 43 seconds for all the cards. Regardless of which video card we plug in, performance is the same (and this is despite the output not even being the same). This honestly seems to indicate that not much is happening on the GPU. All the variables change with this hardware and nothing is the same width or clock speed from top to bottom.
We used GPU-Z to test utilization and saw that every 4 seconds or so during the encode process, we would see a blip of about 15% utilization on the GPU then it would immediately fall back down to zero. This means that AMD is using the GPU for very very little and most of the performance of the encoder is coming from the Core i7 processor we've got in there. To test our theory, we ran the processor underclocked at 2.6 GHz to see what happened to performance. Performance dropped from between 38 and 43 seconds per run to 56 to 60 seconds per run. This indicates that the performance of Avivo is incredibly CPU bound.
We can see from looking at the task manager during the transcode that there are about three threads that are pretty hard on the CPU. No matter what CPU speed we were running, one core was always pegged. Two other cores sat at over 50% utilization on the 3.2GHz Core i7. Overall utilization hovered between 30 and 40 percent for the most part. When we decreased the clock speed, all three threads ended up pegging their assigned cores at different times, which could indicate the much larger than 25% performance improvement in moving to higher speeds (the change from 2.6GHz to 3.2GHz is just over 23%).
So, we've got a transcoder that doesn't produce watchable output in many cases, doesn't produce consistent output, and doesn't vary in performance with GPU hardware (meaning it doesn't use the GPU very much at all). It doesn't handle incorrect interlacing flags gracefully and there is no option to force deinterlacing. But that's minor compared to the rest of the problems we are seeing here.
36 Comments
View All Comments
mediaconvert - Wednesday, January 28, 2009 - link
I record a lot of tele on my computer and am always wanting faster ways to convert and compress my videos. When I heard about ati producing an equivilant of badaboom I was really excited and thought I could finally justify spending £150+ on a graphics card especially when it would be faster than the cpu. I have a ati 3450 and man was I dissapointed. I tried to compress a 120mb mpeg2 file and ended up with a 150 mb file. Also if the reviews are right it doesn't use the gpu. whats the point in having a gpu converter that doesn't use the gpu??? I can only speak for myself but if amd/ati comes out with a serious way of quickly converting/compressing the mpeg2 files (perhaps also with a batch processing mode) then they have a sale here especially if it allows me to play the latest video games.Currently I have been looking at video cards and I have to say there are two things pushing me to nvidia one is badaboom and the other nvidias hybridpower (use of an nvidia motherboard integrated graphics to reduce gpu usage and hence gpu fan noise when gpu is not needed)
I recon ati/amd needs to get creative here and really commit to gpu video conversion. ( or even gpu + cpu video conversion ) If they can produce real world speed benefits then people will buy it.
Focher - Wednesday, December 17, 2008 - link
I have a 3-way SLI of 280s with a QX9650 CPU. I have both Badaboom and TMPG Xpress, both of which support GPU encoding. In my experience, I can actually encode video a bit faster with just the CPU. Badaboom apparently supports multi-GPU configurations now, but only to split encoding when you have queued multiple files. TMPG Xpress is definitely the more powerful and capable tool, but doesn't support multiple GPUs. Also, Badaboom apparently just released 1.1 that adds quite a few features but I have not yet tried it.Rainman200 - Wednesday, December 17, 2008 - link
Just assign resources to help the developers of x264 to make use of GPU's through OpenCL and that will do more good than any of these waste of time apps.Anand I'd definitely say the x264 is sharper vs Badaboom in the two pictures you posted, also please use Ribot264 or AutoMKV as they use the latest builds of x264, Handbrake trails development of x264 because of its Apple Mac focus so important features added to x264 which improve its image quality are left out months behind other x264 encoders.
dryloch - Wednesday, December 17, 2008 - link
I had a few ATI cards years ago but have been using Nvidia recently. I decided to try a 4800 series ATI card this time around partly because I hoped the number of stream processors would be useful for stuff like this. I have been looking forward to this driver for months and now they release something that doesn't work. My time is valuable to me ATI, don't waste it trying to make somthing work that you know is broken. I don't care what happens with the speed of the next gen cards I am going back to Nvidia.toyotabedzrock - Tuesday, December 16, 2008 - link
http://www.pcper.com/article.php?aid=647">http://www.pcper.com/article.php?aid=647This review seems to have gotten it to work better. Althought still not flawless.
talmholt - Tuesday, December 16, 2008 - link
Anand,I think some of your issues are coming from Vista. I have used the converter on a WinXP32 machine with good results. It converts a 2 hour movie (MPEG2 640x480 3GB initial size) to an iPod file (320x240 500MB final size) in 8 minutes and the result is flawless!
I have also tried converting HDTV (OTA) content to a DVD format and that worked great too.
PS, my system is only a Intel Core 2 E6420 with a AMD 4850 (everything at stock speeds). Please try again Anand.
Thomas
Chris Simmo - Tuesday, December 16, 2008 - link
I use handbrake, but noticed something wierd. I had a 9800GT in the system, using handbrakes default movie options x264 and I would get about 150 turbo first pass, 48fps second pass on my overclocked q9400@3.5. I changed the graphics over to a HD4850, and saw an option for VP3. I selected it, the CLI crashed, the handbrake UI was still running though, changed back to x264, and then it was 290 turbo first pass and over 150 second pass. This is running vista 64 with the 8.12 drivers. During this time the GPU temp went up 2 degrees, all four cores were at 100%. I really need some one else to have a play and see what they get. I put in a 4870 to try, but I hadn't worked out the VP3 thing yet, so it didn't change form the standard 48fpsChris Simmo - Tuesday, December 16, 2008 - link
Sorry, that was 'Shaun of the dead' DVD to MKV,niuniu2012 - Wednesday, March 10, 2010 - link
You can use http://www.dvdtomp3converter.com/">http://www.dvdtomp3converter.com/ to select target subtitle and audio track according at your will. DVD to MP3 Converter also provides you with fruitful options to set audio properties of audio bitrate, Sample Rate and so on.piroroadkill - Tuesday, December 16, 2008 - link
"Last year, NVIDIA introduced it's CUDA"it is CUDA!