Aliasing (yup that old chestnut once again).

This forum is for discussing Reason. Questions, answers, ideas, and opinions... all apply.
per-anders
Posts: 224
Joined: 09 Jul 2015

10 Sep 2017

So, it's been talked about to death, but I was just in a discussion elsewhere where this came up. And honestly at this point it's just embarrassing as a Reason user.

Not only do many of Reason's RE's not upsample, but even worse there is no point in using Reason at a sample rate other than your desired output because it doesn't filter and downres the output on export, no it literally runs the project at the target output sample rate downresing the audio going in to the project. :/

You can test this yourself, just run a subtractor shifting pitch into a Scream.

1. Set Reason's sample rate to 44.1k,
2. play the project to hear how bad the aliasing artifacts are and
3. export at 44.1k
4. now set Reason's sample rate to 96k
5. play things back to hear how much better than before (but still present) the aliasing artifacts are and
6. export at 44.1k.
7. Now listen to your audio files. They'll be identical. They'll sound like 44.1k playback inside of Reason.

You can solve this by using Rewire and exporting via another DAW such as Studio 1. But it becomes a bit of a pig to do so every single time you want to bounce stuff down.

Oh and in case you were wondering, here's the difference just changing the rate to 96k gives you :

http://www.peranders.com/music/demostuf ... _v_96k.wav

So. Props. Please fix this. On export just filter and downres the output only if the export sample rate doesn't match the project sample rate. Either make it so that the entire effects pipepline itself runs at a high sample rate with maybe optional little inbuilt low pass filters after each active effect (perhaps part of the RE itself outside of the control of devs) to avoid aliasing artifacts, or go in and fix each and every one of the inbuilt and plugins RE's that don't internally upsample, and make them upsample to avoid aliasing artifacts.

It's hard to recommend my friends use Reason when these basics are broken.

User avatar
dioxide
Posts: 1781
Joined: 15 Jul 2015

10 Sep 2017

Interesting. Care to share the Song file so others can try it?

per-anders
Posts: 224
Joined: 09 Jul 2015

10 Sep 2017

Sure thing, see attached.
Attachments
horrible_aliasing.zip
(117.95 KiB) Downloaded 65 times

esefelipe
Posts: 48
Joined: 20 Jan 2015

10 Sep 2017

I've noticed that Reason synths sound remarkably better at 96k. I just can't commit to a 96k workflow.

Another workaround - why not bounce all the tracks at the higher rate, and then use a dedicated conversion app to downsample them to your target?

per-anders
Posts: 224
Joined: 09 Jul 2015

10 Sep 2017

Yeah that works too. But really we shouldn't have to. You want things to work the other way around, 44.1k/48k project, but all effects and instruments running at some much higher sample rate. No aliasing anywhere.

User avatar
EpiGenetik
Posts: 410
Joined: 19 Jan 2015
Location: Glasgow, EU

10 Sep 2017

per-anders wrote:
10 Sep 2017
So, it's been talked about to death, but I was just in a discussion elsewhere where this came up. And honestly at this point it's just embarrassing as a Reason user.

Not only do many of Reason's RE's not upsample, but even worse there is no point in using Reason at a sample rate other than your desired output because it doesn't filter and downres the output on export, no it literally runs the project at the target output sample rate downresing the audio going in to the project. :/

You can test this yourself, just run a subtractor shifting pitch into a Scream.

1. Set Reason's sample rate to 44.1k,
2. play the project to hear how bad the aliasing artifacts are and
3. export at 44.1k
4. now set Reason's sample rate to 96k
5. play things back to hear how much better than before (but still present) the aliasing artifacts are and
6. export at 44.1k.
7. Now listen to your audio files. They'll be identical. They'll sound like 44.1k playback inside of Reason.

You can solve this by using Rewire and exporting via another DAW such as Studio 1. But it becomes a bit of a pig to do so every single time you want to bounce stuff down.

Oh and in case you were wondering, here's the difference just changing the rate to 96k gives you :

http://www.peranders.com/music/demostuf ... _v_96k.wav

So. Props. Please fix this. On export just filter and downres the output only if the export sample rate doesn't match the project sample rate. Either make it so that the entire effects pipepline itself runs at a high sample rate with maybe optional little inbuilt low pass filters after each active effect (perhaps part of the RE itself outside of the control of devs) to avoid aliasing artifacts, or go in and fix each and every one of the inbuilt and plugins RE's that don't internally upsample, and make them upsample to avoid aliasing artifacts.

