Previous Thread
Next Thread
Print Thread
#78196 - 03/22/12 10:52 AM NEZPlug M3U file format support  
Joined: Nov 2003
Posts: 459
Knurek Offline
Senior Member
Knurek  Offline
Senior Member

Joined: Nov 2003
Posts: 459
AO currently doesn't support NEZPlug's external tagging M3U file format, which can store additional metadata (like, track names, song duration, per track composers, etc) for emulated music formats like NSF, GBS, HES, KSS, SGC and WSR.

I'm pretty sure GME which AO uses does support parsing that M3U format, but I've checked and win32 build of AO can't play them.

Would it be possible to add support to it? For now, people using linux or macOS need to stick to running Winamp/Foobar under Wine if they want to use the extra metadata - having AO support would solve this. smile

If you want some examples of the format, there are some either on Portable Music History or on Kaminari's PC Engine Music Archive

The file format is as follows:

[header]

# @TAG_NAME Tag

Widely used TAG_NAMEs are: @TITLE (Game Name), @ARTIST (Copyright Field), @COMPOSER (Composer Name), @ARRANGER (Arrange Name), @DATE (Date of Game Release), @RIPPER (self-explaining), @TAGGER (ditto)

filename::NSF,[1 based songno|$songno],[title],[time(h:m:s)],[loop(h:m:s)][-],[fade(h:m:s)],[loopcount]
filename::KSS,[0 based songno|$songno],[title],[time(h:m:s)],[loop(h:m:s)][-],[fade(h:m:s)],[loopcount]
filename::GBR,[0 based songno|$songno],[title],[time(h:m:s)],[loop(h:m:s)][-],[fade(h:m:s)],[loopcount]
filename::GBS,[0 based songno|$songno],[title],[time(h:m:s)],[loop(h:m:s)][-],[fade(h:m:s)],[loopcount]
filename::HES,[0 based songno|$songno],[title],[time(h:m:s)],[loop(h:m:s)][-],[fade(h:m:s)],[loopcount]
filename::AY ,[0 based songno|$songno],[title],[time(h:m:s)],[loop(h:m:s)][-],[fade(h:m:s)],[loopcount]
filename::NEZ,[0 based songno|$songno],[title],[time(h:m:s)],[loop(h:m:s)][-],[fade(h:m:s)],[loopcount]
filename::WSR,[0 based songno|$songno],[title],[time(h:m:s)],[loop(h:m:s)][-],[fade(h:m:s)],[loopcount]

filename song file relative path(*.zip;*.nsf;*.kss;...)

songno 0-based songno(::NSF playlist only has 1-based songno for historical reason.)
$songno 0-based hexadecimal songno

title song title

time song play time h * 3600 + m * 60 + s (sec)
Default time(5min) will be used, if time not specified.

loop(h:m:s)
loop length h * 3600 + m * 60 + s (sec)
loop(h:m:s-)
loop start time h * 3600 + m * 60 + s (sec)
loop(-)
loop length is equal to play time.
Song will not loop, if loop not specified,

fade fadeout length h * 3600 + m * 60 + s (sec)
Default fadeout length(5sec) will be used, if time not specified.

loopcount
loop count
Default LoopCount will be used, if time not specified.


#78209 - 03/24/12 08:10 PM Re: NEZPlug M3U file format support [Re: Knurek]  
Joined: Mar 2001
Posts: 15,587
R. Belmont Online content
R. Belmont  Online Content

Very Senior Member

Joined: Mar 2001
Posts: 15,587
USA
That's something I'm interested in if I get back into that mode sometime, even though it's pretty kludgey and I know from my ongoing bin/cue nightmare that no two apps write a text-based file exactly the same way.

#78217 - 03/25/12 08:29 AM Re: NEZPlug M3U file format support [Re: Knurek]  
Joined: Nov 2003
Posts: 459
Knurek Offline
Senior Member
Knurek  Offline
Senior Member

Joined: Nov 2003
Posts: 459
Oh yes, there are loads of variations on the format, mostly related to the way the header data is stored. Both Kaminari and mine playlists (so, most of the nonMSX ones) use the same template though.


Moderated by  R. Belmont, Richard Bannister 

Who's Online Now
2 registered members (R. Belmont, drewcifer), 17 guests, and 3 spiders.
Key: Admin, Global Mod, Mod
Shout Box
Forum Statistics
Forums9
Topics8,341
Posts107,790
Members4,738
Most Online225
May 26th, 2014
Powered by UBB.threads™ PHP Forum Software 7.6.0
Page Time: 0.235s Queries: 14 (0.218s) Memory: 4.9394 MB (Peak: 5.1078 MB) Zlib enabled. Server Time: 2017-05-28 20:29:13 UTC