Hacking: August 2006 Archives

SONOS and mime-types

| | Comments (0)
Sonos Controller I ran across a fairly obscure problem with the Sonos music system related to mime-types, file extensions and dynamically generated playlists. This is fair warning that this post will get a tad technical.

The Sonos music system supports Internet radio stations and is capable of parsing remote M3U playlists. My plan was to write a simple script that retrieves the latest This American Life archives page, parses the HTML to extract the set of show URLs and returns a dynamically generated playlist with the desired show URL.

Sonos didn't like my dynamically generated playlist and it took me a while to figure out exactly why. In the end it seems the Sonos ignores Content-Type HTTP header and instead relies solely on the file extension in the URL it is accessing. In this case the file extension was .cgi and since Sonos doesn't know what .cgi means it ignored the contents of the response.

The workaround I found was to enable the execution of CGI scripts with a .m3u file extension but only in a single directory. This is the contents of the Apache-style .htaccess file I used:
Options +ExecCGI
AddHandler cgi-script m3u
AddType audio/x-mpegurl .m3u
Then I renamed my script.cgi to script.m3u and Sonos no longer complained about corrupt contents and treated it like a regular playlist. Dynamically generated This American Life playlists streaming through my Sonos. Wonderful.

I've contacted Sonos and explained the issue so hopefully they'll fix it in a future firmware update and others can avoid the headaches.

Steal This Film

| | Comments (0)
Regardless of how you feel about the legality or ethics of filesharing of copyrighted media, you should check out Steal This Film for a straight-forward, human-scale viewpoint on where filesharing is today from the perspective of people that actively share files and the people that operate the popular Pirate Bay BitTorrent tracking site.

A low quality version of the film is available on Google Video or you can download a higher quality .mov via BitTorrent. To download a BitTorrent file I recommend one of these fine clients: uTorrent, Azureus, BitComet.

It is also interesting to look at the latest anti-piracy productions like this anti-piracy ad from Australia, and this Jackie Chan / Arnold Schwarzenegger team-up and this video titled The Global Avalanche of Piracy found in the anti-piracy section of the MPAA's website.

About this Archive

This page is a archive of entries in the Hacking category from August 2006.

Hacking: December 2005 is the previous archive.

Find recent content on the main index or look in the archives to find all content.