Yearly Archives: 2006

VOC Support

Thanks to Aurelien Jacobs for the new FFmpeg VOC subsystem. I want to express my particular gratitude that he did everything right in the process:

For the uninitiated, the VOC format was a.k.a. the Creative Voice file format which was tied to specific multimedia hardware, as was the case with so many old multimedia formats. This format was tied to the original line of Creative Labs’ Sound Blaster audio cards, so much so that the format actually stored the Sound Blaster DAC frequency divisor for PCM data. VOC files originally stored PCM or any of the custom ADPCM formats that SB hardware apparently supported, including a 2.6-bit format. Details of these custom formats are unknown.

Weak On MPEG

I’ve been working tirelessly on the MultimediaWiki for the past few days, importing all of my past technical documents. Plus, I have been unearthing all kinds of documents and notes. Fortunately, my new philosophy is to just get the information out there and organized via the Wiki rather than waiting until the information is perfectly, 100% complete and verified. Some new items:

But what about MPEG? Right now, the Wiki is lacking for information regarding various MPEG audio, video, and transport formats. This was also a shortcoming under the original tech site organization. My big problem is that I simply don’t know a lot of the technical details behind MPEG. That seems to surprise a lot of people familiar with my activities. Fact is, I like to solve problems that need to be solved. Since so many other people seem to have MPEG locked down, I don’t worry about it.

So, to all who are more familiar than I in MPEG matters: What would be a good way to organize MPEG information in the MultimediaWiki?

Apple’s Crimes Against Usability

I found myself on the receiving end of a brand new Apple 64-bit G5 computer today. I carefully unwrapped each of the components that were lovingly, individually wrapped, put the system together, started it up, faked the requisite demographic/marketing data when Mac OS X demanded that I enter it in order to get to log into the OS, and then I was all set, but not before insisting vociferously that I really did not want a trial account on .Mac. Looking at the computer itself I had a nagging feeling like maybe it was supposed to have an optical drive. It had a rectangular region on the front panel that looked like it might serve such a purpose but it did not seem to open up. I emailed my friend Gregg, old college pal and part-time Mac lover, and he advised me to try the F12 key. That gives me the current weather in Cupertino, CA. Seriously. Failing that, he told me to look for a special key on the keyboard. Sure enough, there is something that resembles an eject symbol over on the numeric keypad which causes the optical drive to breathe life.

Now, see, I believe this to be clearly outside the realm of what a keyboard is chartered to do. Further, it reminds me that there truly is no justice in the world as evidenced by the fact that Steve Jobs was never made to stand trial and answer for his company’s crimes against usability in the form of Apple’s QuickTime Player v4.


Apple QuickTime Player 4
The second greatest crime against user interfaces, second only to Winamp. Click here for an in-depth review of the usability deficiencies.

ATI’s Dangerous Eyeballs

I purchased a new, fanless ATI All-In-Wonder (“2006 Edition”) video card. My primary goal was to replace an old ATI Radeon 8500 video card cooled by a jet engine-powered fan which completely defeated the purpose of having a quiet, small form factor desktop computer.

I have approximately zero interest (or knowledge) in the technical underpinnings of 3D graphics programming. But since the AIW-2006 is apparently based on an ATI Radeon 9600 — which is 1100 better than my previous card — I wanted to see how much prettier the graphics could possibly be (the old card ran Doom 3 and Far Cry demos tolerably well). A number of the included demos mention “X800” and “X850” which I believe are the latest generation ATI chipsets. Anyway, I fire up the first demo entitled, “Dangerous Curves”. It’s pretty much a run-of-the-mill gratuitous action sequence. But I thought the designers had a curious “vision” of the vignette’s protagonist:


Captain Eyeballs
Captain Eyeballs makes his(?) daring escape

I was led to believe something was amiss which the graphics screen was overlaid with a series of errors messages, also dumped to a text file, along the lines of “[SSGenericAPI_D3D.cpp] (line 1256): Can’t compile HLSL pixel shader. The D3D error message is: (1706): error X5608: Compiled shader code uses too many arithmetic instruction slots (69). Max. allowed by the target (ps_2_0) is 64. [oRubyHelmetSk.ssh] (line 329): Error creating Pixel Shader”

Fortunately, the bonus DVD also included the MPEG of the rendered 3D sequence (you can download either the demo or the movie here). It turns out there is supposed to be more to detail to our hero(ine):


Dangerous Curves
Ah, that looks a little less unsettling