SPC player from bsnes

Anything else related to bsnes goes there.
Locked
SmartOne
Tool
Posts: 102
Joined: Sun Aug 31, 2008 7:48 am

Post by SmartOne »

Anyone know anything about the scratchy sound?
franpa
Gecko snack
Posts: 2372
Joined: Sun Aug 21, 2005 11:06 am
Location: Australia, QLD
Contact:

Post by franpa »

http://forums.winamp.com/showthread.php ... did=202525
Heres a working archiver plugin for RAR files...

http://www.winamp.com/plugins/details/24989 doesn't seem to work... or I fail at command lines :( I would love this one more then the above because you can specify RSN extensions.


I notice scratchiness on the "edge" of the sounds on some instruments in MGME (like in SNESamp.) Is that what SNES is supposed to sound like? At the beginning of the song Cotton Island from the game Plok! (everyone should have this set,) the scratchiness is easy to hear.
You mean, "crackle" right?
Core i7 920 @ 2.66GHZ | ASUS P6T Motherboard | 8GB DDR3 1600 RAM | Gigabyte Geforce 760 4GB | Windows 10 Pro x64
blargg
Regular
Posts: 327
Joined: Thu Jun 30, 2005 1:54 pm
Location: USA
Contact:

Post by blargg »

Playing plok-12.spc from the soundtrack on snesmusic.org with SNES hardware has some slight static at the beginning:
plok_12_on_hw.mp3
It sounds the same in my SPC-700 emulator, with both the accurate and fast DSP versions. I'd guess it's caused by non-smooth volume envelope changes, like the ones audible in the two quieter Maridia tracks from Super Metroid.
SmartOne
Tool
Posts: 102
Joined: Sun Aug 31, 2008 7:48 am

Post by SmartOne »

Thanks to both of you!

I'm using XMPlay for MGME with its native RAR support, though. You can force it to open RSNs.

I'm assuming the volume envelope thing is SNES accurate?
blargg
Regular
Posts: 327
Joined: Thu Jun 30, 2005 1:54 pm
Location: USA
Contact:

Post by blargg »

SmartOne wrote:I'm assuming the volume envelope thing is SNES accurate?

I don't follow. The recording I posted above is that SPC playing on a Super NES console. Since the clicks are audible, either that's accurate, or Nintendo sold me a SNES that's not accurate. :)
SmartOne
Tool
Posts: 102
Joined: Sun Aug 31, 2008 7:48 am

Post by SmartOne »

blargg wrote:I don't follow. The recording I posted above is that SPC playing on a Super NES console. Since the clicks are audible, either that's accurate, or Nintendo sold me a SNES that's not accurate. :)


Numerically. Technically. You know?

I'm talking about the emulator bsnes, and/or MGME.
blargg
Regular
Posts: 327
Joined: Thu Jun 30, 2005 1:54 pm
Location: USA
Contact:

Post by blargg »

bsnes uses my accurate DSP emulator, which has been tested a bunch to behave exactly the same even in very obscure ways. MGME probably uses the 3x faster version of the DSP, which is only slightly less accurate in some obscure ways; volume envelopes are emulated the same on both.
mudlord
has wat u liek
Posts: 559
Joined: Tue Sep 11, 2007 2:54 pm
Location: Banland.

Post by mudlord »

I used the code from your GME patch. :P

Not sure what version of the DSP you used in that though...
blargg
Regular
Posts: 327
Joined: Thu Jun 30, 2005 1:54 pm
Location: USA
Contact:

Post by blargg »

The comment at the top of Spc_Dsp.h tells which it is. It's probably the fast version. To switch versions, just swap out the Spc_Dsp.h and Spc_Dsp.cpp files. Personally I don't think the accurate one is worth 3x the processor usage, but I don't have a modern GHz machine.
franpa
Gecko snack
Posts: 2372
Joined: Sun Aug 21, 2005 11:06 am
Location: Australia, QLD
Contact:

Post by franpa »

http://www.winamp.com/plugins/details/24989

How do you setup the command line parameters for the latest WinRAR beta?
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 »

The comment at the top of Spc_Dsp.h tells which it is. It's probably the fast version. To switch versions, just swap out the Spc_Dsp.h and Spc_Dsp.cpp files. Personally I don't think the accurate one is worth 3x the processor usage, but I don't have a modern GHz machine.


k, just checked..

I'm using your fast version. :P
mudlord
has wat u liek
Posts: 559
Joined: Tue Sep 11, 2007 2:54 pm
Location: Banland.

Post by mudlord »

Sorry for taking so long.

Currently, I am in the middle of writing a SNES audio plugin for Winamp/XMPlay as I type this, that strictly uses blargg's emu only, which in turn, is what byuu uses. Since both versions (blargg's and byuu's), give exactly the same output, I figured this will be okay. I will be using blargg's "accurate" DSP emu, not the "fast" version if people want to do listening tests. The plugin is pretty basic though. :P

EDIT: Okay, here: Image
franpa
Gecko snack
Posts: 2372
Joined: Sun Aug 21, 2005 11:06 am
Location: Australia, QLD
Contact:

Post by franpa »

This is irrelevent to MGME, correct mudlord?

EDIT: rename in_mgme.dll to in_zmgme.dll to make it load last so that SPC's are played with in_spc.
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 »

Well, the file I attached is the exact same emu which is used in BSNES. in_mgme uses blargg's Game_Music_Emu library, with his snes_spc patches.

