# Is SPC still the "best" format for Super NES music?



## ChiefReginod (Dec 5, 2020)

SPC is reliable and works in most VGM players, but it has its limitations... namely the lack of track length data (EDIT: This isn't true after all, check my next post below). Is there a more current format that includes track lengths? Or at least some way to effect this with SPC files (playlists, plugins, etc)?

Thanks in advance, and since this sub-forum moves a little slowly feel free to necro post as needed.


----------



## Silent_Gunner (Dec 6, 2020)

ChiefReginod said:


> SPC is reliable and works in most VGM players, but it has its limitations... namely the lack of track length data. Is there a more current format that includes track lengths? Or at least some way to effect this with SPC files (playlists, plugins, etc)?
> 
> Thanks in advance, and since this sub-forum moves a little slowly feel free to necro post as needed.



It's perfect if you want to convert to FLAC. Just a warning: you will have to amplify every individual track if you want the volume to have parity with other music. Unless someone wants to tell me how to amplify a bunch of music tracks at once using Audacity, preferably.


----------



## ChiefReginod (Dec 6, 2020)

I think I must have some old rips or something, because I checked some of my other SPCs and about half of them _do_ have the track lengths stored. So, I guess I should update my collection.

However, I just read that the SPC format does have its limitations and some soundtracks can't be ripped. _J.J.R. Tolkein's Lord of the Rings: Volume I_ is the first example I found so far, and I found a miniSNSF rip of that soundtrack but only a few tracks play properly. The rest have a lot of static. If anyone can offer any info on these unsupported soundtracks I would be grateful.



Silent_Gunner said:


> It's perfect if you want to convert to FLAC. Just a warning: you will have to amplify every individual track if you want the volume to have parity with other music. Unless someone wants to tell me how to amplify a bunch of music tracks at once using Audacity, preferably.


It's actually really easy to do that in foobar2000. Just select the files you want to convert, right-click, and then click...

Convert > ... > Processing > ReplayGain ...

Source Mode: Setting this to "album" will give you more uniform levels from track to track.
Processing: "apply gain and prevent clipping according to peak"

Then just move the slider next to "Without RG info" to raise the volume as you see fit. You can do this whole process with ReplayGain instead if you prefer, but doing it without it gives you a bit more control. Continue on with the conversion and you're done.

Of course, this will require that you've already added a FLAC converter to your foobar2000 install. If you need help doing that just let me know. Alternatively you could just convert them to WAV and then batch convert to FLAC some other way. Also, if you're new to foobar and don't know how to get it to play/convert SPCs, just install the GEP plugin and you're good to go.


----------



## FAST6191 (Dec 6, 2020)

Silent_Gunner said:


> Unless someone wants to tell me how to amplify a bunch of music tracks at once using Audacity, preferably.



There are probably better ways, and indeed players that will do it automatically across a library or a song.

However while the command line options are limited for audacity
https://manual.audacityteam.org/man/scripting_reference.html
https://manual.audacityteam.org/man/macros.html

Should be able to import something, run a normalise command and export it, and if you can do it for one command you can do it for 200.

Go with another fun audio conversion tool like SoX ( http://sox.sourceforge.net/ )
https://madskjeldgaard.dk/posts/sox-tutorial-batch-processing/

or maybe ffmpeg
https://superuser.com/questions/323119/how-can-i-normalize-audio-using-ffmpeg

Far simpler time with that one, probably the same results as well as both the two approaches to normalisation (which conceptually is not a complicated task) are generally well known and I would not be surprised to find they all share a common source (pun, not pun, reader to decide for that one).

As for best SNES audio format. Afraid I don't really keep up with things. Every few years some forum somewhere gets excited about a new format and maybe does a bunch of rips. In the end it usually dies out though because it is only supposed by a handful of things on a PC and not much else, even if in some small way it is technically better.


----------



## ChiefReginod (Dec 6, 2020)

FAST6191 said:


> There are probably better ways, and indeed players that will do it automatically across a library or a song.
> 
> However while the command line options are limited for audacity
> https://manual.audacityteam.org/man/scripting_reference.html
> ...


Great info. ffmpeg never ceases to amaze me.

A distinction should probably be made between "applying gain" and "normalizing". Normalization is definitely the better method if you want uniformity from track to track without loss of quality. Applying gain is the more brute force method, basically the same as raising the volume. I think the method I posted with foobar2000 is more of a brute force method, but since you can set it to apply gain uniformly among multiple tracks it still works out pretty well.


----------



## ChiefReginod (Dec 6, 2020)

I did some searching. Here are my findings (TL;DR at the end)...

SPC is still the dominant format. Track length is stored in a tag at the end of each file, so whether an SPC has that data or not depends on if anyone took the time to add it. Fortunately, most SPCs now have this data. It's also common now for SPC sets to be packed into RAR files with the extension renamed to RSN. You can extract them to separate SPCs with 7-zip if needed.

There are some soundtracks that can't be ripped to SPC format due to technical reasons. This led to the creation of the SNSF format. There aren't as many of these available since they're harder to make, but it's the only option for the soundtracks that can't be ripped to SPC.

SNSF/miniSNSF plugins for foobar2000 and Winamp:
http://www.vgmpf.com/Wiki/index.php?title=SNSF

See also:
http://www.vgmpf.com/Wiki/index.php?title=SPC

It should be noted that the Highly Competitive plugin for Winamp (linked above) seems to have better compatibility than the other players. It's the only plugin that seemed to play The Lord of the Rings correctly.

TL;DR: Update your old SPC files if they're missing track lengths. Use SNSF for the few soundtracks that can't be ripped to SPC. Get the plugins/players in the links above.


----------



## Silent_Gunner (Dec 6, 2020)

ChiefReginod said:


> I did some searching. Here are my findings (TL;DR at the end)...
> 
> SPC is still the dominant format. Track length is stored in a tag at the end of each file, so whether an SPC has that data or not depends on if anyone took the time to add it. Fortunately, most SPCs now have this data. It's also common now for SPC sets to be packed into RAR files with the extension renamed to RSN. You can extract them to separate SPCs with 7-zip if needed.
> 
> ...



Are SNSFs for stuff like the Tales of Phantasia SNES opening with the vocals?


----------



## ChiefReginod (Dec 6, 2020)

Silent_Gunner said:


> Are SNSFs for stuff like the Tales of Phantasia SNES opening with the vocals?


Yeah. I just tried it out in foobar2000 and it played fine. It's stored as two separate tracks though (sfx-0101 and music-0002).


----------

