Jump to content

Finalising Masters in Logic - A Couple of Questions


ew1

Recommended Posts

30 minutes ago, polanoid said:

Again, you don't dither when doing a pure SRC (Sample Rate Conversion). You dither when you decrease the bit rate. 

The whole after/before makes no sense. Watch this video which explains it quite well: The noise is added to the signal before the lower bits are thrown away, thereby the dithering is just part of the bit depth conversion process. There's no such thing as "only dithering" (you would never deliberately add noise to your signal if you wanted to keep its bit depth).

Thanks but you keep misunderstanding me on that particular point. I understand what dithering is. I understand that is supposed to be applied when reducing the bit depth and I understand that dithering has nothing to do with sample rate conversion.

 

What I mean by the sentence you quoted is that if you are doing both SRC and bit depth reduction on a bounce, you need to dither but the dithering needs to happen after the SRC, not before. That's what I mean.

Edited by ew1
Link to comment
Share on other sites

28 minutes ago, polanoid said:

Again, you don't dither when doing a pure SRC (Sample Rate Conversion). You dither when you decrease the bit rate. 

The whole after/before makes no sense. Watch this video which explains it quite well: The noise is added to the signal before the lower bits are thrown away, thereby the dithering is just part of the bit depth conversion process. There's no such thing as "only dithering" (you would never deliberately add noise to your signal if you wanted to keep its bit depth).

However, your point about the before/after is helpful and answers one of my questions. Thanks.

Link to comment
Share on other sites

16 hours ago, polanoid said:

Again, you don't dither when doing a pure SRC (Sample Rate Conversion). You dither when you decrease the bit rate. 

The whole after/before makes no sense. Watch this video which explains it quite well: The noise is added to the signal before the lower bits are thrown away, thereby the dithering is just part of the bit depth conversion process. There's no such thing as "only dithering" (you would never deliberately add noise to your signal if you wanted to keep its bit depth).

So I understand now that the dithering is applied before the bit depth is reduced.

 

In that case, @lagerfeldt 's point that "dithering should always be the last step" is not entirely correct.

The true "last step" would in fact have two parts to it. It would be:

dither + bit depth reduction

because these two stages go hand in hand and form one step in the engineer's process. The dithering would be applied first and the bit depth would be reduced afterwards. But it's still "one step" of our process.

 

Have I got that right?

Thanks

Link to comment
Share on other sites

6 minutes ago, David Nahmani said:

Yes. 

Thanks 

 

In that case, dithering within your limiter only causes a sequencing problem if you apply SRC after the dithering. So, we just have to remember to not make that mistake.

But aside from the sequencing of dithering and SRC, there is another issue that @lagerfeldt raised. He said:

 

I can see a challenge in using the internal dither in the limiter. How do you fade in or out post-limiter? If you fade out on the channel strip containing the limiter then what happens to the bit depth as Logic's own processing expands the output of the fader from e.g. 16 bits dithered (coming out of the plug-in) to 32/64 bit floating point again?

 

I might have possible solutions to this but I am not sure if I right:

 

I almost never automate the volume faders on Logic channels. So, if I need to fade something, I do it either by automating a gain plugin before the limiter or by applying a fade to the audio clip using the fade tool. If I’m not mistaken, in both of these cases, the fade would be applied with 32/64 bit processing before it hits the limiter. Would that be a solution?

 

But to take this further, his original quote suggests that the bit depth is reduced within the limiter.  Is this actually true? For example when you select dithering in the FF Filter Pro-L 2, is it true that the limiter isn’t just applying the dithering but it is also handling the bit depth reduction?

 

Link to comment
Share on other sites

5 hours ago, ew1 said:

For example when you select dithering in the FF Filter Pro-L 2, is it true that the limiter isn’t just applying the dithering but it is also handling the bit depth reduction?

No, that's not true. It's only adding the dither noise (as a plug-in it can not change the bit depth which stays at 32 bit until it reaches the end of the mixer's signal chain), which does only make sense if you apply the Bit Depth reduction directly afterwards. The Pro-L 2 manual explicitly states that you even need to make sure there's no gain change between the dithering and the bit depth reduction:

"Dithering should only be used as the final stage of audio processing/mastering. With any further processing, like gain changes, applying effects, or converting to yet another bit depth, the effects of dithering will be lost. If your host offers a post-gain effect insert slot on the master channel, use this slot for FabFilter Pro-L 2 when dithering is enabled."

Your host (i.e., Logic Pro) does not offer a post gain effect slot, but of course you could create a sub mix first which sets the final gain and then route it into stereo out with Volume = 0.0dB.

Still this does not make sense if you also convert the sample rate (i.e., bounce in a different sample rate than the project), because in this case the added dither noise would also be SRC'd, which, see above, is not recommended.

So AFAICT the limiter's internal dithering only makes sense if

1) the limiter is the very last processor in you mix and 

2) you don't convert the sample rate when bouncing

