blakelivingston / DuinoTune

A chiptune Synthesis Library for Arduino
MIT License
62 stars 5 forks source link

Sonic Green Hill Zone converter error #6

Closed dzeveloper closed 7 years ago

dzeveloper commented 7 years ago

Try converting this song: https://dl.dropbox.com/u/68082533/Baleoce%20-%20Sonic%201%20-%20Green%20Hill.xrns Something strange in the output code

blakelivingston commented 7 years ago

Hi! I checked the song out. Unfortunately this one is difficult to convert. The issue with a lot of songs out in the wild is that their samples have different tunings. That is, one instrument might be tuned to middle C, another to A#, and the composer compensates by transposing the notes as they write. The song converter doesn't use the samples in the song, but sets up DuinoTune instruments using special instrument names (check out the instruments in https://github.com/blakelivingston/DuinoTune/tree/master/test_songs/instruments ) so, the song will end up really out of tune. One fix for this might be to have the converter analyse the samples and any tuning offsets in the instruments to compensate, but it could be a fair amount of work. In the past, I've manually converted songs by replacing the song's instruments with the instruments included in https://github.com/blakelivingston/DuinoTune/tree/master/test_songs/instruments one at a time, and using Renoise's advanced pattern editing menu to transpose the notes that match that instrument until it sounds right again. Unfortunately this is a pretty annoying process.

blakelivingston commented 7 years ago

Closing, since it's a bit out of scope to be a universal song converter for now. A quicker feature path to this may also be to create a 'sampler' instrument and allow small samples to play back. converter could have an agressive downsampler.