Author Archives: Multimedia Mike

New Format/Problem: ratDVD

You might think I would hear about these things sooner. Here is a project that has been around since last May that I just learned about yesterday:


ratDVD logo
ratDVD Official Site

From what I gather based on the website, it is a container format that allows complete encapsulation of a DVD for internet distribution. It can retain menus, navigation, subtitles, special features, etc. It apparently also transcodes video to a custom format named XEB. It also uses some custom variant of the Dolby AC-3 codec called AC-3 VS (virtual surround). These details are a bit sketchy since there is not much code available. The developer claims to want to work with the Linux community to come up with a suitable playback solution.

My first impulse at seeing this was similar to my reaction towards Matroska: Special Microsoft operatives attempting to distract open source multimedia hackers from focusing on more important matters. Not to be outdone in the more-work-for-the-community department, the Matroska developers have a draft of a similarly capable system.

An impromptu search on BitTorrent networks reveals that people are already pressing ratDVD into service for its stated purpose, e.g., making available for P2P distribution such niche-interest media content as Star Wars Episode III and full seasons of 24. So I imagine the demand for this format will eventually grow.

Custom Video Codec For 3D Hardware

Exploiting capabilities/limitations of available video hardware is nothing new in terms of multimedia programming. The old IBM VGA hardware had a 320×200 resolution mode that could display 256 unique colors. For years, that drove many graphic-heavy applications (notably games but also certain video applications such as FLIC files originally generated by Autodesk software). Back when I was hacking on the Sega Dreamcast I started to brainstorm about a vector quantizer video codec that could take advantage of the PowerVR 3D graphics hardware present in the console.


Sega Dreamcast

Continue reading →

Video Coding Concepts: Frame Types

This article is maintained in Wiki format at http://wiki.multimedia.cx/index.php?title=Frame_Types.

Ultimately, encoded video data needs to be decoded to 2-dimensional arrays of pixel values and presented to the user (or perhaps transcoded to a different format). All of these frames look complete to the user. But the frames often can not stand by themselves. They usually need information from other frames in order to make their presentation complete.

Let’s talk basic video frame terminology. First, there is the intraframe. This is also known as a keyframe. An intraframe is one that can stand on its own. It requires no other frames. It carries with it all the information needed to be decoded.

Continue reading →

Latest Apple Trailers

I got my AMD64 machine back in January and installed a native 64-bit Linux OS on it. One of the first things I discovered is that I could not watch most Apple QuickTime movie trailers since they used the QDesign Music Codec (QDM2) for audio which, until recently, only worked under Linux on i386-type architectures using Apple’s Win32 binary decoder. The xine team finished hooking up FFmpeg’s QDM2 support this past weekend (it’s in CVS right now). So I thought I would finally get to enjoy a tremendous backlog of movie trailers that have been piling up since last January.


QuickTime 7
Then along came QuickTime version 7…

Now, it seems that all current QuickTime movie trailers available directly from Apple have moved to using H.264/AVC1 for video and AAC for audio. I had seen that Apple was starting to post hi-def QT trailers (480P, 720P, and 1080P) but I was unaware that the higher variations also have 5.1 AAC audio.

BTW, if you want Apple trailers but do not wish to put up with working through Apple’s site to find the correct link, Dave’s Trailer Page has an amazing archive of direct movie trailer links in no-nonsense HTML.

Wouldn’t you know, when the open source community reverse engineers an implementation of QDM2 Apple quits using it for the majority of their material. The same thing happened in 2002 when the open source community got an implementation of Sorenson Video 1 (SVQ1) and Apple started using SVQ3. Fortunately, the community got open source SVQ3 support when SVQ3 was still quite common. But it’s like Apple is always one step ahead. Maybe that’s why I can never keep straight the 53 or so different variations of iPods.