All | 43 Folders | Accessibility | BoingBoing | Books | Computer Related | Family | Films | General | Hacking | Hobbies | Humor | Java | Links | Omni | OpenSolaris | Puzzles and Games

« Links for 28th March... | Main | Ducks »
20070329 Thursday March 29, 2007

Yakshaving a Copy of the SXSW 2007 Music

Last week Paul Lamere mentioned that there was a 3.1 torrent available at the SXSW website, containing 739 MP3s of the bands appearing at SXSW 2007.

From their website:

"The SXSW MUSIC AND MEDIA CONFERENCE showcases hundreds of musical acts from around the globe on over fifty stages in downtown Austin. By day, conference registrants do business in the SXSW Trade Show in the Austin Convention Center and partake of a full agenda of informative, provocative panel discussions featuring hundreds of speakers of international stature. SXSW Music 2007 took place March 14 - 18, 2007."

I'm always on the lookout for new music (one of the reasons why I normally listen to Radio Paradise while I work), so I thought wouldn't it be great to download a copy of all these files and create myself a DVD from them.

That's where the fun began. I ended up having to shave several yaks before I got what I wanted.

Yak shaving is a neologism which describes the act of performing seemingly unrelated and often annoying tasks which stand in the way of an ultimate goal. Often these tasks stack up on each other, where one task becomes impossible due to some obstacle, which leads to another unrelated task, yet another obstacle, and so on.

First I tried using Freeloader to download the torrent. This started off okay but after a couple hundred KB's had been downloaded the Freeloader window went blank and non-responsive. Freeloader is written in Python and uses the Python GTK+ wrappers for its graphics. I've been recently seeing similar occasional blankless from the Ubuntu update manager. That is also written in Python and uses GTK+. From my evaluation of a recent Freeloader bug report against Orca, I strongly suspect there is a major threading or deadlocking problem in these applications or in the way that pygtk works. I'd love to be proved wrong.

So I gave up on Freeloader and used Azureus instead. This Java application was one of the ones recommended by several people on the I Want a Linux/Unix Utility To... list. I initially tried this under latest Ubuntu Feisty on my 64bit AMD Ferrari. It didn't want to run:

$ ./azureus 
Starting Azureus...
Java exec found in PATH. Verifying...
Suitable java version found [java = 1.5.0_11]
Configuring environment...
Loading Azureus:
java -Xms16m -Xmx128m -cp "/home/richb/azureus/Azureus2.jar:/home/richb/azureus/swt.jar" -Djava.library.path="/home/richb/azureus" -Dazureus.install.path="/home/richb/azureus" org.gudy.azureus2.ui.swt.Main ''
changeLocale: *Default Language* != English (United States). Searching without country..
changeLocale: Searching for language English in *any* country..
changeLocale: no message properties for Locale 'English (United States)' (en_US), using 'English (default)'
GTK Accessibility Module initialized
#
# An unexpected error has been detected by HotSpot Virtual Machine:
#
#  SIGSEGV (0xb) at pc=0x00002aaab58f4a7d, pid=2952, tid=47008737245952
#
# Java VM: Java HotSpot(TM) 64-Bit Server VM (1.5.0_11-b03 mixed mode)
# Problematic frame:
# C  [libgobject-2.0.so.0+0x23a7d]
#
# An error report file with more information is saved as hs_err_pid2952.log
#
# If you would like to submit a bug report, please visit:
#   http://java.sun.com/webapps/bugreport/crash.jsp
#
./azureus: line 112:  2952 Aborted                 (core dumped) ${JAVA_PROGRAM_DIR}java -Xms16m -Xmx128m -cp "${CLASSPATH}" -Djava.library.path="${PROGRAM_DIR}" -Dazureus.install.path="${PROGRAM_DIR}" org.gudy.azureus2.ui.swt.Main "$@"
Azureus TERMINATED.

I downloaded Azureus on a 32bit machine and it worked just fine. Apart from the fact that I had to reinitiate the connection several times and download speeds ranged from several hundred KB's per second to virtually zero. I've no idea if this is because this torrent is really popular or what. It's peer-to-peer file sharing, so I'm a little confused.

Anyway, I now have a directory containing 739 MP3 files. But it's on the wrong machine. My DVD burner is on the Ferrari. So I had to install an SSH server on my Ferrari:

$ sudo apt-get install openssh-server

