fapg [ options ] /path/to/mp3/dir1 [ /path/to/mp3/dir2 ... ]
fapg is a tool to generate list of audio files (Wav, MP2, MP3, Ogg, etc) in various formats (M3U, PLS, XSPF, HTML, RSS, etc). It is very useful if you have a large amount of audio files and you want to quickly and frequently build a playlist.
It is coded in C to be as fast as possible, and does not use any specific audio library (like ID3Lib). This allow you to deploy it faster and easier, and to have better performances since the less informations are loaded. On the other hand, this tool is not (yet) compatible with all the known formats.
Replace the '/' with '\' in Unix path.
Display useful messages if the program fails ;)
Choose which format of playlist you want to generate (default is m3u).
Choose which genres (numerical values only) will be included in the generated playlist (default is all).
Avoid to parse twice the files because of hardlinks.
Choose the name of the playlist file to generate (default behavior is to display on standard output).
Replace the Unix path with another string (useful to give a Samba path for example).
Recursively read the subdirectories.
Replace all Unix characters with Windows characters.
Choose which genres (numerical values only) will be excluded in the generated playlist (default is none).
External binary or script that produces additional fields for RSS feeds (slow).
Read filenames and/or directories from standard input instead of command line.
Generate a PLS playlist for an album: fapg --format=pls --output=~/path/to/album/list.pls ~/path/to/album
You have a file server using Samba which shares a large amount of audio files for Windows powered computers using Winamp. The directory on the server containing the files is /samba/mp3 and is visible on the Windows network as \\server\mp3 : cd /samba/mp3 && fapg --backslash --output=/samba/mp3/list.m3u --prefix='\\server\mp3\' --recursive --windows ./
An HTML playlist for an album: fapg --output=fapg.html ~/path/to/album
A playlist that contains all your classical tracks may receive the genres to include (or exclude) in one or multiple portions fapg --genre=32:105 --genre=106:104:103 /path/to/all/music
Generate a podcasting XML file using an external program rss.sh to generate a detailed description: fapg --output=dir.xml -f rss -c /usr/local/bin/rss.sh -r --prefix=http://thisserver/basedir path/to/mp3
Generate a playlist that will work on a Sansa e200 series MP3 player: fapg -f pla -o /path/to/playlist.pla /path/to/all/music
if command starts with intern the build-in description (Author,Title,Link) is generated. Please note that in all given directories ( and in ...basedir/xml ) files called podcast.jpg are referenced. Many header fields are set to defaults using environment variables like LOGNAME or LANG.
Antoine Jacquet <email@example.com>, http://royale.zerezo.com/fapg/. Manpage by Thomas Kappler <firstname.lastname@example.org>.