Amiga Mods - mastering advice

VST, AU, AAX, CLAP, etc. Plugin Virtual Effects Discussion
RELATED
PRODUCTS

Post

Manc Chris wrote: Fri Feb 03, 2006 11:25 am a guy I know is landing me with a load of old Amiga tracker mods he made. He wants them remastering
and put to CD.

Now, I dont want this to be a long winded process as it a none payer, and he already owes me
enough favours, so, what sort of generic issues would you imagine these mods having?

I'm thinking of maybe just strapping endorphin's lound and punchy across them all???
My advice: download ModPlug tracker and save individual instruments as WAV tracks. Then import the files into a modern DAW and master there.

Post

v1o wrote: Fri Jan 11, 2019 3:03 am I don’t see why most posters recommend exporting stems and summing in a daw. That change the sound too far from the original Amiga. I’d recommend exporting the stereo mix and sticking it into a mastering chain. That would give you the original 16 bit sound but remastered.
It depends what one wants to do doesnt it? One might want to EQ and effect the stuff separately on a DAW which was not possible on Amiga, but for just stereo summing and master.. yeah I mean both are a possibility available.
Soft Knees - Live 12, Diva, Omnisphere, Slate Digital VSX, TDR, Kush Audio, U-He, PA, Valhalla, Fuse, Pulsar, NI, OekSound etc. on Win11Pro R7950X & RME AiO Pro
https://www.youtube.com/@softknees/videos Music & Demoscene

Post

JKuk991 wrote: Fri Jan 11, 2019 10:10 am
v1o wrote: Fri Jan 11, 2019 3:03 am I don’t see why most posters recommend exporting stems and summing in a daw. That change the sound too far from the original Amiga. I’d recommend exporting the stereo mix and sticking it into a mastering chain. That would give you the original 16 bit sound but remastered.
Good call ;) For some reason everything seemed to Gel together with trackers on the Amiga. Do you think it's the use of D/A that does it?
It also would be the only available call.
Four pages and 12 years and noone reads ALL the text in posts.
In the topic starters second post he writes:
As for the adivce here, thanks guys, remember though, I dont have the mods as such, just stereo wavs of the mods.

Post

OpenMPT doesn't support nearest interpolation with anti-aliasing yet (edit: actually it does, but only for amiga modules and you must enable a special option.) I've planned to implement/add both nearest and linear with FIR interpolation modes for a long time but haven't done so yet. (Had that in Xhip since ~2008, released with nearest=default in v7.)

That would be a crucial part of emulating the "amiga sound". Technically the output is at a variable sample rate (each channel is individually clocked from division of the master, exactly like a "DCO".) This means there is no dissonant aliasing since the aliases line up exactly, the samples are never re-sampled.

Nearest neighbor interpolation produces a sinc() shaped dip in amplitude and so this cuts high frequencies quite a bit.

Technically in more detail the paula uses PWM to produce variable amplitude. The minimum width of a pulse is some fraction of the master clock with a volume level from 0 (nothing) to 65 (full width pulse). This means the effective output bit resolution is 65 * 256 to ~84 dB (>14-bit) rather than 8-bit 48 dB.

In addition most of the paula output buffer circuits have a pair of low-pass filters: first a 6 dB RC filter (a500 = 4421 Hz) followed by a Sallen-Key filter with Q slightly above sqrt(1/2)... so a very slightly resonant (under damped) butterworth filter at ~3000Hz. The "LED filter" butterworth is optional and there is a software configurable bypass. In addition there is a 5.2 Hz 6 dB/o RC high-pass on the output.

Those post-process filters can be applied afterward but the interpolating filter needs to be applied at the source. Rendering individual samples will also use various anti-clicking filters and may result in a significant difference from the module being played back as usual.
Last edited by aciddose on Fri Jan 11, 2019 9:45 pm, edited 1 time in total.
Free plug-ins for Windows, MacOS and Linux. Xhip Synthesizer v8.0 and Xhip Effects Bundle v6.7.
The coder's credo: We believe our work is neither clever nor difficult; it is done because we thought it would be easy.
Work less; get more done.

Post

aciddose wrote: Fri Jan 11, 2019 9:27 pm openmpt doesn't support nearest interpolation with anti-aliasing yet. I've planned to implement both nearest and linear with FIR interpolation modes for a long time but haven't done so yet. (Had that in Xhip since ~2008, released with nearest=default in v7.)