I then had to Google to find out how to find out what the DHCP address was on my server ($ ifconfig eth0 - obvious wasn't it)? Finally I had them all copied over. Another fifteen minutes. Another smooth yak.

Now I want to make a DVD of them. I initially wondered whether I could make an audio DVD, just like you can make an audio CD. I thought it might be a silly question, but I asked two really smart people that I work with, and neither of them knew the answer, so that made me feel a little better. From googling around, I don't think you can do this. Or rather nobody does this because most "CD players" just take CD's. Again, I'd love to be proved wrong.

I decided to use k3b, another application from the "I want..." list that I'd never used before. I was mostly very impressed by k3b. The only thing I found missing was a quick way to select all 739 files and add them to the list of files to be burned. I ended up mouse clicking each one individually.

k3b took about 20 minutes to burn the DVD containing the 739 tracks. That's 44 hours and 35 minutes worth of new music to listen to!

I then imported then into rhythmbox and setup a random shuffle and started listening to them. This worked just fine on my Ferrari, but then I wanted to do the same back on the 32bit PC, because that has the really nice sound system. rhythmbox burped as it tried to import them. It threw up a popup telling me there was a problem. I dismissed that but it had starting importing the same track list again. I had to quit the application and restart it. It played the tracks just fine. This is a much older machine. I wonder whether the problem was due to the vintage of the DVD drive...

Anyway, I finally had what I wanted. There's some great music here! I highly recommend downloading and creating your own copy.

I just hope there is not so much Tibetan ox scaping when you do it.

[]

[]

[]

[]

[]

( Mar 29 2007, 01:57:42 PM PDT ) [Listen] Permalink Comments [7]

Comments:

Three things: - there are only three acceptable linux torrent clients available of which two offer a graphical interface. The graphical ones are called deluge (gnome) and ktorrent (kde). For deluge to work without issues, grab the latest .deb or .rpm from their website. Ktorrent has been stable for a long time: any version will do. All other torrent clients either use java or python, or do not support DHT. Deluge and ktorrent both libtorrent which is a highly optimized stable bittorrent library. - if you want to know your local ip install netwerk-applet. Then just right click and choose 'connection info' (gnome only offcourse) - 20,000 cc-liscensed songs are found at http://www.jamendo.com - if you use a recent rhythmbox (0.9.17+) there is a jamendo plugin. Its just not activated by default. You want to activate this plugin. You can browse and directly listen to any songs. Then, if you like the artist, press the big download button and it will open the .torrent file in firefox (launching deluge or ktorrent) Cheers ;-)

Posted by Meneer R on March 29, 2007 at 02:40 PM PDT #

Thanks! This was exactly the kind of feedback I was looking for.

As I work on Orca, I was trying to use a torrent client that would have a chance of being accessible too. Looks like deluge might be another candidate to try here until KDE fully integrate with at-spi.

Posted by Rich Burridge on March 29, 2007 at 03:21 PM PDT #

As you are going to give Deluge a try, i'll try to help you on your way.

If you are running:
Ubuntu - Feisty: Go to http://deluge-torrent.org/downloads/deb/
Debian-unstable: apt-get install deluge-torrent
Anything else: download the source at http://deluge-torrent.org and compile yourself. The readme is very informative about what you need to do. Unlike most OSS projects out there, this can be compiled by anyone.

Another note:
To make any bittorrent client go fast, its best to have port 6881 open. So make sure you are not running a firewall that is keeping this port closed and your router/adsl-modem is setup to forward this port to your pc. It can make the difference between 10 kb/s and 150 kb/s. If you have the choice, you have to open port 6881 for UDP, not TCP. You can check wether you opened the port succesfully at: http://www.whatsmyip.org/ports/p2p/
If it says 'timeout', you are not running a bittorrent client, if it says closed, there is a firewall and its not configured correctly yet.

Good luck!

Posted by Meneer R on March 29, 2007 at 04:02 PM PDT #

what about select all files and drag to burn area in k3b?

anyway:

for file in `ls *.mp3`; do dcop k3b K3bInterface addUrl $(pwd)/$file; done

or

find $(pwd) -iname "*.mp3" -print | xargs -n1 dcop k3b K3bInterface addUrl

;)

Posted by myself on March 29, 2007 at 04:26 PM PDT #

ctrl-a will select all the files in the add files dialog

Posted by Luca on March 30, 2007 at 05:52 AM PDT #

Thanks Meneer, myself, Luca! Next time I'm down this path, I'll use your suggestions.

Posted by Rich Burridge on March 30, 2007 at 06:55 AM PDT #

funny to read about one's struggle with a modern desktop environment ;)

Posted by nsac on March 30, 2007 at 11:18 AM PDT #

Post a Comment:

Comments are closed for this entry.