lossyWAV 1.1.0 Development Thread.
Reply #137 – 2008-05-23 21:09:07
... quality_shaping_factor : array[0..quality_presets] = (0,0,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1.0); ... When playing around with shaping my personal conclusion was: do it only with high quality settings as otherwise the bitrate increase is too severe. I'm also a bit afraid that with moderate quality settings and a very moderate noise shift unmasked hiss may concentrate in the 6...11 kHz zone where our ears are still pretty sensitive to hiss. I'd welcome to do it only from a certain -q setting above like from -q 6. From my discussion with SG, it would seem that the effect moves the noise to the same frequency range no matter how big the factor is (0 to 1, obviously none for 0.0 ). Think of the factor a bit like the interpolation factor between in this case pure white noise and shaped noise. 0.5 would then be 50% of each....I'm also a bit afraid that with moderate quality settings and a very moderate noise shift unmasked hiss may concentrate in the 6...11 kHz zone That's odd because the filter (at least at 1.0) doesn't amplify anything below 13 kHz. 11 kHz is still rejected by about 5 dB. In other news, I've finished implementing & testing new filter code for adaptive noise shaping. This could be one building block for improving lossyWAV or WavPack's lossy-only mode. (Note: It doesn't include a psychoacoustic model. This would be another building block.) Cheers, SG Excellent news SG! [edit] I processed my (now) 55 problem sample set (Mardel's sample and udial added) and the results are as follows:|-------------|-------------|-------------|-------------|-------------|-------------| | -s factor | -q 0 | --portable | --standard | --extreme | --insane | |-------------|-------------|-------------|-------------|-------------|-------------| | 0.00 |312.11 kbit/s|406.03 kbit/s|485.17 kbit/s|565.05 kbit/s|640.03 kbit/s| |-------------|-------------|-------------|-------------|-------------|-------------| | 0.25 |322.66 kbit/s|410.41 kbit/s|487.22 kbit/s|565.80 kbit/s|640.24 kbit/s| |-------------|-------------|-------------|-------------|-------------|-------------| | 0.50 |338.95 kbit/s|418.19 kbit/s|491.29 kbit/s|567.58 kbit/s|640.81 kbit/s| |-------------|-------------|-------------|-------------|-------------|-------------| | 0.75 |354.77 kbit/s|429.28 kbit/s|498.20 kbit/s|571.04 kbit/s|642.13 kbit/s| |-------------|-------------|-------------|-------------|-------------|-------------| | 1.00 |374.46 kbit/s|444.93 kbit/s|508.96 kbit/s|577.15 kbit/s|644.75 kbit/s| |-------------|-------------|-------------|-------------|-------------|-------------| Based on these results I would like to propose that shaping_factor:= quality_level/10 for 1.0.1k for testing (will be able to be overridden with -s 0 or --shaping 0).