That would be a crucial part of emulating the "amiga sound".
Given how lovely and crunchy Xhip is and definitely brings back 'miggy memories, and how OpenMPT has been my tracker player of choice since it was just ModPlug Tracker (for a while was also my tracker composer as well, but I then moved onto Buzz) I'm definitely crossing my fingers such a feature makes it on OpenMPT....

Post

Renoise supports many mod formats. I haven't tried, but could be worth a closer look. Renoise has an excellent sampler engine and support for all modern stuff such as plugins, stem export, whatever.
Fabien from Tokyo Dawn Records

Check out my audio processors over at the Tokyo Dawn Labs!

Post

mcbpete wrote: Fri Jan 11, 2019 9:40 pm Given how lovely and crunchy Xhip is and definitely brings back 'miggy memories, and how OpenMPT has been my tracker player of choice since it was just ModPlug Tracker (for a while was also my tracker composer as well, but I then moved onto Buzz) I'm definitely crossing my fingers such a feature makes it on OpenMPT....
I made an edit to correct that, I forgot that technically while you're playing .mod files OpenMPT does have a "Use Amiga resampler for Amiga modules", but this depends on some kind of heuristic rather than being a general purpose interpolation mode like the others.

I think it never supports that when you're just playing samples manually, only when actually playing back the module. I'd guess it applies to rendering too, I haven't checked through the source to investigate that yet. I suspect that implementation is copied from the WinUAE source (which I really dislike), but again don't take my word for it.
Free plug-ins for Windows, MacOS and Linux. Xhip Synthesizer v8.0 and Xhip Effects Bundle v6.7.
The coder's credo: We believe our work is neither clever nor difficult; it is done because we thought it would be easy.
Work less; get more done.

Post

Okay I've researched it: yes it's from the WinUAE code and it's absolute garbage. The aliasing is horrible, the kernel is junk and the implementation is insanely inefficient. It doesn't work at all, so not worth the slightest consideration as a solution.

To get it to work you need to both configure the option as well as set "protracker mode" in the module options (for .mod format) then save and re-load the module. While I was testing it the option magically reset itself to disabled too... but the only reason I noticed was that when it's enabled it applies a junk low-pass filter (the FIR kernel includes it) which is completely inaccurate. It's also implemented wrong: it convolves the impulse with the ZOH resampled signal after the fact, not the original PCM! (So it's broken to the point of being totally useless.)

Awful.

I'll chat with the authors about fixing it... I suspect it would be best to entirely replace it as a generic interpolation mode along with anti-aliased linear. They'd be called "nearest" or "ZOH" and "nearest AA" and "linear AA" or similar. It's just a question of: do I personally have the motivation to do the work (it isn't much work, but that's the easy part:) and, are the authors willing to do things my way?
Free plug-ins for Windows, MacOS and Linux. Xhip Synthesizer v8.0 and Xhip Effects Bundle v6.7.
The coder's credo: We believe our work is neither clever nor difficult; it is done because we thought it would be easy.
Work less; get more done.

Post

JKuk991 wrote: Fri Jan 11, 2019 10:10 am
v1o wrote: Fri Jan 11, 2019 3:03 am I don’t see why most posters recommend exporting stems and summing in a daw. That change the sound too far from the original Amiga. I’d recommend exporting the stereo mix and sticking it into a mastering chain. That would give you the original 16 bit sound but remastered.
Good call ;) For some reason everything seemed to Gel together with trackers on the Amiga. Do you think it's the use of D/A that does it?
Yes I think so. It’s like using old 16 bit hardware samplers. The DA is important. And so too is the 16 bit summing resolution on the Amiga.
Last edited by v1o on Sat Jan 12, 2019 3:00 am, edited 1 time in total.
Orion Platinum, Muzys 2

Post

Saffran wrote: Fri Jan 11, 2019 5:50 pm
JKuk991 wrote: Fri Jan 11, 2019 10:10 am
v1o wrote: Fri Jan 11, 2019 3:03 am I don’t see why most posters recommend exporting stems and summing in a daw. That change the sound too far from the original Amiga. I’d recommend exporting the stereo mix and sticking it into a mastering chain. That would give you the original 16 bit sound but remastered.
Good call ;) For some reason everything seemed to Gel together with trackers on the Amiga. Do you think it's the use of D/A that does it?
It also would be the only available call.
Four pages and 12 years and noone reads ALL the text in posts.
In the topic starters second post he writes:
As for the adivce here, thanks guys, remember though, I dont have the mods as such, just stereo wavs of the mods.
Lol no one spotted that!
Orion Platinum, Muzys 2

