Jump to content
Sign in to follow this  
Tursi

VGM Compression Tool

Recommended Posts

2 hours ago, OLD CS1 said:

Can it convert sampled sounds from SID files?

No. This is a 60hz playback system, so samples aren't going to work regardless of the source.

 

  • Like 1

Share this post


Link to post
Share on other sites

Now that I've said that, tonight I pushed up voice2psg, which will take in a voice sample in Wave format and output a PSG file that attempts to reproduce it. It's really limited, and doesn't tend to be very clear, but for some samples, it does work, and hey, it's 60hz sample playback. ;)

 

It's based on Artrag's Matlab concept, but several attempts at porting the code to C++ just had me walk away - every function I looked at linked to two more massive ones, and keeping the arrays straight was driving me crazy. ;) I did get about halfway through it all if anyone wants that code, but likely I'm going to discard that work in favor of tuning this newer tool.

 

I don't have a good example ready, but you want a very clear voice sample, with no background sounds, loud and crisp. With all that, the result should be barely recognizable in the output. ;)

 

TI1.wav

 

Ultimately, this tool won't often be useful, but for screams and hoots it actually does pretty decently, so you can get some sounds in there if you need them.

 

 

  • Like 2

Share this post


Link to post
Share on other sites
On 8/2/2020 at 6:58 AM, Tursi said:

Now that I've said that, tonight I pushed up voice2psg, which will take in a voice sample in Wave format and output a PSG file that attempts to reproduce it. It's really limited, and doesn't tend to be very clear, but for some samples, it does work, and hey, it's 60hz sample playback. ;)

 

It's based on Artrag's Matlab concept, but several attempts at porting the code to C++ just had me walk away - every function I looked at linked to two more massive ones, and keeping the arrays straight was driving me crazy. ;) I did get about halfway through it all if anyone wants that code, but likely I'm going to discard that work in favor of tuning this newer tool.

 

I don't have a good example ready, but you want a very clear voice sample, with no background sounds, loud and crisp. With all that, the result should be barely recognizable in the output. ;)

 

TI1.wav 104.18 kB · 6 downloads

 

Ultimately, this tool won't often be useful, but for screams and hoots it actually does pretty decently, so you can get some sounds in there if you need them.

 

 

Alright, YEAH!

I've heard artrag's results and liked them. Yours is really intelligible once you know what it's supposed to be saying. The intonation and slope at the ends of words comes through, its a big hint to the brain.

 

And, this style would be pretty fun as robot or boss voices in a game. 

 

Again, WOW!

 

Share this post


Link to post
Share on other sites

Finally back on this task, and tonight I pushed up something I've wanted forever, and one of the reasons I started this update - md2psg. MD is MegaDrive, aka the Sega Genesis. MegaDrive VGMs can now be read and output in a format loosely compatible with the PSGs used here.

 

It's far from perfect. I think the envelopes must be working, but honestly I am having a lot of trouble understanding how the MD generates the final volume on a channel at any given time, since emulators work at the sample level. What I have seems good enough as a starting point, anyway.

 

Of course, with 6 FM channels PLUS a TI PSG in there, the task of getting 10 channels playing on a TI is left as an exercise for the reader. ;) But that's the point of this whole toolchain - to provide the tools needed to tweak and manipulate this sort of music into something usable.

 

I've posted a video here with a number of conversions. Since the video was recorded I fixed the desynchronization issue that broke Scrap Brain Zone, and also rebalanced the volumes by default a bit, so I think the starting point is pretty decent. It also converts the tune in one pass for both chips - in the video you'll see me running the two converters separately.

 

https://open.lbry.com/@tursilion:1/VgmComp2---Sega-Genesis-to-SN-Example:f

 

Of course, the files are are pushed up to Github with binaries and docs in the dist folder. It's nearly there, just a few tools left to build (and another player if I decide I want to do it... waiting till I get that far before I delete it ;) )

 

  • Like 7

Share this post


Link to post
Share on other sites

(Now with much improved level balance between the FM channels as well as between the FM and SN.)

 

  • Like 2

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...