Game_Music_Emu plugin for Winamp

Announce new emulators, discuss which games run best under each emulator, and much much more.

Moderator: General Mods

mudlord
has wat u liek
Posts: 559
Joined: Tue Sep 11, 2007 2:54 pm
Location: Banland.

Game_Music_Emu plugin for Winamp

Post by mudlord »

Hi, here's a little something I was working on tonight and will continue to work on:

http://mudlord.hcs64.com/audplugins.html

For the unenlightened, it is a plugin that uses blargg's Game_Music_Emu. With his patches that make the SNES APU emulation in line with BSNES. So, the SNES APU code uses a cycle accurate core.

Version 1.??? (havent decided):

* Updated to GME 0.6 which means:
- Fixed NSF playback. Now plays almost all expansion chips.
- SGC support
- VGM emulation code from Genesis Plus GX so more accurate, etc.


Version 1.0:
* fixed sample buffer issue. Thanks to hcs.
* Updated VGM emulator to one from MAME
* lots of other things....

Version 0.5 final:
* Worked on the sample buffer issue, reported by franpa. Now the plugin
is much more tolerant of very large or small sample buffers. Hopefully it
will work. Works perfectly on XMPlay.
* Fixed bitrate reporting.
* It is now possible to force 32khz for SPC playback. Other files play
at 44100Hz.
* Removed "Ignore Silence"
* "Play Forever" now works correctly, and ignores silence.
* Cleaned up a lot of the code
* Added %c (game console) variable to title formatting.

Version 0.5 beta 3:
* Added configuration dialog
(options will use a INI, not the Registry)
* Added custom title formatting
* Adjusted decoding thread priority
* Rewrote several internal portions of code for clarity
* Rewrote how title formatting operates

Version 0.5 beta 2a:
* Removed custom silence detection, now uses gme_track_ended() all around.

Version 0.5 beta 2:
* Fixed string formatting for files without tags. Files without tags will only show the filename without extension.
* Files without time settings will loop indefinately. Seeking will work for up to 3 minutes regardless of filetype.
* Fixed time reading for files that don't fill out info.length. Song length is then derived from info.intro_length + info.loop_length. This is needed for files from Project2612.org.
* Automatic subsong track end detection of silence in subsong based formats. The player will then move to the next subsong if silence occurs for around 2 seconds.
* Singular track songs now will move to the next song, like other formats in Winamp, on track end.
* Added NSIS installer. It will detect for Winamp plugin directory.

Version 0.5 beta 1:
* Added seeking
* Added subsong support to all formats that support it

Version 0.3:
* Added song info dialog
* Fixed all compiler warnings in main plugin code
* Fixed sample buffer size to be of a smaller size
* Added time detection
* Plugin no longer needs MSVC2008 runtimes
* Switched to using TDW's builds of mingw (bleeding edge GCC ports) and Code::Blocks.
* Optimized file size

Requests:
* Archive support.
Last edited by mudlord on Tue Jun 29, 2010 3:50 am, edited 17 times in total.
creaothceann
Seen it all
Posts: 2302
Joined: Mon Jan 03, 2005 5:04 pm
Location: Germany
Contact:

Post by creaothceann »

Nice! :o
vSNES | Delphi 10 BPLs
bsnes launcher with recent files list
mudlord
has wat u liek
Posts: 559
Joined: Tue Sep 11, 2007 2:54 pm
Location: Banland.

Post by mudlord »

Glad you find it interesting. :P
Rashidi
Trooper
Posts: 515
Joined: Fri Aug 18, 2006 2:45 pm

Post by Rashidi »

since i'm also a .spc music fan, i'll try it.
... downloading
franpa
Gecko snack
Posts: 2374
Joined: Sun Aug 21, 2005 11:06 am
Location: Australia, QLD
Contact:

Post by franpa »

excellent NSF player for winamp, just need the subsong support added and it will probably be the best one for winamp :P all the ones I tried like nosefart, noseferatu, deliplayer and some others have incorrect volume levels for some channels and other things that make them sound weird.

http://www.mediafire.com/?tvzzzqdzdjk
This Powerblade NSF won't play at all yet my Snakes Revenge NSF file plays... and my Snakes Revenge file starts at FFFFFFF instead of 00 in some programs.
Core i7 920 @ 2.66GHZ | ASUS P6T Motherboard | 8GB DDR3 1600 RAM | Gigabyte Geforce 760 4GB | Windows 10 Pro x64
FirebrandX
Trooper
Posts: 376
Joined: Tue Apr 19, 2005 11:08 pm
Location: DFW area, TX USA
Contact:

Post by FirebrandX »

If you could combine the sound core of this with the features of snesamp, you'd have the perfect spc plugin! BTW I really like the new "sinc" interpolation feature in snesamp. Less distortion and more "crispness" to the channels!
grinvader
ZSNES Shake Shake Prinny
Posts: 5632
Joined: Wed Jul 28, 2004 4:15 pm
Location: PAL50, dood !

Post by grinvader »

GME doesn't aim at adding any non-original features, afaik.
皆黙って俺について来い!!

Code: Select all

<jmr> bsnes has the most accurate wiki page but it takes forever to load (or something)
Pantheon: Gideon Zhi | CaitSith2 | Nach | kode54
Tallgeese
Justice is Blind
Posts: 620
Joined: Wed Jul 28, 2004 3:33 pm
Location: Test
Contact:

Post by Tallgeese »

Very well done. I will replace all my old game plugins with this. I was actually hoping for it when I first heard about GME.

After you get feature parity, might I recommend a box for View Menu?
blargg
Regular
Posts: 327
Joined: Thu Jun 30, 2005 1:54 pm
Location: USA
Contact:

Post by blargg »

