The Deal with BadaBOOM

Due out in Q3, BadaBOOM is going to be the consumer version of the encoder. It will be an "affordable" program designed for those users who want to quickly take a video file and convert it to another format without playing with settings like bitrate. This is the application we were given a chance to preview.

Under the RapiHD brand, Elemental will deliver a professional version of their encoder/transcoding software. This application will allow you more options than BadaBOOM, letting you select bitrate and resolution, among other quality settings, manually.

As we mentioned before, the software was developed using CUDA and thus will only run on a CUDA-enabled NVIDIA GPU. NVIDIA has a full list here but in short, anything from the GeForce 8, GeForce 9 or GeForce GTX 280/260 families will work.

Mr. Blackman told us that the company isn't specifically tied to using NVIDIA hardware and that as Larrabee and other AMD/ATI solutions come to light it may evaluate bringing the technology to more platforms. But for now, this will only work if you have a CUDA-enabled GPU (and as such, it stands to be one of the biggest non-gaming killer apps for NVIDIA hardware).

Performance

In our testing we found that even though performance improved tremendously over a CPU-only encode, the process still required a fast host CPU (the Core 2 Extreme QX9770 was at 25 - 30% CPU utilization). It turns out that there are two factors at work here.

According to Mr. Blackman, NVIDIA's initial CUDA release didn't have the streaming mechanism that allows you to run CPU cycles in parallel with the GPU. This functionality was added in later versions of CUDA, but the early beta we tested was developed using the initial CUDA release. Once the CPU and GPU can be doing work in parallel, the CPU side of the equation should be reduced.

Secondly, it's worth pointing out that only parts of the codec are very parallelizable (motion compensation, motion estimation, DCT and iDCT) but other parts of the pipeline (syntax decoding, variable length coding, CABAC) are not so well suited for NVIDIA's array of Streaming Processors.

Elemental also indicated that performance scales linearly with the number of SPs in the GPU, so presumably the GeForce GTX 280 should be nearly 90% faster (at least at the GPU-accelerated functions) than a GeForce 9800 GTX.

SLI Support?

As we found in our GT200 article, in most cases NVIDIA's fastest GPU is actually the pair of G92s found on a single GeForce 9800 GX2. Unfortunately, Elemental's software will not split up a single video stream for processing across multiple GPUs - so NVIDIA's fastest GPU would be the GeForce GTX 280.

There is an exception however; if you do have multiple GPUs in your system, the professional version of Elemental's software will let you output to two different resolution/bitrate targets at the same time - with each GPU handling a different transcode stream.

Final Words

We've still got a couple of months before Elemental's software makes its official debut, but it's honestly the most exciting non-gaming application we've seen for NVIDIA's hardware.

We have already given Elemental some feedback as to features we'd like to see in the final version of the software (including support for .m2ts and .evo files as well as .mkv input/output). If there's anything you'd like to see, leave it in the comments and we'll pass along the thread to Elemental.

Elemental's software, if it truly performs the way we've seen here, has the potential to be a disruptive force in both the GPU and CPU industries. On the GPU side it would give NVIDIA hardware a significant advantage over AMD's GPUs, and on the CPU side it would upset the balance between NVIDIA and Intel. Video encoding has historically been an area where Intel's CPUs have done very well, but if the fastest video encoder ends up being a NVIDIA GPU - it could mean that video encoding performance would be microprocessor agnostic, you'd just need a good NVIDIA GPU.

If you're wondering why Intel is trying to launch Larrabee next year, this is as good of a consumer example as you're going to get.

Index
POST A COMMENT

50 Comments

