Old 08-14-2018, 03:43 AM   #1
Innocent Bystander
Human being with feelings
 
Join Date: Jan 2009
Location: Hastings, UK
Posts: 39
Default Sample rate conversion

Hello!

I have a project which has ended up with multiple sample rates. Most of the media is 48k, but I have some items which are 44.1k.

The project is going to a studio for mixing and they're working in ProTools at 48K, so my idea is to render stems of each track with no FX, panning or level changes - just the raw audio, including edits.

I did this last night and then brought the files back in and phase reversed them for a null test to ensure everything was correct. As expected the files where the sample rate remained the same nulled against the originals and there was absolute silence. However, I was surprised by how much difference there is between re-sampled files and the originals when nulling.

Looking at the waveforms, they appear identical and A/Bing the audio I couldn't detect too much of a difference.

However, when nulling the files I could hear a significant amount of the track and if it helps, it was mostly high frequency.

So, my questions are: is this normal, should I be worried about it and is there a better way to do this? Perhaps I can leave the 44.1k files as they are and allow the studio to do the sample rate conversion within ProTools?

Thank you for reading through and thanks in advance for any thoughts.

I hope you all have a good day!
Innocent Bystander is offline   Reply With Quote
Old 08-14-2018, 03:58 AM   #2
EvilDragon
Human being with feelings
 
EvilDragon's Avatar
 
Join Date: Jun 2009
Location: Croatia
Posts: 24,790
Default

SRC is not a non-destructive process, there is no way for the resampled audio to null against its original.

If you want you can use a higher quality external SRC, I recommend using SoX - it's superb and free.
EvilDragon is offline   Reply With Quote
Old 08-14-2018, 04:07 AM   #3
Innocent Bystander
Human being with feelings
 
Join Date: Jan 2009
Location: Hastings, UK
Posts: 39
Default

Thanks for your reply Evil Dragon, much appreciated!

Sure, it makes sense that it won't null (since the files are, by definition, different). My surprise was really by how much audio I could hear when nulling the tracks, but it sounds like this is perfectly normal?

I'll get hold of SoX (thanks for the recommendation) and see if that makes any difference. I'm guessing that Reaper's native SRC is going to be pretty good anyway, since Reaper seems so well written, but it can't hurt to try a different method.

The fact that I could hear so much HF audio suggests to me that I might be loosing HF during the conversion, but is this more a case that the sample points aren't lining up and I'm hearing artifacts of this, but actually there isn't a pronounced HF roll off in SRC?

One final question: would you be concerned about this if you were in my position, or am I worry about something completely trivial here?

Thanks again for your reply mate, I really appreciate it.

Have a good day!
Innocent Bystander is offline   Reply With Quote
Old 08-14-2018, 04:14 AM   #4
bezusheist
Human being with feelings
 
bezusheist's Avatar
 
Join Date: Nov 2010
Location: Mullet
Posts: 829
Default

the type of filter used for SRC makes a big difference in null test #'s but maybe not so much with listening tests.
why ? phase.
assuming the same order/slope...linear phase will create the least difference, min phase the most diff.
even the slightest bit of phase shift can really screw up a null test, but can you hear it ?
__________________
I like turtles
bezusheist is offline   Reply With Quote
Old 08-14-2018, 04:31 AM   #5
Innocent Bystander
Human being with feelings
 
Join Date: Jan 2009
Location: Hastings, UK
Posts: 39
Default

So it's changes in the phase that are making the difference, but in practice these are inaudible and only really become noticeable in a null test, is that right?

So I guess I should just use Evil Dragon's suggestion of SoX and stop worrying about this?!

Thanks again for these replies, it's very helpful of you.

Cheers!
Innocent Bystander is offline   Reply With Quote
Old 08-14-2018, 04:50 AM   #6
EvilDragon
Human being with feelings
 
EvilDragon's Avatar
 
Join Date: Jun 2009
Location: Croatia
Posts: 24,790
Default

Most great SRCs have linear phase filters, so there wouldn't be any phase shifts in the signal. SoX has both minimum phase and linear phase modes, of course you should use the highest quality mode possible.

The only tricky thing with SoX is that it's a command line tool, there's no GUI for it unless you're on Linux and macOS. For Windows there's an Excel spreadsheet that does some nifty stuff, but it's slightly unwieldy to use.
EvilDragon is offline   Reply With Quote
Old 08-14-2018, 05:01 AM   #7
bezusheist
Human being with feelings
 
bezusheist's Avatar
 
Join Date: Nov 2010
Location: Mullet
Posts: 829
Default

if the filter is minimum (or poly) phase, yes, phase distortion causes most of the difference. with linear (or zero) phase filters, the difference is mainly what is filtered out.
usually what is actually being filtered out doesn't amount to much...
iow...
how much actual content do you have over 20 kHz and what is the level ?
the answer to both of those questions is most likely "not much"...

there are other things to consider, but they usually are not as significant when it comes to a null test. (overshoot, ringing, truncation, whatever)

SoX is good because you have many options.
__________________
I like turtles
bezusheist is offline   Reply With Quote
Old 08-14-2018, 09:33 AM   #8
serr
Human being with feelings
 
Join Date: Sep 2010
Posts: 12,559
Default

