Closed drfiemost closed 6 months ago
It can be implemented as an AutoFilter option in sidplayfp, which will set the filter parameter based on the tune author, and maybe extend it to tune specific setting in a future revision if needed.
Originally posted by @drfiemost in https://github.com/libsidplayfp/libsidplayfp/discussions/93#discussioncomment-7402145
well, my idea was to implement a switch for changing the filter curve setting so the user wouldn't have to change the .ini file for each tune, so the filtercurve parameter on the file will be just a default.
so for example, instead of changing filtercurve, you run
sidplayfp --fcurve=0.7 tune.sid
.
That's a good idea, then we could use --fcurve=auto
for suggested setting.
true, that'll make it very convenient!
Or "auto" could be the default.
Available in 2.6, will be improved in 2.7
Unfortunately, there is no way to get the 6581 filter "right", as there is too much variation even between chips made in the same factory on the same day.
My idea centers around the logic that most composers from the golden age used their C64 their entire career.
So why not create a small lookup table for each composer (at least for the big ones) that adjusts the filter settings for the 6581?
e.g. for David Dunn I would personally set the filterCurve to 1.0. Simply load the tune "Jump Jet", and you will hear that voices 2 & 3 are almost silent from 0:20 to 0:38 and then again from 0:45 to 0:51. If you set the filter curve to 1.0, suddenly, you can clearly hear the voices playing. If you listen to the other tunes from David Dunn, you will find that all of them sound much better.
For Martin Galway it's a similar story. There, I found a setting of 0.6 - 0.65 to be the most pleasant. You can hear the filter doing something, whereas it sounds a bit thin/bland with the defaults.
Nobody can claim they've ever heard the intended versions unless they composed it, so I propose tuning the filter settings by ear for the biggest 20-30 composers that used 6581. They should be tweaked so that the filter FX are not too subtle to be almost (or entirely) inaudible but also not so strong that the volume between voices becomes unbalanced.
I would be willing to write a small class that returns "recommended" filterCurve settings when feeding in a composer name. It would just be an
std::unordered_map
that returns 0.5 (or -1.0?) for unrecognized names.I would also love to provide these tunings, listen to feedback, etc., but I want to ensure that I didn't forget anything and that my idea makes sense.
I think this would be a very welcome "fix" that, for the first time, actually represents the artist's intent. Everyone would hear these old tunes fresh for the first time, the way they were (probably) intended.
Somebody will undoubtedly mention that we could contact the original authors and ask for their input, but I have my doubts about that. Some are no longer reachable (deceased, moved on, and don't care anymore, no contact info available, etc.), and I don't think we can rely on their memory anyway, as these tunes were made 30-35 years ago.
Originally posted by @reFX-Mike in https://github.com/libsidplayfp/libsidplayfp/discussions/93