Recently, a few mp3 players have gone the route of Microsoft's new Media Transfer Protocol (MTP) which is based off Picture Transfer Protocol (PTP). Linux has a PTP transfer client, which has had some limited success in transferring files to and from the players, mainly I-Rivers. But for owners of many Creative Players with Firmware 2.* and higher, and some Dell players, use of these devices has been impossible. Until the release of libmtp, which allows us to list the tracks on the player, detect players plugged into the machine, send, get, and delete tracks from the player. Libmtp can be found at http://libmtp.sourceforge.net.
The first step is to download the newest version from libmtp's CVS.
Code:
$cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/libmtp login
hit enter when prompted for a password.
$cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/libmtp co -P libmtp
What I reccomend to do now, is to find if your player is currently supported by libmtp, connect the player via USB, and run
Find your player in the output, and note the part of the output that is in this format "XXXX:XXXX", for my Creative Zen Sleek, the output was "041e:4137"
Then, look in libmtp's usermap to see if it is supported yet.
cd into where you downloaded libmtp into, and view the file "libmtp.usermap"
Try to find your player in the list. If it is unsupported, you can try to add it to the usermap by copying the lines from a player, but changing the second and third phrases of the line with the two numbers you got from lsusb. If you do this, you must do the same to the two numbers in the file libmtp.rules.
Now to install the file. Make sure you have libtool, automake, and autoconf installed.
Code:
$sudo apt-get install autoconf automake1.9 libtool
Then, run the preconfigured autogen.sh script from CVS
If no errors are output, we can now go on to configuring the program. There are some errors with using gcc 4 currently, so we must change that. The readme says to use gcc-3.2, but that isnt on any of the newer repos for Ubuntu, and I had no trouble with gcc-3.3
Code:
$sudo apt-get install gcc-3.3
$CC=gcc-3.3
$export CC
$./configure
$make
$sudo make install
If no errors come up, you have now installed libmtp successfully!
To use the player, you can use their example client in the examples directory you downloaded libmtp to.
Currently, there are 5 scripts, tracks, sendtr, gettr, deltr, and detect.
To test if the player is detected, connect the player, turn it on, and run
If it can't find the player, try disconnecting and reconnecting the player to a different USB port.
To upload songs to your player use sendtr, run
Code:
$sudo ./sendtr [filename]
enter the right codec when it prompts you to, either MP3 WAV or WMA, this is required, then enter the rest of the information at the prompts, the rest are optional.
To download songs from your computer, use gettr.
First you need to find the track ID and filename of the songs name on the player, run
This will list all the songs and their IDs in it's output. Find the song you wish to get, not it's Track ID and Origfilename and then run
Code:
$sudo ./gettr [Track ID] [Origfilename]
To delete tracks from the player, use deltr. You will need the Track ID from the output of tracks, then run
Code:
$sudo ./deltr [Track ID]
Bookmarks