XSPF Export Tool
Copy files denoted in XSPF playlist to any
location
v. 1.0 May 2014
XSPF Export Tool loads an XSPF playlist (a "spiff" list), collects the music files denoted in the playlist from their locations, and then copies them to a single new location such as a folder or USB stick, portable device, network location, etc. Further, optional enumeration of output files is available. Don't forget to select the files from the list after the playlist loads using mouse or standard keyboard and mouse shortcuts such as CTRL+ A, CTRL+click, or SHIFT + click.
We are all familiar with the various music players for Windows such as Winamp, VLC, MusicBee, and Foobar2000. Although Winamp has been the most famous of them all, MusicBee has taken the lead, because it has all sorts of options to store, play, rip music, add replay gain, operate with different types of playlists, and export both playlists and music files into other locations.
Many players such as Winamp tend to save playlists in the M3U format, which is rather unreliable. In M3U playlist, the music files are denoted in the form of relative paths to files, which means that finding those files later depends from the exact location of the playlist itself on the given storage device and operating system. If you relocate the playlist, it loses its functionality. Also, M3U format neglects certain details of character encoding (foreign languages in the names of music files), so you should use at least M3U8 format of playlist when saving files. MusicBee is the only player known to me that can successfully open the old Winamp M3U playlists, given that they were not moved or copied, and save them in other important formats such as XSPF. If you manually edit the preferences in MusicBee player, M3U playlists can then be saved or "exported" into XSPF format. (Another player that reads Winamp playlists is AIMP.) If you need to repair your old M3U playlists in Windows, try to use ListFix tool.
XSPF format of playlist contains
absolute paths to music files, so that each music file can be located regardless
of where you move the playlist itself. This format can be read as any other XML
file, which means that there is a universal decoder available to programmers.
In my opinion, you should save playlists in the XSPF
format [*]. When you decide to take the music files to
your portable device, XSPF Export Tool
may become handy. You will be able to copy all the files given in your XSPF
playlist to a single new location such as the portable device and in addition,
enumerate the files by adding numbers at the beginning of their names so that
the portable player would read them in a particular order without any need for
further sorting on the portable device itself.
Download XSPF Export Tool https://sourceforge.net/projects/xspfexporttool/
Forum is
available at https://sourceforge.net/p/xspfexporttool/discussion/
Values
of absolute and relative paths to music files (two kinds of playlists)
Take a look at an example of an absolute path to music file in Windows: D:\My Music\Some Music\song.mp3. That defines the file uniquely.
A relative path may be in the form: Some Music\song.mp3 if the playlist that utilizes relative paths is located in the folder \My Music\. The file could also be denoted as song.mp3 if the location of the playlist is in My Music\Some Music\ folder. The file in an M3U playlist can further be denoted with \Other Music\song.mp3 if the location of the playlist is \Some Music\ folder, which is on the same level as \Other Music\ folder in the My Music\ folder. For files stored on other drives, M3U playlist uses absolute paths.
The relative paths are useful if the playlists that use them are located in the root folder where all the music is stored. Then the whole tree of subfolders can be read from these playlists on other operating systems such as Linux, or from a portable device, and the tree of subfolders can be moved to another location together with the playlists that contains relative paths. Playlists with the relative paths are also useful in situations when you change the drive letter (storage partition or device), given that you keep the subfolder tree structure so that the playlists will continue to function well.
XSPF playlists contain absolute paths to files, so they themselves can be moved, but the absolute paths contain drive letters (C:\, D:\...), so if you move the files to another location and the drive letter changes, the XSPF playlist will need to be updated to reflect this change where the files are stored.
Check out the M3U and M3U8 Export Tool!