View All Comments

  • mberest - Sunday, July 20, 2008 - link

    The bababoom website (www.badaboomit.com) states that the highest input resolution will be 720x480p. So for us blu-ray transcoders this is not the product we've been waiting for. The search continues... Reply
  • toyotabedzrock - Thursday, July 17, 2008 - link

    They need to find a way to use 2 gpu cards in sli or not, and also offload a small amount to the system cpu.

    Also the BadaBOOM app looks to simplistic, power users will want more fetchers. We don't need the same kinda control over the encode as a pro does.
    Reply
  • keanu13 - Tuesday, July 08, 2008 - link

    Great info. i really believe that H.264 is one of the best video codec. and also the portability is also much flexible. although its has some limitation (cons)

    may be u can have a look at http://video-codecs.blogspot.com/
    Reply
  • macscoop - Wednesday, July 02, 2008 - link

    Here's my wishlist item. I want to be able to input a list of AVCHD 1080i files from a high-def camcorder and have them transcoded to lower-resolution H.264 videos in MP4 container, suitable for embedding in a web page and playing in the "Moviestar" version of the Flash player. Right now, that takes too many steps. Reply
  • dalleyg - Thursday, June 26, 2008 - link

    As requested in the article, here's a short wishlist:

    (a) Support input from common HD camcorders like the Canon HG10 (they use some "advanced" H.264 encoding features that very few decoders actually handle correctly).

    (b) Have a command-line version with no GUI so that batch scripts can be used.

    (c) Allow different compression options for different decoder complexities, different encoding times, and different bitrates.

    (d) Supply a DirectShow DMO and/or VFW encoder so people can purchase the CUDA encoder and then use it from other applications such as custom applications or VirtualDub.
    Reply
  • Spiny - Monday, June 30, 2008 - link

    >(b) Have a command-line version with no GUI so that batch scripts can be used.

    Better: a COM interface so you could script it with Javascript or VB Script.
    Reply
  • thkbrew89 - Wednesday, June 25, 2008 - link

    I would really like to see .mkv input/output like the article says, because a lot of my files are in that format. I would also like to see support for windows media (WMV) because that's the only format I can stream to my Media Center Extender. Basically, I would like to be able to take any kind of video input, and convert it to a .wmv using the VC1 codec. Obviously options like vbr/cbr, 1-pass/2-pass, auto-scaling, subtitles etc. would all be appreciated. It seems they are including ability to output to ipod/iphone compliant H.264, which would also be nice. Reply
  • kilkennycat - Tuesday, June 24, 2008 - link

    As far as I have heard, Adobe is actively working on CUDA implementations of GPGPU acceleration of both photo-processing and video processing/transcoding elements of their next-gen Creative Suite 4. For the professional photographer or videographer/editor, if successful, this will be an enormous time-saver in transitioning from the raw input to the final finished product. And the cost of a GTX280 card (or several in SLI) would be mere chicken-feed in terms of the potential extra business revenue. Reply
  • shiggz - Tuesday, June 24, 2008 - link

    There is actually a few critical advantages for me of the ps3 264 profile over the .mkv. The "scene" switched to dual then quad cores basically as soon as they were purchasable even at 500-1k$ prices. Because for them getting to be first with scene release i guess is a big deal, so if speed and is much improved and quality comparable "the scene" might move to this unlike what they did with divx vs xvid.

    -gpu hardware accel (laptops and my weak CPU HTPC) without GPU accel 1080p .mkv are just not playable for me. With GPU accel NP, The ps3 profile is hardware accelerated through like powerdvd etc.

    -codec compatibility through future ps4 and past(as I mentioned earlier)

    Once burnable blu ray get down to a few bucks a disc i hope to do away with having a "windows" box connected to my TV altogether. Just have DVD quality 264rips of shows and things all on one bluray. Could probably fit all .264 DVD rips of simpsons on 1 or 2 blu ray.

    my vision is to have one 30slot CD case filled with .264 BLUray basically 1 disc per show of dvd or better quality. Then have them all able to play off the ps3/ps4/ps5 or weak Laptop.

    Also if your into this sorta stuff, i Want to get my laptop Solar powered for 300$. So earthquake,flood, long term power outage i can still have music/games/movies. And hardware accel .264 is the key to it all for me.

    http://www.siliconsolar.com/portable-solar-power-s...">http://www.siliconsolar.com/portable-solar-power-s...
    Reply
  • LTG - Tuesday, June 24, 2008 - link

    Contrary to what someone else said x264 is being ported to GPUs and the project is active.

    Just Google this: Dark Shikari GPU

    It looks like Avail Media has hired a contractor who gets paid full time to work on the project.

    @Anand: It would be great if you could use magic reporter skills get the latest update on this project. Dark Shikari said the code wouldn't be GPL'd until it was completed.

    Also for testing you'll want 1080p uncompressed source video.

    The only place I know of that offers this free for testing and research is here:
    http://www.hdgreetings.com/ecard/video-1080p.aspx">http://www.hdgreetings.com/ecard/video-1080p.aspx

    Can't wait for the followup -
    Reply

Log in

Don't have an account? Sign up now