Support soxr custom recipes.
MPD uses soxr with prefined resample recipes. Soxr also support defining a recipe your self. This commit will support a custom recipe by changing the existing quality setting to "custom". The same structs as the predefined recipes uses can now set by hand. This will make the following settings available: - precision 16|20|24|28|32 bits, example "28" - phase_response - 0-100, example "45" - passband_end - used bandwidth of source 80-99.7%, example "99.7.0" - stopband_begin - anti aliasing 100.0+%, example "100". - attenuation - signal reduciton in dB's, 0-30. example "3.0". - flags "0" - additional bitmask with extra settings The data is set in the structs soxr_quality_spec and soxr_io_spec (found in soxr.h).
This commit is contained in:

committed by
Max Kellermann

parent
38498d3ee2
commit
9aa432c078
@@ -746,6 +746,25 @@ Valid quality values for libsoxr:
|
||||
* "medium"
|
||||
* "low"
|
||||
* "quick"
|
||||
* "custom"
|
||||
|
||||
If the quality is set to custom also the following settings are available:
|
||||
|
||||
* - Name
|
||||
- Description
|
||||
* - **precision**
|
||||
- The precision in bits. Valid values 16,20,24,28 and 32 bits.
|
||||
* - **phase_response**
|
||||
- Between the 0-100, Where 0=MINIMUM_PHASE and 50=LINEAR_PHASE.
|
||||
* - **passband_end**
|
||||
- The % of source bandwidth where to start filtering. Typical between the 90-99.7.
|
||||
* - **stopband_begin**
|
||||
- The % of the source bandwidth Where the anti aliasing filter start. Value 100+.
|
||||
* - **attenuation**
|
||||
- Reduction in dB's to prevent clipping from the resampling process.
|
||||
* - **flags**
|
||||
- Bitmask with additional option see soxr documentation for specific flags.
|
||||
|
||||
|
||||
.. _output_plugins:
|
||||
|
||||
|
Reference in New Issue
Block a user