• AnyStream is having some DRM issues currently, Netflix is not available in HD for the time being.
    Situations like this will always happen with AnyStream: streaming providers are continuously improving their countermeasures while we try to catch up, it's an ongoing cat-and-mouse game. Please be patient and don't flood our support or forum with requests, we are working on it 24/7 to get it resolved. Thank you.

Bit exact audio in Reclock without any resampling

I'll try this on my Digi96/8 PST to see if it takes it. Let me first make sure I understand what you guys have cooked up here.

So, I've got 23.976 movies playing back on 24Hz refresh display. If I set:

ForceSampleRate: 48048
BypassResampler: 1

Then, essentially reclock will still "lock" on to the Audio clock at the new sample rate and I leave all other settings to "Auto" in the playback properties?
 
What? :confused:
I don't think so...
well, it doesn't work anyway :(

any chance you could let ForceSampleRate work as the destination rate for regular libsamplerate please? so I'll be able to compare KMixer resampling 48048@192Khz against 192KHz libsamplerate in bit-perfect KS

ppl w/ true bit-perfect hardware locked soundcards will be more lucky than me, I think :D
essentially reclock will still "lock" on to the Audio clock at the new sample rate and I leave all other settings to "Auto" in the playback properties?
if your MME/WDM drivers are hardware locked, it will be identical to overriding the sample rate in the drivers like yesgrey does.

if they're not hardware locked, KMixer will be used.
 
Last edited:
well, it doesn't work anyway :(

any chance you could let ForceSampleRate work as the destination rate for regular libsamplerate please? so I'll be able to compare KMixer resampling 48048@192Khz against 192KHz libsamplerate in bit-perfect KS

ppl w/ true bit-perfect hardware locked soundcards will be more lucky than me, I think :D

if your MME/WDM drivers are hardware locked, it will be identical to overriding the sample rate in the drivers like yesgrey does.

if they're not hardware locked, KMixer will be used.
Come on, you're given a finger and you always want the whole hand...
Isn't the thread title "Bit exact audio in Reclock *without any* resampling"?
 
Come on, you're given a finger and you always want the whole hand...
Isn't the thread title "Bit exact audio in Reclock *without any* resampling"?
yep my bad, I didn't know it'd require a lot of work to allow custom samplerate w/ resampling...

actually the Echo card I got had bit-perfect locked samplerate, but its op-amps were lousy and the SQ terrible :(

professional soundcards are not audiophile grade, these are 2 different markets...I set my hopes too high I guess.

and for 99.99% of Reclock users, a higher resampling freq would really improve the SQ(especially in KS/WASAPI)...because 48000@47.952 is lossy to hell.

If the averaging algorithm has twice as many sample points to average for improving a given audio frequency, then it can do at least twice as good a job, at that frequency, of reducing various digital errors and improving the accuracy of the music waveform. High power averaging algorithms can do even better than twice as well, depending on the curves engineered into the algorithm. If we double the sampling rate, we double the number of sample points per cycle at every audio frequency.

this would allow to compare Kmixer resampling 48048(w/ the 2 new options you just added) against libsamplerate@192KHz in KS :)

and the Asus soundcard I'm getting does have KS drivers on XP, but it resamples everything <96KHz :bang:
 
Last edited:
ok so that's the new version w/o resampling and set to 48048Hz via MME.

because my drivers are not bit-perfect, I've opened a 24/96 file in MPC then I've opened my movie in KMP...I get 48048@96KHz via KMixer.



if you have an elite soundcard, you would get bitperfect 48048 right off the bat.

actually I think KMixer sounds better than libsamplerate, I might use this config w/ my soon-to-be-arrived Xonar Essence STX...and set the sampling rate to 192KHz 8)

OK I'm out to watch a full movie, because it's all very nice...but there's no realtime adaptation. so if your refresh rate doesn't match *exactly* the theoritical perfect audio clock, glitches you will get :eek:
 
Last edited:
well, I dunno how you get glitch-free 100% bit-perfect yesgrey, but that's a no go here...I get audio glitches every 3 minutes(23.976fps@48048Hz w/ 48.000Hz refresh rate).

to perfect it, I would need to use the S/PDIF pass-through mode and check the number of lost/dupped AC3 frames...but I believe the tutorial from ogo only explains how to fix it w/ pstrip :eek:
 
ok so that's the new version w/o resampling and set to 48048Hz via MME.
Can't you use ForceSampleRate to set your card's clock to 48048? That's the whole point of this little experiment. Preferably using KS (2000/XP) or WASPI (Vista/7even)
 
I'll try this on my Digi96/8 PST to see if it takes it. Let me first make sure I understand what you guys have cooked up here.