Post

aciddose wrote: Fri Jan 11, 2019 10:37 pm Okay I've researched it: yes it's from the WinUAE code and it's absolute garbage. The aliasing is horrible, the kernel is junk and the implementation is insanely inefficient. It doesn't work at all, so not worth the slightest consideration as a solution.
Interesting, which version of the Interpolation code was used - RH, Crux, Anti or Sinc ?

Toni seems like he's always striving to make WinUAE the best it can be so I totally would imagine he'd be interested in code that can make the emulation be improved ....

Post

v1o wrote: Sat Jan 12, 2019 2:57 am
JKuk991 wrote: Fri Jan 11, 2019 10:10 am
v1o wrote: Fri Jan 11, 2019 3:03 am I don’t see why most posters recommend exporting stems and summing in a daw. That change the sound too far from the original Amiga. I’d recommend exporting the stereo mix and sticking it into a mastering chain. That would give you the original 16 bit sound but remastered.
Good call ;) For some reason everything seemed to Gel together with trackers on the Amiga. Do you think it's the use of D/A that does it?
Yes I think so. It’s like using old 16 bit hardware samplers. The DA is important. And so too is the 16 bit summing resolution on the Amiga.
Thanks ;)

Post

Saffran wrote: Fri Jan 11, 2019 5:50 pm
JKuk991 wrote: Fri Jan 11, 2019 10:10 am
v1o wrote: Fri Jan 11, 2019 3:03 am I don’t see why most posters recommend exporting stems and summing in a daw. That change the sound too far from the original Amiga. I’d recommend exporting the stereo mix and sticking it into a mastering chain. That would give you the original 16 bit sound but remastered.
Good call ;) For some reason everything seemed to Gel together with trackers on the Amiga. Do you think it's the use of D/A that does it?
It also would be the only available call.
Four pages and 12 years and noone reads ALL the text in posts.
In the topic starters second post he writes:
As for the adivce here, thanks guys, remember though, I dont have the mods as such, just stereo wavs of the mods.
Good point ;) Interesting subject though

Post

mcbpete wrote: Sat Jan 12, 2019 12:31 pm
aciddose wrote: Fri Jan 11, 2019 10:37 pm Okay I've researched it: yes it's from the WinUAE code and it's absolute garbage. The aliasing is horrible, the kernel is junk and the implementation is insanely inefficient. It doesn't work at all, so not worth the slightest consideration as a solution.
Interesting, which version of the Interpolation code was used - RH, Crux, Anti or Sinc ?

Toni seems like he's always striving to make WinUAE the best it can be so I totally would imagine he'd be interested in code that can make the emulation be improved ....
I haven't bothered to look at the WinUAE source to be so informed, I only remember having seen it and used it in the past and being very disappointed at quality/performance.

I believe it's based upon this document: https://pastebin.com/hZwxx4P0

The code itself and its implementation in WinUAE does "work".. the OpenMPT implementation is broken and done wrong. I believe a ringbuffer out-performs the method ("antti" ?) and there are other modern techniques that produce far superior filter kernels and far greater efficiency and flexibility.

See my "cheap-a-blep-a" ("itsa-me-mario!") kernel + implementation here: https://sourceforge.net/p/protracker/co ... /pt_blep.c
https://sourceforge.net/p/protracker/co ... /pt_blep.h

This is an unoptimized implementation because such optimization simply isn't needed. We're generating 4 channels... Xhip does 200+.

Warning, the author regularly does (IMO) silly things and edits my original code/comments, so... I can't vouch for the edited versions :)

For utilization and filter implementation see here: https://sourceforge.net/p/protracker/co ... pt_audio.c

(Same disclaimer, these are not optimal and totally inaccurate, but way more accurate than most other implementations... it's definitely possible to further optimize them or improve their accuracy but I believe the trade-offs are near ideal already.)
Free plug-ins for Windows, MacOS and Linux. Xhip Synthesizer v8.0 and Xhip Effects Bundle v6.7.
The coder's credo: We believe our work is neither clever nor difficult; it is done because we thought it would be easy.
Work less; get more done.

Post

Free plug-ins for Windows, MacOS and Linux. Xhip Synthesizer v8.0 and Xhip Effects Bundle v6.7.
The coder's credo: We believe our work is neither clever nor difficult; it is done because we thought it would be easy.
Work less; get more done.

Post Reply

Return to “Effects”