2007 / di[rec] Live Recordings - SWF to MP3
di[rec] Live Recordings - SWF to MP3 Guide
This year at the FM4 Frequency Festival
in Salzburg, Austria, di[rec] offered live
recordings from bands that have played on the festival, directly from the
festival. The music was distributed on USB sticks, and I was eager to know
what kind of copy protection scheme they use and how good the quality of the
live recording is.
The live recording quality is surely very good, a kind of matrix recording with
good live music plus audience cheers mixed in. Definitely a plus.
How it works
Upon connecting the USB stick to my MacBook running Debian, I saw five files:
autorun.inf (59b), direc.exe (1.6M),
direc.ico (3.2k), direc.swf (87M) and
splash.swf (1.4M).
Quite obviously, the direc.swf file is what we are
interested in. The player is embedded in the exe file, so I could either run
the exe on Wine or direc.swf directly on the Linux Flashplayer.
Tools you need: swfextract
All is done with the swfextract tool from the
SWFTools package. In Debian, you can
aptitude install swftools and get it, or get it from upstream.
First, we run swfextract on the direc.swf file, which produces something like
the following:
$ swfextract direc.swf
Objects in file direc.swf:
[-i] 83 Shapes: ID(s) 19, 21, 23, 26, 28, 35, 36, 49, 50, 52-57, 59, 61, 66-70, 72, 74, 79, 81, 86, 90, 135-143, 145-147, 152, 153, 155, 158, 159, 163, 167, 170, 176, 181, 183-186, 189-191, 198-201, 205-207, 209, 211, 212, 215, 217, 218, 220-222, 224, 226-228, 231, 232, 237, 239, 244, 253
[-i] 105 MovieClips: ID(s) 20, 22, 24, 25, 27, 29-34, 38-48, 51, 58, 60, 62-65, 71, 73, 75-78, 80, 82-85, 87-89, 91-108, 150, 15-18, 109-134, 178, 179, 193, 194, 196, 208, 213, 214, 216, 234, 235, 243, 248
[-j] 2 JPEGs: ID(s) 156, 182
[-p] 3 PNGs: ID(s) 144, 157, 166
[-s] 18 Sounds: ID(s) 1-14, 154, 180, 236, 249
[-F] 2 Fonts: ID(s) 148, 203
[-f] 1 Frame: ID(s) 0
[-m] 1 MP3 Soundstream
We could extract artwork, fonts and other data, but we're interested in the
18 sounds which the file provides. Looking at the setlist, the
concert in question has 14 tracks, and as we see from the sound IDs, there
is a 1-14 sequence of tracks. I've checked it with my concert and found that
the IDs are in reverse order, so ID 1 is track 14, ID 2 is track 13 and so on.
It might be a different story for your concert, so check the extracted files
with the content in the flash movie, matching ID-ed files to track numbers
and song names.
Extracting all tracks
To grab one track, you do the following: $ swfextract -s ID
direc.swf -o ID.mp3 (where ID, of course, is the
numeric ID of the track we want).
To grab all tracks at once, use some bash-ish shell power:
#!/bin/bash
TRACKS=14 # change to fit your needs
for ID in `seq 1 $TRACKS`; do
TRACK=$((TRACKS+1-ID))
swfextract -s $ID direc.swf -o $TRACK.mp3
done
This will (hopefully) leave you with 14 MP3 files in the current directory
containing the MP3 data (128kb) from the Flash movie. You can now use your
legally purchased music in an unrestricted way. Enjoy and support the artists!
Sun Aug 19 04:06:08 2007 +0000