So, I've got 23.976 movies playing back on 24Hz refresh display. If I set:

ForceSampleRate: 48048
BypassResampler: 1
Yes.

Then, essentially reclock will still "lock" on to the Audio clock at the new sample rate and I leave all other settings to "Auto" in the playback properties?
It probably (likely) won't work well. It's just an experiment to check, if cards can accept such rates. Use WASAPI (Vista/Seven) or KS (XP) if possible.
 
Yup, the PST only supports WaveOut and it does not work with alt freqs, which is consistent with was yesgrey2 pointed out earlier in the thread.

BUt, interestingly, it seems to work with my HDMI device (HD2600XT) and KS.
 
Can't you use ForceSampleRate to set your card's clock to 48048? That's the whole point of this little experiment. Preferably using KS (2000/XP) or WASPI (Vista/7even)
well I get bit-perfect out of Reclock, but my M-Audio soundcard only has ASIO drivers on XP...no KS

and anyway, you've always said that pass-through S/PDIF would NOT work because there's no realtime adaptation...well that's the exact same thing, I got 48048Hz@48.000Hz..yet I get glitches every few mins.

my next Asus soundcard has KS drivers, but -oddly enough- they're being resampled by the Asus drivers if the freq <96Khz...so if there were a way you could allow custom resampling rate(which would also allow much higher SQ on any soundcard), I might get lucky :D

a simple "double/quad sample rate" option in Reclock config and then instead of resampling at 47952Hz, it'd be 95904 or 191808Hz....I guess libsamplerate would yield fantastic results at these rates, the THD distorsion would prolly become totally inaudible :agree:

whatever double/quad or fixed sample rate is cool, we would then output everything to 96 or 192Khz instead of 48..
 
Last edited:
a simple "double/quad sample rate" option in the drivers and then instead of outputting 47952Hz, it'd output 95904 or 191808Hz....I guess libsamplerate would yield fantastic results at these rates, the THD distorsion would prolly become totally inaudible :agree:

Let me think about it... ;)
 
Let me think about it
awesome! going 192KHz would do exactly what is shown on the top animated gif from this wiki link : http://en.wikipedia.org/wiki/Total_harmonic_distortion

there'd be far more sample points to smooth things out :)

resampling at 99.9% is a true massacre and brings distortion up the roof! resampling at 250%(48KHz@191808Hz) should be totally inaudible :agree:

and yet, you'd get realtime adaptation.

because when you run bit-perfect 48KHz@48048Hz, you actually expect 24.000000000000000 fps to be displayed.

but whatever Rik Wang from the pstrip techsupport(w/ his oscilloscope), or Kazuya's PLV-Z4 projector/LCD screen OSD have proved that DX doesn't know jack about the real-world refresh rate.

if you use pstrip's search engine to get the perfect theoritical 48Hz from the GPU point of view, you actually get 48.002Hz in Reclock :eek:

meaning that I'm watching my movies at 23.998fps at this point(48.000Hz in Reclock), but don't mention it...I try not to think about it :D
 
Waveout goes through KMixer no matter what! I wonder what RME would have to say about that..
The current RME MME drivers are not "true" MME drivers. I think they are based on their WDM drivers but modifyed to bypass kmixer.
You can read this in the FF400 user's guide page 26:
Fireface Analog (1+2) MME
The devices with the MME suffix bypass the Windows Kernel Mixer. This way, they achieve
nearly the same performance as RME's previous (true) MME drivers. Also their behaviour (offsets,
start/stop, multi-client) is identical. So when not using GSIF or ASIO, MME should be your
preferred choice.
@yesgrey3 & leeperry:
Please have a look at ReClock 1.8.4.3
Thanks a lot James!:)
Have fun playing... ;)
I will.;)

I'll try this on my Digi96/8 PST to see if it takes it.
It would not work. Only RME cards with "SteadyClock" technology would work, and I suppose that the Digi96 doesn't has it.

actually I think KMixer sounds better than libsamplerate
That's funny... KMixer resamples everything to 16bit integer, and it's better than libsamplerate that uses 32bit float...;)
Perhaps there is another problem with libsamplerate. As soon as I have some time, I will post here a new resampler.dll for you to perform some tests, to see if it's the problem I'm thinking on...
 
That's funny... KMixer resamples everything to 16bit integer, and it's better than libsamplerate that uses 32bit float...;)
Perhaps there is another problem with libsamplerate. As soon as I have some time, I will post here a new resampler.dll for you to perform some tests, to see if it's the problem I'm thinking on...
well there's a lot of urban myths about KMixer, like it'd be 48KHz only....actually I ran a simple test yesterday :