It's hard to recommend my friends use Reason when these basics are broken.
Try using it at 48k, that's the happy medium for Subtractor :)

User avatar
Loque
Moderator
Posts: 11175
Joined: 28 Dec 2015

11 Sep 2017

Agree, thats really bad. Always wished there was a butto to enable high resolution on rendering. But the problem may be, that the sound is different at the point you created it. Sometimes artifacts sound interesting.
Reason12, Win10

User avatar
bitley
Posts: 1673
Joined: 03 Jul 2015
Location: sweden
Contact:

11 Sep 2017

Subtractor is not actually best seen as a VA; It's better seen as a Wavetable synth.

User avatar
Exowildebeest
Posts: 1553
Joined: 16 Jan 2015

11 Sep 2017

If you export at 44.1k, then Reason renders at 44.1k regardless of the project sample rate. It doesn't render at 96k and then downsamples to 44.1k. I assume this is by design, not in error.

If you want the 96k experience in a 44.1k end result, you need to export at 96k and downsample afterwards with a good downsampler (heavy frequency shifting devices like Echobode can make life tough for any downsampler btw).

And indeed, 96k does sound better for a lot of Reason devices. I used to work at 96k around the early RE era. It didn't last, because it's just too heavy on the CPU nowadays.

per-anders
Posts: 224
Joined: 09 Jul 2015

11 Sep 2017

It's clearly in error. Your output should sound as it sounds on playback. If it differs or changes then it's useless. Every other DAW I've tried does this correctly. It's also more expensive/slow the way Reason does it, because it requires conversion of multiple audio files while on export all it would need to do is convert a single stream as it's being exported.

User avatar
selig
RE Developer
Posts: 11685
Joined: 15 Jan 2015
Location: The NorthWoods, CT, USA

11 Sep 2017

per-anders wrote:
11 Sep 2017
It's clearly in error. Your output should sound as it sounds on playback. If it differs or changes then it's useless. Every other DAW I've tried does this correctly. It's also more expensive/slow the way Reason does it, because it requires conversion of multiple audio files while on export all it would need to do is convert a single stream as it's being exported.
I don't know if in error if this is how Reason was designed to work…
But to address your issue I would export at 96k if working at 96k (always best to have a full res version on file).
Then import the file in Reason @ 44.1 kHz (and export at 44.1 kHz) for your lower res version, as audio files area handled different than synths/FX and the results will sound exactly as playback sounds.
Selig Audio, LLC

User avatar
Exowildebeest
Posts: 1553
Joined: 16 Jan 2015

11 Sep 2017

per-anders wrote:
11 Sep 2017
It's clearly in error. Your output should sound as it sounds on playback. If it differs or changes then it's useless.
Unless you specifically tell it to render at a different sample rate. Which is what the dialog on export is for.

In Ableton it's the other way around - you have to change the project sample rate, to actually change the rendering sample rate - the dialog for exporting in Ableton is for selecting what sample rate the final file should be converted to after rendering.

Basically, Reason does not do downsampling after rendering. It doesn't have that feature. I'd call it a lack of a feature instead of an error.

per-anders
Posts: 224
Joined: 09 Jul 2015

11 Sep 2017

It's really not a design choice (unless laziness is design these days) it's an error. If you offer the option to export at a different sample rate than the project is running then it shouldn't run the project at the lower sample rate. It's not only inefficient it actually gives you the incorrect output (defined as not what any user would ever expect).

The other problem is that even if you do use 96k (which is silly really, because it just wastes HD space and bandwidth) it wont completely eradicate aliasing. This needs to be done in the black box that is Reason or the individual plugins using a much higher sampling rate.

Ideally we should all be working at flat 44.1k or 48k if you work in TV or radio, with nice small audio files and no aliasing, then just picking whatever output we want. In fact we shouldn't ever really need to work at anything other than 44.1k if import and export were accurate and export rate could just be a one time set and forget thing in the audio preferences.

This stuff should be fixed. You shouldn't need to export at a high sample rate and build new projects or use other software to downres it, or use Rewire and a DAW that works to fix it. Imagine trying to explain this to a user of any other DAW. Can you think of a harder sell?

