Skip to main content

Notice

If you are using a Hotmail or Outlook email address, please change it now, as Microsoft is rejecting all email from our service outright.
Topic: My components (Read 23917 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Re: My components

Reply #75
I can ask Peter about that, but basically, prior to some semi-recent changes to my component, it would "cheat" to ensure it gained total priority over all AAC formats if installed. Some users asked this to be reduced to its current state, because they care about their > ±1.0 peaks on AAC files being properly represented by a floating point decoder, which this component is not.

Re: My components

Reply #76
So. it's not possible to decode only HE-AAC 960 by this component but leave other LC and HE flavors to the built-in decoder?

Re: My components

Reply #77
It may be possible, if the internal component actively rejects such streams and hands them off to me. And if I actively accept HE-AAC only if it's 960.

I still have to ask Peter about it, because his component doesn't reject such files, so I'd only get them if my component happened to accept HE-AAC and by chance was a higher priority due to the load order.

Re: My components

Reply #78
It is done.

Re: My components

Reply #79
Thanks. Will it work as expected with next fb2k update?

Re: My components

Reply #80
What exactly do you mean? It works here. I guess it requires an update to the player for the player to not decode these formats itself.

Re: My components

Reply #81
Indeed, it works with 1.6.1 beta.

Re: My components

Reply #82
I'll be introducing a new feature for 1.6.1 beta and newer as well. Basically, an input component attribute hook that only just got implemented into regular use by 1.6.1 and up, it will allow any input which supports variable sample rates on its own, to automatically configure itself during normal playback to match the settings of the output stream, so that outputs don't need to resample anything you give them.

So, for instance, all of my synthesizer and emulator components which support variable output rate, can do their own resampling or mixing at a different rate, instead of requiring the user to configure a rate, which may or may not be resampled anyway.

Re: My components

Reply #83
Any plans to update foo_midi? I see some BASS libraries and libADLMIDI got updated. Thanks.

 

Re: My components

Reply #84
It has been updated, and apparently thanks to Visual Studio, it no longer works under Wine.

E: It probably works under Wine now with the latest update. Woohoo for stupidcoding that used to work, but that I forgot to fix.

Re: My components

Reply #85
Hi kode, regarding your usf decoder component. The resampler used with the "Resample to: " option isn't transparent. It makes the audio sound muffled? I don't know how to explain it. I've included a abx log with the usf converted straight to flac with your option ticked off and on set to 44100hz.

Code: [Select]
foo_abx 2.0.6d report
foobar2000 v1.6.2
2020-10-22 16:25:22

File A: CarrInst.flac
SHA1: ca233a9aee993a86391ce7e4f9817274c82bf6a8
File B: CarrInstResampled.flac
SHA1: becda9f29c09b446eb0a3c9ac92b42d6ac66ee29

Output:
Default : Primary Sound Driver
Crossfading: NO

16:25:22 : Test started.
16:25:58 : 01/01
16:26:15 : 02/02
16:26:25 : 03/03
16:26:35 : 04/04
16:26:49 : 05/05
16:26:59 : 06/06
16:27:11 : 07/07
16:27:22 : 08/08
16:27:33 : 09/09
16:27:44 : 10/10
16:27:56 : 11/11
16:28:06 : 12/12
16:28:18 : 13/13
16:28:31 : 14/14
16:28:41 : 15/15
16:28:57 : 16/16
16:28:57 : Test finished.

 ----------
Total: 16/16
p-value: 0 (0%)

 -- signature --
6248b49e980eeb792e0de4acf648d5e710e1f9f9

Re: My components

Reply #86
It isn't meant to be transparent. It's literally the same resampler that the USF sets themselves use to resample when mixing. If you want transparent resampling, turn off the built-in one and let the player resample your audio for you. Just don't expect miracles when upsampling 22KHz or lower audio to whatever rate your sound hardware expects. Hell, I'd have expected a proper sinc resampler to muffle the audio even more than this cubic resampler does.

Re: My components

Reply #87
Thank you very much for the explanation.

Edit: Is it proper to use sinc resamplers when the frequency of files are that low? What did you mean by not to expect much from resampling lower input sample rates?

Re: My components

Reply #88
Sinc resamplers will upsample low sample rate files to higher sample rate files, without actually adding any high frequency content. They should sound identical.

The current resampler, a simple fixed table cubic resampler, will actually add higher frequency content in the form of aliasing. It should be possible to ABX that against a sinc resampler.

I was suggesting that a "high quality" resampler would actually produce transparent results, but it should actually sound more muffled than a cubic filter with the same sample ratio. Anything which sounds less muffled is adding high frequency content that did not exist in the source audio.

Re: My components

Reply #89
I was suggesting that a "high quality" resampler would actually produce transparent results, but it should actually sound more muffled than a cubic filter with the same sample ratio. Anything which sounds less muffled is adding high frequency content that did not exist in the source audio.
Yeah that's odd, using the PPHS resampler shows in a spectrogram that it doesnt add any high frequency content but it sounds less muffled than the cubic resampler, which as you said adds aliasing.

Also as a side note the dbpa/ssrc resampler doesnt actually resample the audio in the foobar converter when it's added as a dsp. Don't know if that's a bug or not.

Re: My components

Reply #90
WASAPI Shared outputs already resample using your preferred resampler to match the output's requirements. Either the DSP chain is ignoring a resampler on the end of the chain in this case, as it is indeed redundant, or you can't hear the difference.

Re: My components

Reply #91
Yeah I know it's redundant  :D, I was just wondering that's all. Thanks again for the explanations.

Re: My components

Reply #92
I just downloaded some USF archives, disabled resampling in foo_input_usf settings and they are decoded at strange sample rates such as 32006 Hz or 21998 Hz.

It seems that SSRC has problems with such samplerates. It can convert from 32000 Hz or 22000 Hz to 44100 Hz, but not from 32006 or 21998.

Re: My components

Reply #93
I did notice that input files at 22018hz whether they were usf or flac didn't get touched by SSRC when transcoding as the resulting file was always 22018hz. 44100 inputs had the end files resampled properly at whatever I chose for example 22050hz or 48000hz.

Edit: Just tested a 22050hz file to upsample at 44100hz and it works as expected.

 
SimplePortal 1.0.0 RC1 © 2008-2020