1)-open a 24/96 file in foobar/ASIO > my audio drivers say "streaming at 96KHz"
2)-open a youtube webpage > I can hear both foobar and youtube simultaneously, and my drivers still say 96Khz

so foobar set the hardware sample rate to 96KHz, and KMixer is resampling youtube to 24/96 :confused:

but it's a USB soundcard, maybe KMixer is completely bypassed(I don't have a windows mixing console), and the M-Audio drivers would be doing all the work?

anyway, I'm quite sure 96/192KHz in KS w/ libsamplerate would sound delightful :agree:

for the MME thingie, apparently MME works on top of WDM on XP...it's a legacy compatibility API.

but you nailed it! maybe my MME drivers were also bit-perfect after all...but ASIO in foobar sounds better IMVHO :eek:
 
Last edited:
DWORD BypassResampler (0 or 1, default 0)
When setting to 1, I confirm that reclock works like my modded dll.
Thanks. Now I don't have to swapp the dll when I just want to listen using my onboard soundcard, which only accepts the standard clocks. I don't use the RME always...

DWORD ForceSampleRate ( 0=off, frequency in Hz, default 0)
Sets a fixed rate when opening Wave/DS/KS/Wasapi audio.
This works when using DS or waveout. With KS the frequency remains the original source frequency. The waveout is good enough for me, because the RME drivers bypass KMixer with them.:)
I will contact RME support to try to understand why this is not working when using KS. Could it be any bug when you implemented this in reclock?
With WASAPI I haven't tested, because currently I only have XP...
Just one note. We should be carefull when editing the DWORD ForceSampleRate, because the default option is setting the value in hexadecimal. When I started my testings, I did not realized this, and I thought that it was not working. I was setting it to 46080Hz, but in hexadecimal this corresponds to a decimal of 286848Hz!!! First we need to switch it to decimal.;)

James,
It would be great if you could set the clock automatically, because you already know the desired clock values. It would also be nice a small check box in reclock to bypass the resampler and avoiding to edit the registry, and the activation of the "bit exact" words in reclock's renderer infos.
That would be a little more work for you, but I think that the automatically setting of the clock should be pretty fast.;)

Once again, thank you very much!:)
 
It would also be nice a small check box in reclock to bypass the resampler and avoiding to edit the registry,
Nope. This is still (very) experimental. Not even "Alpha". ;)

and the activation of the "bit exact" words in reclock's renderer infos.
Already there...??? Look again. (You can't timeshift, of course, this won't be bit exact).
 
I will contact RME support to try to understand why this is not working when using KS. Could it be any bug when you implemented this in reclock?
oops... :eek: Yes, I believe I bugged it.... :bang:
 
Perhaps there is another problem with libsamplerate. As soon as I have some time, I will post here a new resampler.dll for you to perform some tests, to see if it's the problem I'm thinking on...
leeperry,
please try this resampler.dll and let me know how it sounds when resampling, comparing it with the resampler.dll that ships with reclock...
View attachment Resampler.zip
 
leeperry,
please try this resampler.dll and let me know how it sounds when resampling, comparing it with the resampler.dll that ships with reclock...
View attachment 7294
cool, thanks! what did you change? anyway, we'd need technical tests w/ a proper procedure...like a 1KHz test pattern, Emmanuel Piat gave me a link to benchmark resampling algos, I'll look into it 8)

but anyway -sorry to repeat myself like an old broken record :rolleyes:- but resampling at 99.9% would sound BAD w/ *any* algo....we'd need 96/192KHz so the resampling would have a huge freq headroom(125%/250%). hopefully James will find a quick trick to allow this nico54.gif

and I still wonder how you manage to get glitch-free audio w/o resampling and w/ 48.000Hz in Reclock..
 
Last edited:
Nope. This is still (very) experimental. Not even "Alpha". ;)
Ok. I can live perfectly with the registry keys, what I still miss is an automatic mode for the ForceSampleRate, so we don't need to edit the registry key. You already know which is the correct sample rate to use, is just setting it instead of using the value specified by the user.
Suggestion:
If ForceSampleRate == 1, automatic set.;)

Already there...??? Look again. (You can't timeshift, of course, this won't be bit exact).
No, it's not. If the sound is not resampled is bit perfect. Even if we timeshift it would be bit perfect, because it would be the "untouched" input audio...

cool, thanks! what did you change?
I will tell after you testing it, to be a blind test.;)
and I still wonder how you manage to get glitch-free audio w/o resampling and w/ 48.000Hz in Reclock..
You are also making me repeat myself like an old broken record...:D
Using my RME FF400 and setting the clock to 46080 (25fps) and 48048 (23.976fps).
Note that James said that the KS mode is bugged, so perhaps that's the reason it hasn't worked with you...
 
Back
Top