Reason does it poorly right now. But in a way that's a good position to be in if they ever decide to actually fix this stuff. They could be the first DAW to implement upsampling throughout the insert chain/rack. That would not only be more efficient for processing and memory than each and every plugin individually upsampling, calculating, filtering and downsampling, but also less destructive, as the low-pass filters between the RE's would be working in the ultrasonic range and can be low cost shallow slope calculations with relatively few samples and latency. You'd only need a single normal low-pass filter at the very end before decimating. But it would instantly upgrade all legacy VST's and RE's. If necessary the option could be added to down-res certain RE's and VST's for compatibility.

Anyhow, as much as I'd love if it got fixed that way and Reason became the best sounding DAW out there - the only thing I really care about is that it gets fixed at all. We shouldn't have to deal with this stuff, unless some deviant wanted to write an aliasing artifact RE for other perverts, but that's their creative choice, not something thrust upon us all like Madonna's crotch.

User avatar
dioxide
Posts: 1781
Joined: 15 Jul 2015

12 Sep 2017

Subtractor was designed for the hardware of the time, as is the case with all synths, software and hardware alike. So like an early hardware VA synth there might be some aliasing. The example you give is particularly bad but you're going to have to replace it with another synth if you want no aliasing. I have replaced some patches with Thor over the years as Subtractor patches using a Sine wave makes the aliasing clearly audible.

I found it interesting that the original Roland Aira gear was all fixed at 96kHz sample rate, because they knew their models needed to sound good and dropping the sample rate affects the DSP. The TR-8 can now run at lower sample rates but I think the System-1 is still fixed at 96kHz.

User avatar
Oquasec
Posts: 2849
Joined: 05 Mar 2017

12 Sep 2017

If you export to 96khz while you working in 48khz that do anything?
would converting that 96khz back to 48khz do something?
Producer/Programmer.
Reason, FLS and Cubase NFR user.

User avatar
JiggeryPokery
RE Developer
Posts: 1174
Joined: 15 Jan 2015

12 Sep 2017

per-anders wrote:
10 Sep 2017


1. Set Reason's sample rate to 44.1k,
2. play the project to hear how bad the aliasing artifacts are and
3. export at 44.1k
4. now set Reason's sample rate to 96k
5. play things back to hear how much better than before (but still present) the aliasing artifacts are and
6. export at 44.1k.
7. Now listen to your audio files. They'll be identical. They'll sound like 44.1k playback inside of Reason.

It's hard to recommend my friends use Reason when these basics are broken.


I'm not entirely convinced this is an error.

To the best of my knowledge, and feel free to correct me if I'm wrong here, but Reason's export rate is entirely independent of the system rate. In orther words, if you have your audio driver set to 96kHz, but set the export from Reason to 44.1kHz, then of course all the devices will be running at 44.1Hz (and using device-level automatic or user-applied oversampling where available) for that export, because that's what you've told Reason to export it at.

It works the other way too, you can run your system at 44.1kHz and just export at 96kHz from the export sample-rate dialogue to avoid aliasing on the export, while still being able to play a track without hitting CPU limits. You don't need to physically change the system rate.

You are confusing export sample rate with downsampling. You're assuming that running the system sample rate at 96kHz means that Reason exports at that rate but also then downsamples that to 44.1 when you selected that as the rate on export. AFAIK, it doesn't do that. If you want a 96kHz export, you need to select the 96kHz export option. You then downsample the 96kHz export to a 44.1kHz via, e.g., Audacity. Only then can you largely guarantee that you have an alias-free render of softsynths at 44.1k.

User avatar
Loque
Moderator
Posts: 11175
Joined: 28 Dec 2015

12 Sep 2017

I must say, i am pretty curious about a few things and i was not really thinking about them in the past. I just thought, there is a internal calculation precision (64bit) and only the output will be reduced to lets say 44.1khz. But after reading all the comments, the "dither" features in my mastering RE are pretty useless now, except i export in a high res 96khz audio, than reimport, than master with this. But i am still not sure, if when i chose 44.1khz as output for the export the mastering RE dither can do its best. To me it sounds all like a big weakness now in Reason, to not be able to have a full quality rendering option or at least to choose the rendering quality and the output bitrate individually.

I did not used 96khz often in the past, because some RE have problems with their timings, but as described above, not sure if it helps anyway if the final output is a low resolution and the devices work at that resolution instead of highest possible resolution.

In the end, i now really think Reason lacks a simple quality feature and i dont trust the "internal precision" thing anymore. Maybe i overlooked something :? :?:
Reason12, Win10

seqoi
Posts: 417
Joined: 12 Aug 2017

12 Sep 2017