XLD (X Lossless Decoder) includes SOX. It's a GUI app that includes many lossless conversion utilities (and some lossy ones like mp3 too).
serr is online now   Reply With Quote
Old 08-14-2018, 11:36 AM   #9
EvilDragon
Human being with feelings
 
EvilDragon's Avatar
 
Join Date: Jun 2009
Location: Croatia
Posts: 24,790
Default

How about something for Windows
EvilDragon is offline   Reply With Quote
Old 08-14-2018, 10:16 PM   #10
mschnell
Human being with feelings
 
mschnell's Avatar
 
Join Date: Jun 2013
Location: Krefeld, Germany
Posts: 14,686
Default

Quote:
Originally Posted by Innocent Bystander View Post
Looking at the waveforms, they appear identical and A/Bing the audio I couldn't detect too much of a difference.

However, when nulling the files I could hear a significant amount of the track and if it helps, it was mostly high frequency.
I am not sure that he "best" upsampling algorithm is the one that after downsampling by (whatever) algorithm (as necessary to "nulling" comparing with the original), provides the least audible remains.

E.g. "dithering" will definitively produce artifacts, but is considered to be advantageous in certain circumstances.

So in fact other criteria could be more viable.

-Michael
mschnell is offline   Reply With Quote
Old 08-15-2018, 07:26 AM   #11
Innocent Bystander
Human being with feelings
 
Join Date: Jan 2009
Location: Hastings, UK
Posts: 39
Default

Hello Michael,

Thanks for your reply. That's a good point which I hadn't considered. Adding dither will definitely product things which show up in a null test, but in audible terms might not be an issue.

I guess, on reflection, a null test in this case isn't helpful, because it's impossible for re-sampled audio to sound "identical". This is more of a situation where I need to trust my ears (and monitoring!) whether the process is causing audible distortion.

The fact that the wave forms look so close (I can't actually see a difference) is encouraging, because it suggests there's no level or dynamic impact.

Thanks for all your replies. This really is a very helpful community.

Cheers from England!
Innocent Bystander is offline   Reply With Quote
Old 08-15-2018, 09:31 AM   #12
ashcat_lt
Human being with feelings
 
Join Date: Dec 2012
Posts: 7,271
Default

I guess I'm a little confused. Doesn't Reaper resample on the fly? A 44.1K file brought into a 48K project should be upsampled by the time you see the peaks and hear the result. Seems to me like if you were to bring the 48K rendered track back in, it should null in playback. Is it using a different resampling algorithm in playback than it does in render? Is it maybe that the realtime resampled playback is floating point and somehow creates content below the floor of the fixed point render?

But anyway null tests are a lot less meaningful than most people seem to think. Did you listen to the mix of stems? Did you notice any difference or hear any artifacts that weren't there before? Isn't that all that matters?
ashcat_lt is offline   Reply With Quote
Old 08-15-2018, 10:40 AM   #13
serr
Human being with feelings
 
Join Date: Sep 2010
Posts: 12,559
Default

Yeah, the real time resample doesn't null and further, it nulls less in real time conversion than if you resample the file separately and import it. Some of this follows the project settings for on the fly resample quality of course.

The "nulling tool" is still useful. A perfect 100% null tells you you have the exact same audio data to the individual samples. A clone. When you are dealing with some possible difference that may be within your perception bias and you want an all or nothing test - this is it.

"Almost null" results are still useful. It tells you the audio sources were the same at one point in the past before some generation loss somewhere. Like a sample rate conversion for example.

Beyond all that, we're back to comparing what sounds more "right" to us and dealing with perception bias and our lying ears.
serr is online now   Reply With Quote
Old 08-16-2018, 06:23 AM   #14
Innocent Bystander
Human being with feelings
 
Join Date: Jan 2009
Location: Hastings, UK
Posts: 39
Default

Hello!

@shcat_lt That's a good point and I didn't consider it. Since the file I'm listening to is being upsampled on the fly, then once could expect the files to null, unless the real time resample algorithm is different to the offline one, which serr seems to suggest is indeed the case. That's helpful to know and thank you for pointing it out.

@serr Yes, my point of nulling the files was basically to see if I'd accidentally left some process on, or there was some pan or level change I'd missed so I was using it for an absolute, piece of mind test to eliminate any bias etc. In fact, it revealed these resampling issues, so in those terms it worked as intended and threw up something I hadn't considered.

You're both absolutely right though, the important thing is whether any of these artifacts or distortions really matter and in my case, I don't think they do. ABing the files, I can't hear any difference at all, even with headphones. Furthermore, the visual similarity of the wave forms also confirms there's nothing to worry about here.

I stated out with tape and a desk. When bouncing things to free up tracks, I'd obviously AB and do whatever possible to remove potential causes of distortion/loss. These habits have stuck, hence my null test. The reality is that with digital audio, we're not talking about anything like the same potential issues, so I think it's nothing to worry about.

Once again, I'm grateful to everyone who's chimed in here. I've learned some things and I've got the answers I needed. I appreciate this and I hope some day I'll be able to return the favour to the community.
Innocent Bystander is offline   Reply With Quote
Old 08-16-2018, 10:49 AM   #15
bezusheist
Human being with feelings
 
bezusheist's Avatar
 
Join Date: Nov 2010
Location: Mullet
Posts: 829
Default

real time SRC and off-line SRC null perfectly, you just have to make sure they are set to the same quality...
__________________
I like turtles
bezusheist is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -7. The time now is 11:42 AM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.