GME doesn't aim at adding any non-original features, afaik.
Yep, it's enough trying to accurately emulate things and pass the 100+ SPC validation tests. Actually I do add a few features beyond the emulated system, like channel muting, pseudo-surround killer, and tempo control (and multi-channel reverb for the non-SPC formats).
mastershake1
Rookie
Posts: 19
Joined: Mon Sep 04, 2006 4:03 pm

Post by mastershake1 »

Is there a GME plug-in for foobar2000?
kode54
Zealot
Posts: 1140
Joined: Wed Jul 28, 2004 3:31 am
Contact:

Post by kode54 »

mastershake1 wrote:Is there a GME plug-in for foobar2000?
Yup, there's foo_gep.
mudlord
has wat u liek
Posts: 559
Joined: Tue Sep 11, 2007 2:54 pm
Location: Banland.

Post by mudlord »

Which absolutely rocks, if I may add :P .

Anyways, plugin updated.

See first post for details.
franpa
Gecko snack
Posts: 2374
Joined: Sun Aug 21, 2005 11:06 am
Location: Australia, QLD
Contact:

Post by franpa »

excellent work as always :)just need rar/rsn support for SPC files and sub-song selection in NSF files and your gold :P well thats all i would listen to.

- Timer/seek bar does not move when listening to SPC
- Song loops forever (ignoring the time specified in the ID666 tag)
- does not display filename if no tag is present.
Core i7 920 @ 2.66GHZ | ASUS P6T Motherboard | 8GB DDR3 1600 RAM | Gigabyte Geforce 760 4GB | Windows 10 Pro x64
mudlord
has wat u liek
Posts: 559
Joined: Tue Sep 11, 2007 2:54 pm
Location: Banland.

Post by mudlord »

I'm well aware of those issues 8)


...and issue one is already fixed for next release.
franpa
Gecko snack
Posts: 2374
Joined: Sun Aug 21, 2005 11:06 am
Location: Australia, QLD
Contact:

Post by franpa »

Ok, awesome then =) 8)
Core i7 920 @ 2.66GHZ | ASUS P6T Motherboard | 8GB DDR3 1600 RAM | Gigabyte Geforce 760 4GB | Windows 10 Pro x64
neo_bahamut1985
-Burninated-
Posts: 871
Joined: Mon Sep 10, 2007 11:33 pm
Location: Unspecified

Post by neo_bahamut1985 »

So, what format does this plugin output? SPC? Do I replace that with the SnesAMP plugin or what?
俺はテメエの倒す男だ! 宜しく! お前はもう死んでいる...
mudlord
has wat u liek
Posts: 559
Joined: Tue Sep 11, 2007 2:54 pm
Location: Banland.

Post by mudlord »

AY
GBS
GYM
HES
KSS
NSF
NSFE
SAP
SPC
VGM
VGZ

Those are all the formats it supports.

And yes, due to the SPC emulation core, it is superior to SNESAmp.
neo_bahamut1985
-Burninated-
Posts: 871
Joined: Mon Sep 10, 2007 11:33 pm
Location: Unspecified

Post by neo_bahamut1985 »

Holy crap! Why do some SPCs work while others crash winamp?
Last edited by neo_bahamut1985 on Thu May 15, 2008 4:58 am, edited 3 times in total.
俺はテメエの倒す男だ! 宜しく! お前はもう死んでいる...
Nach
ZSNES Developer
ZSNES Developer
Posts: 3904
Joined: Tue Jul 27, 2004 10:54 pm
Location: Solar powered park bench
Contact:

Post by Nach »

And no GSF? :cry:
May 9 2007 - NSRT 3.4, now with lots of hashing and even more accurate information! Go download it.
_____________
Insane Coding
mudlord
has wat u liek
Posts: 559
Joined: Tue Sep 11, 2007 2:54 pm
Location: Banland.

Post by mudlord »

And no GSF?
I checked out CaitSith2's and zoopd's plugin, and its a mess. Code is absolutely a nightmare, and its a eyesore to read. I dunno whether I'm bothered to even try to clean it up to make the code somewhat usable.
Holy crap! Why do some SPCs work while others crash winamp?
Okay, gimme a list of what crashes.
mudlord
has wat u liek
Posts: 559
Joined: Tue Sep 11, 2007 2:54 pm
Location: Banland.

Post by mudlord »

Ok, awesome then =)
If you are interested, I can give a beta with seeking support. :)
franpa
Gecko snack
Posts: 2374
Joined: Sun Aug 21, 2005 11:06 am
Location: Australia, QLD
Contact:

Post by franpa »

don't worry about it, i can wait for a stable build.
Core i7 920 @ 2.66GHZ | ASUS P6T Motherboard | 8GB DDR3 1600 RAM | Gigabyte Geforce 760 4GB | Windows 10 Pro x64
mudlord
has wat u liek
Posts: 559
Joined: Tue Sep 11, 2007 2:54 pm
Location: Banland.

Post by mudlord »

Updated.
franpa
Gecko snack
Posts: 2374
Joined: Sun Aug 21, 2005 11:06 am
Location: Australia, QLD
Contact:

Post by franpa »

http://www.mediafire.com/?dlqudnmjjl9 [nsf]

no sub song support in the beta for NSF files yet, or at least not for when played via file association.
Core i7 920 @ 2.66GHZ | ASUS P6T Motherboard | 8GB DDR3 1600 RAM | Gigabyte Geforce 760 4GB | Windows 10 Pro x64
mudlord
has wat u liek
Posts: 559
Joined: Tue Sep 11, 2007 2:54 pm
Location: Banland.

Post by mudlord »

Open up the file info box, then try to change the song with the ">>" and "<<" buttons.

And tried that file: Subsongs work fine.
Post Reply