work with *.m3u playlists.
Status: Beta
Brought to you by:
wsewell
I'd like to suggest that gnopa be able to understand
and use *.m3u playlists.
The m3u format seems to be pretty simple so it
shouldn't be difficult. In essence (although there are
a few more fields within the format to take into
consideration) the *.m3u file contains lines which
specify the path (either absolute or relative from the
dir of the m3u file) to an mp3 file.
gnopa would display both regular directories, mp3
files, and m3u files. If an m3u file is selected to be
uploaded, the playlist would be parsed and each of the
specified mp3 files would be uploaded in the order
found within the playlist.
Logged In: YES
user_id=245650
I found the "unofficial" spec for the m3u file format @ the
winamp.com site:
http://forums.winamp.com/showthread.php?s=dbec47f3a05d10a3a77959f17926d39c&threadid=65772
Here's what it had to say (for possible future reference):
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
M3U and PLS Specification
The Unofficial M3U and PLS Specification
Winamp playlists are just a text file containing links to
the location of the proper file. You can create or edit a
playlist in any text editor. It could be anything to MP3,
WMA, or even another playlist. Just because something is in
a playlist, doesn't mean Winamp can play it though. Winamp
will just skip over unknown file formats. This document will
hopefully toy to clarify the differences of the playlist
formats available.
Generic M3U/PLS
-----------------------
A list of links to files makes a valid generic playlist. The
entry can be relative (i.e. \files\song.mp3) or specific
(i.e. c:\media\files\son.mp3). Also, URLs can he inserted to
point to a stream or a file on the Internet.
Here are a few sample generic MP3/PLS files:
sample.m3u
code:
Alternative\Band - Song.mp3
Classical\Other Band - New Song.mp3
crap.mp3
F:\more music\foo - bar.mp3
http://www.site.com:8000/listen.pls
http://www.site.com/~user/mine.mp3
- Alternative and Classical are sub-directories of the
directory that this playlist is stored in.
- "Song" and "New Song" are in sub-directories that this
playlist is stored in.
- "Crap" is in the same directory that the playlist is
stored in.
- "Foo - Bar" is in the specified directory, which may or
may not be the same directory the playlist is in.
- http://www.site.com:8000/listen.pls is a Shoutcast stream.
- "Mine" is a MP3 stored on a web server somewhere.
These path options hold true of the extended playlists
described below.
Extended M3U
-------------------
Let's first look at an extended M3U file then I will
describe everything below
sample2.m3u
code:
#EXTM3U
#EXTINF:233,Everclear - So Much For The Afterglow
Alternative\everclear - SMFTA.mp3
#EXTINF:227,Weird Al - Everything You Know Is Wrong
Comedy\Weird Al - Everything You Know Is Wrong.mp3
#EXTINF:187,Weird Al Yankovic - This is the Life
Weird Al - This Is The Life.mp3
#EXTINF:129,Weird Al: Bad Hair Day - Gump
http://www.site.com/~user/gump.mp3
#EXTINF:-1,My Cool Stream
http://www.site.com:8000/listen.pls
Explanation of entries:
#EXTM3U At the VERY top of the Extended M3U file is this
header, which signifies this is an extended M3U file.
'#EXTM#U" must be all capital letters.
#EXTINF:233,Everclear - So Much For The Afterglow: This is
the line that tends to confuse people. Let's break it up
into parts
- #EXTINF:: This signifies this is an Extended Information
field. It ends with a colorn (.
- 233,: This is the time of the file in seconds followed by
a comma. (233 seconds = 3:53). On the last entry there is a
negative one, this is usually seen on streams, it tells the
program to ignore the time entry.
- Everclear - So Much For The Afterglow: Title to display.
This is usually the title read from the file name or ID3
tags. This also can be the name of a stream. No characters
follow the title.
Alternative\everclear - SMFTA.mp3: File location as
described above with basic playlists.
Extended PLS (PLSv2)
-----------------------------
Same playlist from the M3U section in PLS format.
code:
[playlist]
File1=Alternative\everclear - SMFTA.mp3
Title1=Everclear - So Much For The Afterglow
Length1=233
File2=Comedy\Weird Al - Everything You Know Is Wrong.mp3
Title2=Weird Al - Everything You Know Is Wrong
Length2=227
File3=Weird Al - This Is The Life.mp3
Title3=Weird Al Yankovic - This is the Life
Length3=187
File4=http://www.site.com/~user/gump.mp3
Title4=Weird Al: Bad Hair Day - Gump
Length4=129
File5=http://www.site.com:8000/listen.pls
Title5=My Cool Stream
Length5=-1
NumberOfEntries=5
Version=2
Explanation of entries:
[playlist]: Signifies that this is a playlist. This is case
sensitive.
File#=: Location of the file in any of the formats described
above. This is also case sensitive. Also the # sign after
"File" signifies what file number it is. The first file in
the playlist is "File1", the second is "File2" and so on.
Title#=: Title to display. This is usually the title read
from the file name or ID3 tags. Like the other fields, this
is case sensitive. This also can be the name of a stream.
Like "File#" the pound sign (#) is replaced by the entry
number that is in the playlist.
Length#=": Length in seconds, this is aloe case sensitive.
On the last entry there is a negative one, this is usually
seen on streams, it tells the program to ignore the time
entry. Like "File#" the pound sign (#) is replaced by the
entry number that is in the playlist.
NumberOfEntries=#: The total number of entries in the
playlist. This should match the last number on the "File#",
"Title#", and "Length#" fields. Also case sensitive.
Version=2: This required entry near the bottom tells the
player what format the PLS is in. Older versions of the PLS
format did not include this. Like everything else, it is
case sensitive.
More information on the PLS format and its use in streaming
can be found at Shoutclub.com
Winamp3 BPL Format
Coming Soon.