Bear in mind that, while Logic does not offer Mbit+ dithering, its POW-r dithering is totally OK, especially if you're mastering music whose dynamic range is in the ballpark of today's pop music. So I'd recommend to either

1) export as 32-bit float, not dithered at all of course, and do the complete mastering in a separate software

2) master in Logic (again without dithering yet) and dither during Logic's bounce

 

 

Edited by polanoid
Link to comment
Share on other sites

1 hour ago, polanoid said:

No, that's not true. It's only adding the dither noise (as a plug-in it can not change the bit depth which stays at 32 bit until it reaches the end of the mixer's signal chain), which does only make sense if you apply the Bit Depth reduction directly afterwards. The Pro-L 2 manual explicitly states that you even need to make sure there's no gain change between the dithering and the bit depth reduction:

"Dithering should only be used as the final stage of audio processing/mastering. With any further processing, like gain changes, applying effects, or converting to yet another bit depth, the effects of dithering will be lost. If your host offers a post-gain effect insert slot on the master channel, use this slot for FabFilter Pro-L 2 when dithering is enabled."

Your host (i.e., Logic Pro) does not offer a post gain effect slot, but of course you could create a sub mix first which sets the final gain and then route it into stereo out with Volume = 0.0dB.

Still this does not make sense if you also convert the sample rate (i.e., bounce in a different sample rate than the project), because in this case the added dither noise would also be SRC'd, which, see above, is not recommended.

So AFAICT the limiter's internal dithering only makes sense if

1) the limiter is the very last processor in you mix and 

2) you don't convert the sample rate when bouncing

Bear in mind that, while Logic does not offer Mbit+ dithering, its POW-r dithering is totally OK, especially if you're mastering music whose dynamic range is in the ballpark of today's pop music. So I'd recommend to either

1) export as 32-bit float, not dithered at all of course, and do the complete mastering in a separate software

2) master in Logic (again without dithering yet) and dither during Logic's bounce

Thanks. I have a couple of questions about this but first I want to address one thing. You said:

"No, that's not true. It's only adding the dither noise (as a plug-in it can not change the bit depth which stays at 32 bit until it reaches the end of the mixer's signal chain)"

 

