Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | pcm/Traits: use 32 bit integer for S8 long_type | Max Kellermann | 2013-12-25 | 1 | -1/+1 |
| | | | | 16 bit is not enough for volume calculations. | ||||
* | pcm/Dither: add API documentation | Max Kellermann | 2013-12-24 | 1 | -0/+18 |
| | |||||
* | pcm/Dither: move shift from DitherConvert() to Dither() | Max Kellermann | 2013-12-24 | 1 | -2/+2 |
| | | | | All callers need this shift, so let's move it to the basic method. | ||||
* | pcm/Dither: rename DitherShift() to DitherConvert() | Max Kellermann | 2013-12-24 | 2 | -11/+11 |
| | |||||
* | pcm/Volume: convert to class | Max Kellermann | 2013-12-23 | 2 | -40/+126 |
| | | | | Prepare for adding state. | ||||
* | pcm/Volume: apply volume into destination buffer | Max Kellermann | 2013-12-23 | 1 | -21/+37 |
| | |||||
* | pcm/Volume: convert i386 code to template specialization | Max Kellermann | 2013-12-23 | 1 | -42/+42 |
| | |||||
* | pcm/Volume: move code to template pcm_volume_sample() | Max Kellermann | 2013-12-23 | 1 | -7/+16 |
| | |||||
* | pcm/PcmVolume: rename to Volume.cxx | Max Kellermann | 2013-12-23 | 3 | -2/+2 |
| | |||||
* | pcm/PcmConvert: move the Domain instance to Domain.cxx | Max Kellermann | 2013-12-23 | 6 | -9/+56 |
| | | | | | Rename pcm_convert_domain to pcm_domain. Move it out so we can use it without depending on the whole PcmConvert library. | ||||
* | pcm/Dither: convert remaining methods to templates | Max Kellermann | 2013-12-22 | 2 | -26/+39 |
| | | | | | Use the SampleTraits template and let the compiler generate a special case for S32 instead of reusing S24_P32. | ||||
* | pcm/Dither: generic sample dithering using template | Max Kellermann | 2013-12-22 | 2 | -13/+25 |
| | |||||
* | pcm/Traits: include stddef.h for size_t | Max Kellermann | 2013-12-22 | 1 | -0/+1 |
| | |||||
* | pcm/Traits: add MIN and MAX | Max Kellermann | 2013-12-22 | 2 | -9/+28 |
| | | | | Move from PcmClamp(). | ||||
* | pcm/Volume: add constant PCM_VOLUME_BITS | Max Kellermann | 2013-12-22 | 2 | -1/+6 |
| | |||||
* | pcm/Volume: make PCM_VOLUME_1 a "constexpr" | Max Kellermann | 2013-12-22 | 3 | -13/+13 |
| | |||||
* | pcm/Prng: make pcm_prng() inline | Max Kellermann | 2013-12-22 | 1 | -1/+1 |
| | |||||
* | util/Clamp: generic Clamp() function | Max Kellermann | 2013-12-22 | 1 | -1/+2 |
| | |||||
* | pcm/Traits: add typedef "sum_type" | Max Kellermann | 2013-12-02 | 3 | -5/+16 |
| | | | | | Allow 32 bit platforms to use 32 bit instead of 64 bit for summing 24 bit samples. | ||||
* | pcm/Traits: use int_leastX_t types | Max Kellermann | 2013-12-02 | 1 | -4/+4 |
| | |||||
* | pcm/PcmChannels: implement fake N-to-M mapping | Max Kellermann | 2013-12-02 | 1 | -1/+27 |
| | | | | | This is really just a mono mapper, but the important part is that this library cannot fail anymore. | ||||
* | pcm/PcmChannels: use the SampleTraits library | Max Kellermann | 2013-12-02 | 1 | -182/+60 |
| | |||||
* | pcm/Traits: add template specialization for FLOAT | Max Kellermann | 2013-12-02 | 1 | -0/+11 |
| | |||||
* | pcm/PcmChannels: use struct ConstBuffer | Max Kellermann | 2013-12-02 | 3 | -112/+74 |
| | |||||
* | pcm/PcmBuffer: add typed method GetT() | Max Kellermann | 2013-12-02 | 1 | -0/+6 |
| | |||||
* | pcm/PcmUtils: use the SampleTraits library | Max Kellermann | 2013-12-02 | 4 | -17/+14 |
| | |||||
* | pcm/PcmUtils: remove unused function PcmClampN() | Max Kellermann | 2013-12-02 | 1 | -12/+0 |
| | |||||
* | pcm/PcmVolume: use the SampleTraits library | Max Kellermann | 2013-12-02 | 1 | -30/+22 |
| | |||||
* | pcm/PcmFormat: use SampleTraits::long_type in ConvertFromFloat() | Max Kellermann | 2013-12-02 | 1 | -2/+4 |
| | |||||
* | pcm/PcmPrng: add "constexpr" | Max Kellermann | 2013-12-02 | 1 | -1/+1 |
| | |||||
* | pcm/PcmMix: use the SampleTraits library for MixRamp | Max Kellermann | 2013-12-01 | 1 | -15/+22 |
| | |||||
* | pcm/PcmMix: use the SampleTraits library | Max Kellermann | 2013-12-01 | 1 | -21/+29 |
| | |||||
* | pcm/SampleTraits: use 64 bit for S24 long_type | Max Kellermann | 2013-12-01 | 1 | -1/+1 |
| | |||||
* | pcm/Traits: add typedef long_type | Max Kellermann | 2013-12-01 | 1 | -0/+13 |
| | |||||
* | pcm/Traits: add API documentation | Max Kellermann | 2013-12-01 | 1 | -0/+24 |
| | |||||
* | pcm/PcmFormat: move generic definitions to Traits.hxx | Max Kellermann | 2013-12-01 | 2 | -45/+72 |
| | |||||
* | pcm/SoxrResampler: new resampler option using libsoxr | Max Kellermann | 2013-12-01 | 3 | -0/+162 |
| | |||||
* | pcm/ConfiguredResampler: convert boolean flag to enum | Max Kellermann | 2013-12-01 | 1 | -13/+31 |
| | | | | Prepare for adding more resamplers. | ||||
* | pcm/PcmResampler: convert to abstract interface | Max Kellermann | 2013-11-30 | 17 | -886/+694 |
| | | | | | | The PcmResampler interface is implemented by the two classes FallbackPcmResampler and LibsampleratePcmResampler. This prepares for adding more resampler libraries. | ||||
* | pcm/PcmConvert: move code to new class GluePcmResampler | Max Kellermann | 2013-11-30 | 4 | -139/+152 |
| | |||||
* | pcm/PcmConvert: move code to new class PcmChannelsConverter | Max Kellermann | 2013-11-30 | 4 | -66/+222 |
| | |||||
* | pcm/PcmConvert: move code to new class PcmFormatConverter | Max Kellermann | 2013-11-30 | 4 | -68/+243 |
| | |||||
* | pcm/PcmConvert: add AudioFormat parameters | Max Kellermann | 2013-11-30 | 2 | -53/+53 |
| | | | | | | | Don't use src_format. In the middle of Convert(), the current AudioFormat has already been modified, it's now something in between src_format and dest_format. This simplifies keeping track of what remains to be done. | ||||
* | pcm/PcmConvert: use struct ConstBuffer internally | Max Kellermann | 2013-11-29 | 2 | -61/+36 |
| | |||||
* | pcm/PcmDsd: use struct ConstBuffer | Max Kellermann | 2013-11-29 | 3 | -25/+26 |
| | |||||
* | pcm/PcmDsd: make attributes private | Max Kellermann | 2013-11-29 | 1 | -1/+2 |
| | |||||
* | PcmConvert: add pcm_convert_global_init() | Max Kellermann | 2013-11-29 | 2 | -0/+9 |
| | | | | | Wrapper for pcm_resample_global_init(), just in case other PCM libraries need initialization, too. | ||||
* | pcm: drop compatibility with libsamplerate older than 0.1.3 | Max Kellermann | 2013-11-28 | 1 | -20/+0 |
| | | | | Remove compatibility code. | ||||
* | PcmConvert: fix src_format corruption when converting from DSD | Max Kellermann | 2013-11-28 | 2 | -6/+12 |
| | | | | | | | Method PcmConvert::Convert() modifies the src_format variable. This used to be a parameter, however commit d2679f59c made it an attribute instead. The modification to src_format persisted, and the next call would return garbage. | ||||
* | include cleanup using iwyu | Max Kellermann | 2013-11-28 | 5 | -3/+5 |
| |