On Mon, Apr 22, 2013 at 1:49 PM, Peter Meerwald <pmeerw at pmeerw.net> wrote: > > Hello, > > > 3. Pass the resampling test cases in new environment. > > I have found the test cases in the present code tree in > > /src/tests/resampler.c where all combinations of sampling rate and sampling > > format are tested. After refactoring the code, the old test cases should > > pass. > > currently, the test is not self-checking, i.e. the results are not > compared against known-good values > > basically the test just checks if the codes crashes or not; and one could > manually check the values -- there is room for improvement yes, the present test code is not self-testing. We can have a set of sample input and ideal resampled output for various configurations predetermined. Then for all combinations of sampling rate conversion and sampling format can be tested where the output will be compared to our predetermined set and the test case will be validated. > > > > > 3. Changing the resampling algorithm dynamically based on the scenario. > > Fixing the sampling rate, for different sources different resampling > > algorithms can be used based on either CPU performance/Quality or both. > > for a stronger proposal I suggest to illustrate a convincing/meaningful > scenario? what does PA_RESAMPLER_VARIABLE_RATE do? how are algorithms > selected currently? I am trying to understand the current code and correct me if i am wrong . I found that based on input and output resampling rates and PA_RESAMPLER_VARIABLE_RATE resampling algorithms are chosen. I still couldn't find what PA_RESAMPLER_VARIABLE_RATE does. I thought of coming out with scenarios for the proposed case. For example i could come up with 2 scenarios: 1. upsampling from 8KHz to 44.1KHz 2. downsampling from 48KHz to 44.1KHz For both these, we would have run a sample input through all the resampling algorithms supported by PA and gather the quality metrics such as quality, CPU usage. I have been also working on how to compare the quality of the resampled output and I have found this link valuable[1]. I can also do a similar thing. So with a set of data like which algorithms suits a specific case in hand, we can select an algorithm in the run time based on the user preference/our system. [1]http://leute.server.de/wilde/resample.html P.S: I have been also working on fixing the mono-only bug, which delayed replying to this mail. > > regards, p. > > -- > > Peter Meerwald > +43-664-2444418 (mobile)