Author Archives: Multimedia Mike

Compatibility Testing With FATE

Once upon a time, I made a valiant effort to create a compatibility page for FFmpeg. The goal was simple– document how to use FFmpeg to generate media files that would play back in the most common media players of the day. At the time, this included Windows Media Player and Apple QuickTime Player. The exercise was naturally obsolete quite quickly due to the fact that I used some random SVN revision (actually, this is so old that I think we were still using CVS at the time).

I still think this is a worthwhile idea. I now realize that the idea can be improved by FATE. Create a series of test specs that map to a certain encoding combination known to work on a popular media player (or even a popular media device– this could be used for testing, e.g., iPod profiles) and document the command lines on the website. When one of the command lines breaks for all configurations, it will be worth investigating to learn why and whether the website example needs to be updated, or whether FFmpeg needs to be fixed.

Testing process:

  • Develop command line that should produce content playable for popular software player or device
  • Transcode sample media with command line
  • Test media on target player to make sure it plays
  • Enter FATE test spec
  • Document command line on compatibility page

Such a FATE test will be contingent upon a built-in file checksumming feature as I have outlined for a future revision.

Testing Older Snapshots With FATE

Suppose FATE had the infrastructure to test arbitrary branches of FFmpeg. I just realized that it wouldn’t necessarily help because the FATE test specs keep changing as the code is adjusted. This implies that there needs to be more sophisticated test management.

This occurred to me due to the chatter surrounding the recent FFmpeg 0.51 security release. Running the FATE suite against 0.51 doesn’t work since the current state of the various FATE tests are contingent upon the current mainline FFmpeg source. Possible solutions going forward? Perhaps upgrade the FATE database to support some kind of versioning? However, this would also limit my ability to monkey with the existing FATE suite of samples.

IRIX CD-ROM

A little while ago, an article made the rounds which detailed a visit to The Weird Stuff Warehouse in Silicon Valley. Since I have a thing for weird, obscure stuff, I knew I had to pay a visit.

I didn’t find much interesting material there, though that’s probably more an indication of my own changing interests (there was a time when I would have enjoyed buying up vintage hardware for cheap). They did have an old MPEG-1 ISA bus video decoder board. There wasn’t much in the way of old entertainment software, which is my current interest. However, I did find an old SGI IRIX OS CD-ROM. Since SGI was more or less synonymous with multimedia back in the 1990s, I thought this disc might have some classic multimedia examples.



The manual that comes in the jewel case seems to focus exclusively on using FlexLM.

When ripped, ‘file’ identifies the disc image as “SGI disk label (volume header)”. Is that the same as SGI’s XFS? I installed Linux’s XFS module but was unable to mount the filesystem. Scanning through the image, I didn’t fnd any strings that would indicate more common multimedia types from the era.

Weird Stuff Warehouse also had an SGI Octane machine for running the OS. You have no idea how hard it was to resist the urge to buy it and run the FATE client on it.

Aw, Snap In Every Language

I’m strangely fascinated by inappropriate, colloquial error messages. Some software teams insist on smuggling them in despite what the user interface guidelines say about clear, useful error messages. Such is the case with the Google Chrome web browser and its “Aw, Snap” error message when a page crashes.



I had been seeing this message with inordinate frequency (3 guesses why) when I started to wonder how this translates into some of the other 50 languages that Chrome supports. I switched my environment’s language to ‘fr’ and saw what appeared to be Francophonic squealing:



My goodness, did they really task their translation team with finding a culturally accurate yet wince-inducing exclamation phrase for this screen in every supported language? Probably not, considering the en_US and en_GB phrases are the same (I’m assuming the phrase in question is an American expression but it could very well have crossed the pond by now). If it seems like I’m putting a lot of thought into this, imagine how much consideration various Google committees had to exert; Google is famous for not making moves unless the data says it’s okay (e.g., testing 41 shades of blue). I guess from that perspective, the translation team is lucky they didn’t get stuck with translating “Oh no this web page di’n’t just crash on you!”

While I’m fairly certain that “Aie aie aie” is not a literal translation for “aw, snap”, the following languages do feature literal translations (at least according to Google Translate): Czech, Danish, Estonian, Finnish, Korean, Slovenian, and Portuguese (Brazilian, while pt_PT translates to “Ah, balls!”). A number of other languages (like German, Spanish, and Croatian) feature translations that quite clearly seem to be “Oh no!”. Turkish’s exclamation is simply “Error” which might be the most appropriate of the bunch. Vietnamese’s phrase translates to “Sorry”, which is also reasonable.

In yet another in a long series of useless exercises, I have assembled a gallery of all the Google Chrome translations for “Aw, snap”. See what your favorite language uses for the message and whether in makes any sense (alphabetical by language code): Continue reading