per-anders wrote:
11 Sep 2017
It's really not a design choice (unless laziness is design these days) it's an error. If you offer the option to export at a different sample rate than the project is running then it shouldn't run the project at the lower sample rate.
Yeah when looking at it from the perspective you set up - i can relate to it. And indeed every other DAW works normally in that regard. Well at least Cubase and Nuendo.

However there is an easy solution as others pointed out for you. Use 3rd party downsampler. If you are worried about aliasing then work at 96khz and export at 96 and downsample outside Reason.

Btw you say 96khz is waste of bandwidth. You do realize that x2 oversampled instrument at 48khz will eat same (even little more) as same non oversampled instrument at 96khz. I mean i want to point out that 96khz is not waste of space and bandwidth. Well maybe space but surely not bandwidth.

Add to that that many new plugins (speaking of VST) are highly optimized and clever and they does not produce so much aliasing as ones from 1990 era. Example Antidote, Viking 2 etc. Try to set up same patch on these and on Subtractor and you will see.

Me personally i use 44khz. Subtractor and Malstrom sound better at 96khz but only for high pitched sounds. Otherwise they are just fine. I would not want to work without Subtractor. I can tell you if you can not produce decent production at 44khz then that 96khz won't magically solve your problems - i am telling this as a friendly advice from experience not to be smart donkey.

Cheers

User avatar
selig
RE Developer
Posts: 11685
Joined: 15 Jan 2015
Location: The NorthWoods, CT, USA

12 Sep 2017

Loque wrote:I must say, i am pretty curious about a few things and i was not really thinking about them in the past. I just thought, there is a internal calculation precision (64bit) and only the output will be reduced to lets say 44.1khz. But after reading all the comments, the "dither" features in my mastering RE are pretty useless now, except i export in a high res 96khz audio, than reimport, than master with this. But i am still not sure, if when i chose 44.1khz as output for the export the mastering RE dither can do its best. To me it sounds all like a big weakness now in Reason, to not be able to have a full quality rendering option or at least to choose the rendering quality and the output bitrate individually.

I did not used 96khz often in the past, because some RE have problems with their timings, but as described above, not sure if it helps anyway if the final output is a low resolution and the devices work at that resolution instead of highest possible resolution.

In the end, i now really think Reason lacks a simple quality feature and i dont trust the "internal precision" thing anymore. Maybe i overlooked something :? :?:
Not sure I follow - dither is totally unrelated to sample rate which is unrelated to processing bit depth. In other words, you seem to be mixing terms for audio bit depth (with regards to dither), internal "precision" or processing depth (64 bit comments), and sample rates here.

Resolution (and dynamic range) is a term associated with bit depth, while sample rate affects the upper frequency response.
EDIT: sample rate can also affect how a compressor responds and how much aliasing is present…
:)


Sent from some crappy device using Tapatalk
Selig Audio, LLC

User avatar
Loque
Moderator
Posts: 11175
Joined: 28 Dec 2015

12 Sep 2017

selig wrote:
12 Sep 2017
Loque wrote:I must say, i am pretty curious about a few things and i was not really thinking about them in the past. I just thought, there is a internal calculation precision (64bit) and only the output will be reduced to lets say 44.1khz. But after reading all the comments, the "dither" features in my mastering RE are pretty useless now, except i export in a high res 96khz audio, than reimport, than master with this. But i am still not sure, if when i chose 44.1khz as output for the export the mastering RE dither can do its best. To me it sounds all like a big weakness now in Reason, to not be able to have a full quality rendering option or at least to choose the rendering quality and the output bitrate individually.

I did not used 96khz often in the past, because some RE have problems with their timings, but as described above, not sure if it helps anyway if the final output is a low resolution and the devices work at that resolution instead of highest possible resolution.

In the end, i now really think Reason lacks a simple quality feature and i dont trust the "internal precision" thing anymore. Maybe i overlooked something :? :?:
Not sure I follow - dither is totally unrelated to sample rate which is unrelated to processing bit depth. In other words, you seem to be mixing terms for audio bit depth (with regards to dither), internal "precision" or processing depth (64 bit comments), and sample rates here.

Resolution (and dynamic range) is a term associated with bit depth, while sample rate affects the upper frequency response.
EDIT: sample rate can also affect how a compressor responds and how much aliasing is present…
:)


Sent from some crappy device using Tapatalk
So how can i get best results for example with Subtracror which needs a higher sample rate and a maximizer with either, when i want to export in 44.1khz? As i understood Subtracror than renders in 44.1khz and not in the highest possible. Or am i on the wrong track?
Reason12, Win10