The plugin I attached uses snes_spc only. Nothing else. It is made for any listening tests between SNESAmp and BSNES's audio core.
franpa
Gecko snack
Posts: 2372
Joined: Sun Aug 21, 2005 11:06 am
Location: Australia, QLD
Contact:

Post by franpa »

Yep, I updated my post above with instructions for using your in_spc without needing to remove in_mgme.
Core i7 920 @ 2.66GHZ | ASUS P6T Motherboard | 8GB DDR3 1600 RAM | Gigabyte Geforce 760 4GB | Windows 10 Pro x64
blargg
Regular
Posts: 327
Joined: Thu Jun 30, 2005 1:54 pm
Location: USA
Contact:

Post by blargg »

You can copy the accurate Spc_Dsp.h and Spc_Dsp.cpp files into your MGME plugin source, recompile, and get fully accurate DSP emulation in GME. Shouldn't be any need to create a separate plugin. But now that you have, I'm sure some audiophiles will swear it sounds different. Now you'll have to support this separate plugin :)
mudlord
has wat u liek
Posts: 559
Joined: Tue Sep 11, 2007 2:54 pm
Location: Banland.

Post by mudlord »

You can copy the accurate Spc_Dsp.h and Spc_Dsp.cpp files into your MGME plugin source, recompile, and get fully accurate DSP emulation in GME. Shouldn't be any need to create a separate plugin.


I know :P , I just felt the need for something to help with listening tests. And plus, I like plugins that are minimalist. :P Hence why I coded it.
VideoGameScrapBook

Post by VideoGameScrapBook »

I'm looking forward to your plugin! I'm currently releasing a series of albums that feature all of the original versions of the songs that were rearranged from Brawl, and I'm interested in exporting the audio in the most accurate way possible. Since you guys probably know your stuff when it comes to accurate audio emulation, I have a few questions that I've had a difficult time finding answers for:

1. In what ways is bsnes audio more accurate than what's produced by SNESamp? What are some noticeable differences that you get with a cycle accurate core?
2. What is the most accurate NES plugin, and how exactly is it more accurate than NotSo Fatso (mono, all filters disabled)?
3. What sample rate and resolution would you recommend for exported NES audio?
4. I assume a MAME gameplay sound dump will suffice, but do you know of an emulated sound format for the hardware used by Donkey Kong Arcade?
blargg
Regular
Posts: 327
Joined: Thu Jun 30, 2005 1:54 pm
Location: USA
Contact:

Post by blargg »

VideoGameScrapBook wrote:In what ways is bsnes audio more accurate than what's produced by SNESamp? What are some noticeable differences that you get with a cycle accurate core?

I don't think anyone knows how it compares. I don't think anyone's run my thorough DSP test suite on it yet. I doubt anyone could tell the difference, except for a few cases where some obscure inaccuracy is exposed. An accurate player will click in Donkey Kong Country - Fear Factory about 41 seconds in, and Cave Dweller Concert around 71 seconds in (1:11) on the right side. The opening monster scream on Chrono Trigger - Last Battle also sounds slightly off if the pitch modulation isn't emulated exactly (you'll have to compare with an accurate player to hear the difference). Those are about the only noticeable differences between my accurate and fast DSPs, but there's no limit to how inaccurate an emulator can be.
SmartOne
Tool
Posts: 102
Joined: Sun Aug 31, 2008 7:48 am

Post by SmartOne »

mudlord wrote:Image


Is it just me, or does that link not work?

I like the idea of a simple and accurate SPC plugin, though. Thanks! No GME = no extra filtering, right?
franpa
Gecko snack
Posts: 2372
Joined: Sun Aug 21, 2005 11:06 am
Location: Australia, QLD
Contact:

Post by franpa »

yep, that site seems to no longer be up due to technical issue's. GME never did any "filtering". it just used some additional changes to the spu core that are not present in BSNES.
Core i7 920 @ 2.66GHZ | ASUS P6T Motherboard | 8GB DDR3 1600 RAM | Gigabyte Geforce 760 4GB | Windows 10 Pro x64
SmartOne
Tool
Posts: 102
Joined: Sun Aug 31, 2008 7:48 am

Post by SmartOne »

Would you mind uploading your copy somewhere? :)

I looked around on mudlord's site earlier today. Now the site is terminated. :lol:
franpa
Gecko snack
Posts: 2372
Joined: Sun Aug 21, 2005 11:06 am
Location: Australia, QLD
Contact:

Post by franpa »

Core i7 920 @ 2.66GHZ | ASUS P6T Motherboard | 8GB DDR3 1600 RAM | Gigabyte Geforce 760 4GB | Windows 10 Pro x64
SmartOne
Tool
Posts: 102
Joined: Sun Aug 31, 2008 7:48 am

Post by SmartOne »

Thanks much!

It would be extremely nice if in_spc supported track names.
Seeking would be great too.
Last edited by SmartOne on Sun Sep 07, 2008 4:09 am, edited 1 time in total.
franpa
Gecko snack
Posts: 2372
Joined: Sun Aug 21, 2005 11:06 am
Location: Australia, QLD
Contact:

Post by franpa »

This is probably a Winamp bug but... A played file will show the file name, viewing the File Information (and ok'ing the message) will make it show the full path and file name :O
Core i7 920 @ 2.66GHZ | ASUS P6T Motherboard | 8GB DDR3 1600 RAM | Gigabyte Geforce 760 4GB | Windows 10 Pro x64
Locked