Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion. Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules. |
|
|
Thread Tools | Search this Thread | Display Modes |
8th November 2007, 23:28 | #1 | Link |
*Space Reserved*
Join Date: May 2006
Posts: 953
|
Resampling to a higher Sampling Rate = Loss Of Quality or...?
Hello, maybe one of you guys can clear up this question. Does resampling from lets say, 44100 to 48000khz = loss of quality, or perhaps it may seem that way since 48000khz can hold higher frequencies than 44100khz?
e.g. (Analysis using spectral display in adobe). Original (44100khz): http://img260.imageshack.us/img260/4...inalwavsf6.png 48000Khz: http://img106.imageshack.us/img106/5...ed48000ki3.png 192000khz: http://img211.imageshack.us/img211/5...d192000qu9.png |
9th November 2007, 03:29 | #2 | Link |
Registered User
Join Date: Oct 2007
Posts: 34
|
doing 44.1khz -> 48khz always causes rounding errors, and good filters can eliminate most of those errors but not all
Doing 44.1khz -> 88.2khz doesnt lose quality I believe since theres no rounding errors at that samplerate... |
9th November 2007, 18:58 | #3 | Link |
Registered User
Join Date: Feb 2004
Location: NTSC R1
Posts: 2,046
|
Upsampling to a sampling rate which is a multiple of the signal's sampling rate would allow for a perfect reconstruction of the signal (at least theoretically). That's what Nyquist-Shannon theorem states. But, depending on the hardware/software process used, it can introduce errors if not done properly.
So, 44.1 kHz -> 88.2 kHz would work. 44.1 kHz -> 48 kHz or 192 kHz won't work. OK, they would work, but the interpolation won't be perfect.
__________________
|
12th November 2007, 08:11 | #4 | Link |
Registered User
Join Date: Dec 2005
Location: Proxima Centauri
Posts: 315
|
To clarify.
resampling applies an anti-aliasing (lowpass) FIR filter to the input signal during the resampling process. This causes some errors, including Gibbs effect in the time domain, and some frequency domain distortions (since the frequency characteristics of these filters is inperfect) Resampling 44,1 -> 48 is possible, because you upsample 160 times and than downsample 147 time. This normally would be very ineficient, however something called polyphase filterbank and polyphase filtering routine is used, which applies both in one shot. Anyway, this is still pretty computationally complex (44,1 -> 48), hence older resamplers used to use shorter FIR impulse responces for constructing the polyphse matrix, and therefore this particular convertion had alwas (than e.g. 44,1 -> 88,2) been viewed as more problematic and results of lower quality. Today, a good resampler can make this conversion nearly perfectly (i.e. errors are inaudible, although present). Cheers, 3d.
__________________
Aud-X MP3 5.1 Format |
12th November 2007, 17:03 | #5 | Link |
*Space Reserved*
Join Date: May 2006
Posts: 953
|
Thanks for the replies guys. So, lets say that i'd like to have this 44100khz audio as 48000khz without losing any sort of quality. Would copying (instead of resampling) the wave spectrum from 44100khz to a blank 48000khz file be a workaround? I've noticed that the wave spectrum (the frequencies) remained intact when I chosed to do it like this.
Last edited by Terranigma; 12th November 2007 at 17:13. |
12th November 2007, 21:01 | #6 | Link | |
heretic nuB
Join Date: Sep 2003
Posts: 71
|
Quote:
The quality of the resampling is dictated by the quality of the used FIR filter (frequency response, phase and impulse response). It has nothing to do with sample rate ratio. Apart from that you have some added requantization noise, but that can be minimized using 24bit or floating point processing with noise shaped dither to 16bit afterwards. |
|
13th November 2007, 09:14 | #9 | Link |
heretic nuB
Join Date: Sep 2003
Posts: 71
|
@madshi: Try SSRC: http://shibatch.sourceforge.net/
PPHS would also be interesting for faster speed and arbitrary sample rate conversion, but AFAIK it's not OpenSource. |
13th November 2007, 09:41 | #10 | Link | |
Registered Developer
Join Date: Sep 2006
Posts: 9,140
|
Quote:
Did some searching and found that r8brain comes with a free to use win32 dll. It's not open source, but my main need is a free and easy way to add high quality resampling to my win32 freeware. So now I have to decide whether to use SSRC or r8brain... |
|
13th November 2007, 10:24 | #11 | Link |
heretic nuB
Join Date: Sep 2003
Posts: 71
|
Both SSRC and R8brain seem excellent choices, judging by the graphs shown here and here, which show the spectrum of a sinesweep resampled from 96Khz to 44.1 over time, revealing noise and frequency fold-backs caused by improper filtering. Shocking to see so many expensive pro audio software behaving really bad
EDIT: Just saw that the passband/transition of r8brain free isn't ideal, probably also the phase. Can't have everything I suppose... Last edited by Raptus; 13th November 2007 at 10:34. |
13th November 2007, 10:56 | #12 | Link | |
Registered Developer
Join Date: Sep 2006
Posts: 9,140
|
Quote:
The main purpose I need the resampling for is for undoing PAL speedup (so basically I need to slow audio down by roughly 4%). Do those graphs help deciding whether r8brain or SSRC would be the better choice (quality wise)? I don't care much about processing time. Only the quality is important. Thank you!! |
|
13th November 2007, 11:22 | #13 | Link |
heretic nuB
Join Date: Sep 2003
Posts: 71
|
It means that the frequency response is okay-ish, the roll-off starts a bit early (just above 18Khz), good would be above 20Khz, excellent above 21Khz. Some golden ears *might* ABX a difference.
But that matters only for 44.1Khz. If your are resampling audio at 48Khz or from higher rate to 48Khz this becomes less of an issue because the roll-off is shifted up. So, answering your question: Yes, _I_ would go with r8brain free in spite of the issue mentioned, because it's other qualities are excellent. I would recommend that the users don't go below 48Khz, though. Last edited by Raptus; 13th November 2007 at 11:30. |
13th November 2007, 11:41 | #14 | Link | |
Registered Developer
Join Date: Sep 2006
Posts: 9,140
|
Quote:
The most often used conversion in my tool will be from 48000 to 46033.92 (25.000 -> 23.976). Would you still go with r8brain in this situation? |
|
13th November 2007, 11:51 | #15 | Link | |
heretic nuB
Join Date: Sep 2003
Posts: 71
|
Quote:
Remember that you would be playing back the 46033Hz signal at 48Khz, so it would be faster, not slower. You should do it the other way, from 48Khz to 50050.05Hz, and then play back that signal at 48Khz, hence slower. If r8brain supports this sample rates, I would use it. EDIT: spelling, jeez. Last edited by Raptus; 13th November 2007 at 11:59. |
|
13th November 2007, 12:06 | #17 | Link |
Registered Developer
Join Date: Sep 2006
Posts: 9,140
|
Might be a bit OT, but since some experts are already listening I'll ask here:
I'm wondering, for undoing PAL speedup. Do I need to calculate with "23.976" or with "24.000 / 1.001"? You know, it's slightly different. In the first case I'd resample from 48000 to "50050,05005005005005...". In the latter case I'd resample from 48000 to exactly 50050. I guess my real question is: Are DVDs mastered to 23.976 or are they mastered to 24.000 / 1.001? (P.S: r8brain supports floating point output sample rate, so "50050,05005..." would be possible). |
Thread Tools | Search this Thread |
Display Modes | |
|
|