per-anders
Posts: 224
Joined: 09 Jul 2015

12 Sep 2017

Can anyone think of a situation where you would want to run the project at a lower sample rate on export rather than downresing?

I mean I've never thought it myself "gee, what this project could do with is more aliasing artifacts, and for export to take a lot longer". Because that's literally the only things I can think of that will change.

I'm aware I can export at a higher sampling rate and downres in elsewhere, I'm also aware that doesn't eliminate artifacts, only reduces them. There has to be a more complete solution, these are two separate bugs that both result in aliasing, Reason users shouldn't have to deal with aliasing artifacts. Also if you think that a series of plugins individually doing their own upres low passing and decimation is more efficient and artifact free than a block of plugins bookended by a single upres, lowpass and decimation then I don't know what to say.

seqoi
Posts: 417
Joined: 12 Aug 2017

13 Sep 2017

Loque wrote:
12 Sep 2017

So how can i get best results for example with Subtracror which needs a higher sample rate and a maximizer with either, when i want to export in 44.1khz? As i understood Subtracror than renders in 44.1khz and not in the highest possible. Or am i on the wrong track?
Answer to question number one: You export it at 96khz then downsample in other product (example Adobe Audition but there are free ones this is just example)

Answer to question number two: half wrong. Subtractor and rest of Reason devices export EXACTLY at the frequency rate you set it up on export.

Hence the confusion. OP have global settings in Reason 96khz but on export he is selecting 44khz so Global setting is ignored.

Unlike other DAW apps where if you work at 96khz, but you select 44khz on export - they still render at 96khz and then downsample to 44khz so you get all benefits (and drawbacks) of working at 96khz. This is what OP refers to Propellerheads bug or left over.

As i see it this is no error or bug from Propellerheads but as i said i can relate to OP because it can be confusing from someone coming in to Reason workflow from other DAW apps.

Up to the point where you realize it's just that you need downsampler. I don't see this as an error or left over from Propellerheads because every serious musician will have to make at least few edits in audio editor before sending tracks to someone or online (don't tell me you are sending straight export from Reason ???) so you can downsample there. Audio editors have tools for mastering or "massaging" tracks that are not available in almost any other DAW so they ARE necessary and you can simply downsample there.

Kind regards

seqoi
Posts: 417
Joined: 12 Aug 2017

13 Sep 2017

per-anders wrote:
12 Sep 2017
Can anyone think of a situation where you would want to run the project at a lower sample rate on export rather than downresing?
I don't?! But i think people are confused and uneducated about final medium requirements.
per-anders wrote:
12 Sep 2017
There has to be a more complete solution, these are two separate bugs that both result in aliasing, Reason users shouldn't have to deal with aliasing artifacts.
I agree they should not but you have to take in account that Subtractor was developed decades ago when developers where at the very dawn of antialiasing solutions, bandlimited oscilators, zero delay filters and oversampling engines.

+ on top of that Aliasing in his example and his song file is not caused so much from Subtractor but from Distortion FX on Scream unit. Aliasing is there but not entirely Subtractor fault.

You simply use what you use and what you have you have to know it's drawback and use it as is. I pointed out Antidote or Viking 2 (which is what the hell wow) does not produce such aliasing. But they are almost 20 years newer then Subtractor.

As i said before if you can't make a mix with 44khz then nothing will save you. And as far as i can see Reason and it's plugins are most then adequate to provide musical result at 44khz. Noone will convince me that people can't make record ready tracks at 44khz with Reason.

househoppin09
Posts: 536
Joined: 03 Aug 2016

02 Jan 2018

selig wrote:
12 Sep 2017
sample rate can also affect how a compressor responds
Sorry to bump this old thread, but this is an interesting and possibly troubling comment. Can you say anything further about why and under what circumstances the sample rate would alter a compressor's response?

Also, semi-related: do VSTs ever have their own internal sample rate setting that can deviate from their host's, and if so then how is the discrepancy typically resolved? (I'm not counting oversampling features, obviously.)

User avatar
normen
Posts: 3431
Joined: 16 Jan 2015

02 Jan 2018

per-anders wrote:
11 Sep 2017
It's really not a design choice (unless laziness is design these days) it's an error.
I'm with you on discussing if this is a good idea per se but seriously, you can't code this by accident..

Post Reply
  • Information
  • Who is online

    Users browsing this forum: Ahrefs [Bot] and 26 guests