Device Profile: SpectSoft RaveHD digital disk recorder/player
Apr 2, 2004 — by LinuxDevices Staff — from the LinuxDevices Archive — viewsThe RaveHD is a hybrid video digital disk recorder (DDR)/player and video editor based on Linux and built around open source and Unix design principles. Two years in development, it targets the post production and visual effects industries, and has been used in the production of major movies. RaveHD is available as a PC-based system, embedded system, or as commercial software.
RaveHD is available with a 4U rackmount case and SuperMicro mobo
(Click to enlarge)
According to Jason Howard, “Cool Guy No. 6” and VP of Engineering, RaveHD is the first recorder/player based on non-proprietary protocols. “One of the big advantages of the box is the fact that we support sequential frame playback from a standard filesystem,” says Howard. “This is how our users are used to working, so there is no strange importing process. Frames can come right off the renderfarm (or any image creation process) right onto the DDR via standard file sharing protocols.”
RaveHD currently support all the flavors of uncompressed video (480i29.97, 480p/ sf29.97, 720p60/59.94, 1080i24/23.98/25/29.97/30, 1080p(/sf)24/25/29.97/30) in all the standard colorspaces (Y'CbCr8/10, RGB8/10), with compressed formats on the way.
Other features include SQL clip tracking, web based DDR and asset management, RS-422 deck control, RS-422 slave (the DDR will emulate a VTR deck), and programmable cadence for things like 2:3, 2:3:3:2, 2:3:2, 2D, and look up table based color correction.
What's under the hood?
The RaveHD reference box uses dual 2.4 GHz Intel Xeon processors, however, “This is really up to the customer based on what they will be doing with the box,” according to Howard.
The reference design includes 1GB of system RAM, and between 128MB and 256MB of additional RAM on the various I/O cards, which do all the video buffering.
The reference box comes with a pair of mirrored IDE hard drives, however, “We do have a compact flash image that everything works off of as well (if such a thing is needed),” adds Howard.
Aside from the normal motherboard connections, SpectSoft ships the reference box with gigabit Ethernet, and optional fibre channel or firewire, depending on the customer's choice of disk drive subsystems.
An external Medea Disk Drive Array for use with the RaveHD
(Click to enlarge)
SpectSoft sells and supports the AJA Video line of SDI video I/O cards, and RaveHD supports AJA's SD, HD, and Dual Link SDI cards.
Supported AJA cards include:
- SD SDI card – SMPTE 259M
- HD SDI card – SMPTE 292M
- Dual Link HD SDI card – SMPTE 372M (“actually 372 defines the raster format and how to pack it onto two wires doing 292M,” says Howard, cryptically)
RaveHD includes Serial Digital Interface (SDI) cards from Aja Video
SpectSoft wrote Linux drivers for the SDI cards inhouse, “so the level of control we have over the whole system is really cool,” says Howard, who adds that drivers for additional SDI cards are under development.
The software side
According to Howard, the project started off on RedHat 7.3, then moved to Slackware 9.1 because, “Going RedHat 8 or 9 just seemed like such a big bloated jump.” Howard adds that, “The software really doesn't have much trouble running on most any fairly current distro.”
RaveHD uses a 2.4.24 kernel for now, although “2.6 is really looking quite exciting!” according to Howard. The kernel is patched with bigphysmem
to support large DMA buffers.
RaveHD uses a client-server architecture and includes Qt-based clients for a number of operating systems. Qt is an application development framework from Trolltech that enables binaries for multiple operating systems to be compiled from the same source code tree. “We are very much a Qt shop,” says Howard.
RaveHD's Qt-based cross-platform client interface
The Qt-based clients can run on any machine, and connect to any DDR and control it, according to Howard. RaveHD can also be set up to include an X environment, for customers wishing to run a Qt client on, and control the software from, the box itself.
According to Howard, “We ship with KDE as default, however it is really about what the customer wants to do (and the actual desktop doesn't really matter much to us).”
RaveHD supports a number of databases, including MySQL, Postgres, and Oracle, and uses the Apache web server. The distribution supports a large number of open source software programs that alter or compress video data. According to Howard, “There are a whole myriad of software elements we use to bring this giant monster together.”
Building with Linux
Howard says it took SpectSoft about two years to complete RaveHD, after first identifying a need for “a real whiz bang DDR that worked the way [film editors] did, and didn't practice the dark art of proprietary interfaces.”
Howard says SpectSoft worked closely with Tippett Studio, in Berkeley CA, in developing RaveHD. “We actually spent about a year with Tippett studio while they were shooting their completely digital feature 'Starship Troopers 2: Hero of the Federation'. Our box captured every visual effect shot in the movie, as well as being used to final the shots by the director. We captured from both HDCAM (Sony Cinealta) and DVCPRO HD (Panasonic Varicam), so the box got quite a workout. More importantly, we got some awesome feedback and guidance.”
A scene from StarShip Troopers
(Click to enlarge)
Howard emphasizes, “If you want to make a good product, listen to your customers! They are, after all, the ones who will have to use the bloody contraption.”
Howard says one challenge of developing RaveHD was in finding an appropriate licensing model. “Very early on, we decided that since our market was a niche and that our software wouldn't really be useful to the average user, a license like the GPL wouldn't allow us the ability to, well, put food on the table. However, the idea behind open source is really a wonderful thing and this is something we really wanted to give our customers. To make a long story shorter, we finally decided that we had to come up with yet another open source license, called the SGOSL or SpectSoft General Open Source License, that would allow our customers access to the source code and allow them to alter it. However, it disallows them the ability to distribute it, thus allowing us to actually make a buck or two.”
“That said,” Howard continues, “We are now looking into a less restrictive way of doing things. Perhaps following in the footsteps of the Trolltech gods: Dual Licensing.”
Despite licensing quandaries, Howard believes Linux has a bright future in the film industry, and not just for rendering. “Most renderfarms in use today run Linux.. it's really just a matter of practicality. However, there are quite a few studios starting to run Linux on the desktop in a very big way. Most professional tools are now available for Linux and the savings in cost and the ability to better administer 200+ workstations really make this a no brainer.”
“As a whole,” continues Howard, “the film and video industries are no stranger to U*IX as most have used SGI Irix in the past. In fact most places where you saw SGI boxes are now filled with PCs running Linux. The future looks pretty darn cool to me!”
Pricing and other details are available on the Rave-HD Website.
This article was originally published on LinuxDevices.com and has been donated to the open source community by QuinStreet Inc. Please visit LinuxToday.com for up-to-date news and articles about Linux and open source.