What you say here makes sense to me intuitively and logically but if you read the Pro-L 2 manual here (https://www.fabfilter.com/help/pro-l/using/dithering), you will find the following:

"The Dither setting specifies the desired bit depth of the resulting audio. You can choose to dither/quantize to 24, 22, 20, 18 and 16 bits. Of course, if you don't want any dithering, quantization (or noise shaping) to occur, just choose 'Off'."

 

The way this is worded really seems to suggest that enabling this limiter’s dither does in fact change the bit depth of the audio. This doesn’t seem to make sense given that we know that everything that happens internally in these plugins is going to be 32/64 bit. But why would the manufacturers specifically say “The Dither setting specifies the desired bit depth of the resulting audio.”? What could they mean by this? 

 

Did they actually mean to say “The Dither setting specifies the the type of dither you should apply based on the bit depth you will later select when you bounce from your host DAW”?

 

 

Link to comment
Share on other sites

7 hours ago, polanoid said:

Of course the desired bit depth has to be set in the limiter because it determines the level of noise that needs to be added. But that does not mean the limiter does the bit depth reduction itself.

 

Right. Thanks. I went ahead and emailed fab filter in the meantime.

 

So now that that's cleared up, it brings me back to what lagerfeldt said:

 

I can see a challenge in using the internal dither in the limiter. How do you fade in or out post-limiter? If you fade out on the channel strip containing the limiter then what happens to the bit depth as Logic's own processing expands the output of the fader from e.g. 16 bits dithered (coming out of the plug-in) to 32/64 bit floating point again?

 

If the bit depth reduction isn't taking place within the limiter and the signal is 32/64 all the way up until the end of the chain (post-fader), then using the channel's fader after dithering in the limiter shouldn't actually cause the problem he was describing, right?

 

 

Perhaps I've misunderstood what he meant.

 

 

 

Link to comment
Share on other sites

3 minutes ago, ew1 said:

then using the channel's fader after dithering in the limiter shouldn't actually cause the problem

well if the channel fader does change the volume it is a problem because the dither level will be wrong afterwards. if the fader stays at 0 dB you’re not really using it 

Edited by polanoid
  • Like 1
Link to comment
Share on other sites

19 minutes ago, polanoid said:

well if the channel fader does change the volume it is a problem because the dither level will be wrong afterwards. if the fader stays at 0 dB you’re not really using it 

I'm struggling to understand this. The Dither noise is applied by limiter on the channel. The music is also going through that channel. So if the fader changes the channel's volume by 5 dB for example, the music and the dither noise will both be reduced by 5 dB. Or am I wrong about that?

Link to comment
Share on other sites

5 minutes ago, David Nahmani said:

That's the issue: the dither should not be reduced. That's why it should be the last process before the bit reduction. 

Ah. OK. So therefore, dithering within your limiter is OK if you make sure it is the very last step in the process (ie don't do SRC afterwards) AND you don't alter the volume of that channel's signal in any way after the limiter (because doing so will alter the level of the dither noise and that is bad)

 

However, I'm still curious as to what lagerfeldt said:

 

I can see a challenge in using the internal dither in the limiter. How do you fade in or out post-limiter? If you fade out on the channel strip containing the limiter then what happens to the bit depth as Logic's own processing expands the output of the fader from e.g. 16 bits dithered (coming out of the plug-in) to 32/64 bit floating point again?”

 

Messing with the fader would affect the dither level. However, that doesn't seem to be the problem he's referring to. He seems to be suggesting that the bit depth coming out of the plugin would be 16 (if you selected 16 bit dither) and that adjusting the fader would bring the bit depth back to 32/64. However, we know that's not true and that the bit depth coming out of the plugin would be 32/64 regardless of the dither.

 

So what is he trying to say? 

 

Thanks!

 

 

Link to comment
Share on other sites

50 minutes ago, ew1 said:

I'm struggling to understand this. The Dither noise is applied by limiter on the channel. The music is also going through that channel. So if the fader changes the channel's volume by 5 dB for example, the music and the dither noise will both be reduced by 5 dB. Or am I wrong about that?

You need to understand what dithering does. The added noise must always be between the value of -1 and +1 in the destination bit depth (because the quantization noise will be as well) i.e. if you convert 24 bit to 16 bit you will fill the lower 9 bits with noise, so to speak. If you changed the signal level between dithering and truncation of the lower bits, the noise would no longer be between these two values, but somewhere above or below, thereby completely losing its purpose to mask the quantization noise

  • Like 2
Link to comment
Share on other sites

2 minutes ago, ew1 said:

Messing with the fader would affect the dither level. However, that doesn't seem to be the problem he's referring to.

It is. A 16 bit signal in a 32 bit floating point audio engine is a 32 bit floating point signal where only the 16 MSB of the precision bits are used, and the rest is not used. The instant you do a gain change after that, you're back to 32 bit floating point land. 

Link to comment
Share on other sites

BTW here's another very important excerpt from the FF Pro L2 manual

"A lot of audio recordings already have a relatively high noise floor, due to the use of microphones, amplifiers, analog outboard, mixing consoles etc. In that case, dithering will have no beneficial effect at all; it will just increase the existing noise floor."

i.e., if your recording equipment's SNR is already worse (and it most probably is) than the 144dB SNR that 24 bit audio gives you, don't dither when going from 32 to 24bit.

Edited by polanoid
Link to comment
Share on other sites

1 hour ago, David Nahmani said:

It is. A 16 bit signal in a 32 bit floating point audio engine is a 32 bit floating point signal where only the 16 MSB of the precision bits are used, and the rest is not used. The instant you do a gain change after that, you're back to 32 bit floating point land. 

I’m struggling to understand what you’re referring to when you say “a 16 bit signal”. If the limiter doesn’t change the bit depth of the signal it is processing, then what is the “16 bit signal”? 

 

I think I have come up with a way of understanding what you wrote. Could you let me know if this is right?:

 

  • Let’s assume you apply 16 bit dither in the FF Pro-L 2 because you are creating a 16 bit bounce.

 

  • The signal going into and coming out of the limiter is 32 bit. 

 

  • The dither noise itself is a 16 bit signal and needs to remain 16 bit in order for it to be suitable for the 16 bit wav file you are creating.

 

  • When the music + dither noise comes out of the limiter, the signal is 32 bit but the dither noise portion of the signal is 16 bit. This is the way we need to keep it if we are creating a 16 bit bounce.

 

  • If you do any gain processing post-limiter (eg on a channel fader or on a gain plugin etc), then the dither noise will change from 16 bit to 32 bit. We don’t want this as the dither noise will no longer be suitable for a 16 bit wav file.

 

Is that correct?

 

Thank you 

Edited by ew1
Link to comment
Share on other sites

6 minutes ago, David Nahmani said:

BTW I'm not sure if the plug-in actually truncates the signal to 16 bits like I just described, and I suppose it doesn't matter whether it does or not since you're going to truncate it yourself in the Bounce dialog anyway. 

Exactly. From what the FF Pro L2 manual states it does indeed already seem to do the quantization, but as you say, it doesn't really matter.

@ew1, look at it this way: A 32 Bit signal can have all exact values that a 24 Bit signal can have, and a 24 Bit signal can have all those that a 16 Bit signal can have, so the limiter can already quantize the signal's values to only those that a 24 or 16 Bit signal can have as well. Bit depth reduction then simply means assigning all values from the quantized higher bit depth signal to the lower bit depth signal. But, if you change the 32 bit signal in any way between above mentioned quantization and the actual bit depth reduction, the signal will no longer be quantized to 24 or 16 bits, and you'll lose the dithering and add quantization noise again.

Edited by polanoid
Link to comment
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.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  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.

×
×
  • Create New...