Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | pcm/Order: new library to convert from FLAC to ALSA channel order | Max Kellermann | 2015-10-27 | 4 | -0/+199 |
| | | | | | | | | | | | This new library is integrated in the PcmExport class and (if enabled) converts MPD's channel order (= FLAC channel order) to ALSA channel order. This fixes: http://bugs.musicpd.org/view.php?id=3147 and http://bugs.musicpd.org/view.php?id=3255 | ||||
* | pcm/Interleave: add stereo optimization | Max Kellermann | 2015-06-22 | 1 | -0/+19 |
| | |||||
* | pcm/Interleave: instantiate a 16 bit optimization | Max Kellermann | 2015-06-22 | 1 | -0/+15 |
| | |||||
* | pcm/Interleave: convert PcmInterleave32() to template | Max Kellermann | 2015-06-22 | 1 | -4/+13 |
| | |||||
* | pcm/Interleave: add optimization for 32 bit samples | Max Kellermann | 2015-06-22 | 2 | -5/+48 |
| | | | | Move code from the "vorbis" decoder. | ||||
* | pcm/Interleave: add "restrict" keywords | Max Kellermann | 2015-06-22 | 2 | -3/+6 |
| | |||||
* | decoder/ffmpeg: move code to pcm/Interleave.cxx | Max Kellermann | 2015-06-22 | 2 | -0/+80 |
| | |||||
* | pcm/soxr: fix recipe parser | Max Kellermann | 2015-06-20 | 1 | -1/+1 |
| | |||||
* | *: doxygen fixups | Max Kellermann | 2015-03-17 | 6 | -25/+11 |
| | |||||
* | pcm/SoxrResampler: move quality recipe names to table | Max Kellermann | 2015-01-25 | 1 | -25/+23 |
| | |||||
* | pcm/SoxrResampler: allow multi-threaded resampling | Max Kellermann | 2015-01-22 | 1 | -1/+1 |
| | |||||
* | pcm/SoxrResampler: add a global soxr_runtime_spec_t variable | Max Kellermann | 2015-01-22 | 1 | -1/+5 |
| | |||||
* | Config: add section "resampler" | Max Kellermann | 2015-01-22 | 5 | -33/+123 |
| | |||||
* | config/Option: convert to strictly-typed enum | Max Kellermann | 2015-01-21 | 1 | -1/+1 |
| | |||||
* | pcm/SoxrResampler: use a global soxr_quality_spec_t variable | Max Kellermann | 2015-01-21 | 1 | -6/+7 |
| | |||||
* | pcm/SoxrResampler: soxr_parse_converter() returns unsigned long | Max Kellermann | 2015-01-21 | 1 | -13/+18 |
| | |||||
* | pcm/SoxrResampler: add constant SOXR_DEFAULT_QUALITY | Max Kellermann | 2015-01-21 | 1 | -1/+3 |
| | |||||
* | pcm/SoxrResampler: fix indent | Max Kellermann | 2015-01-21 | 1 | -1/+1 |
| | |||||
* | Copyright year 2015 | Max Kellermann | 2015-01-01 | 45 | -45/+45 |
| | |||||
* | Merge branch 'v0.19.x' | Max Kellermann | 2014-12-26 | 1 | -1/+1 |
|\ | |||||
| * | db/simple: fix implicit nullptr/bool conversion | Max Kellermann | 2014-12-26 | 1 | -1/+1 |
| | | | | | | | | | | Return false on error, not nullptr. | ||||
* | | configure.ac: add macro MPD_ENABLE_AUTO_PKG | Max Kellermann | 2014-11-21 | 1 | -8/+8 |
|/ | | | | Simplify the definition of many build options. | ||||
* | pcm/SoxrResampler: round output buffer size up | Max Kellermann | 2014-11-10 | 1 | -1/+2 |
| | | | | | | | | The old formula calculates the output buffer size with "regular" rounding (to the nearest integer), however sometimes, that is insufficient and the last sample cannot be resampled. This causes audible distortions. By changing the formula to consider the worst case (always round up), this problem is eliminated. | ||||
* | pcm/ChannelsConverter: fix variable used to generate error message | Max Kellermann | 2014-10-23 | 1 | -1/+1 |
| | | | | | Use the "_format" parameter instead of the (uninitialized) "format" attribute. | ||||
* | pcm/FormatConverter: move check to Open() | Max Kellermann | 2014-10-23 | 1 | -10/+24 |
| | | | | | Report unsupported format while opening the filter, not later when the first conversion takes place. | ||||
* | pcm/PcmConvert: assign {src,dest}_format at the end | Max Kellermann | 2014-10-23 | 1 | -12/+13 |
| | | | | | Fixes assertion failure in destructor by not assigning {src,dest}_format when an error occurs. | ||||
* | pcm/PcmConvert: make AudioFormat parameters "const" | Max Kellermann | 2014-10-23 | 1 | -1/+1 |
| | |||||
* | pcm: --disable-dsd also disables the dsd2pcm library | Max Kellermann | 2014-09-26 | 2 | -1/+11 |
| | |||||
* | PcmConvert: eliminate unused local variable "format" | Max Kellermann | 2014-09-26 | 1 | -12/+2 |
| | |||||
* | output/alsa, pcm: rename "DSD over USB" to "DoP" | Max Kellermann | 2014-08-31 | 4 | -30/+29 |
| | | | | | The standard has been renamed since the early draft that was implemented in MPD. | ||||
* | *: add missing Compiler.h includes | Max Kellermann | 2014-08-30 | 3 | -0/+3 |
| | | | | Necessary for "final" on gcc 4.6. | ||||
* | PcmExport: remove obsolete API documentation | Max Kellermann | 2014-08-26 | 1 | -2/+1 |
| | |||||
* | pcm/PcmDsd: remove "lsbfirst" support | Max Kellermann | 2014-08-23 | 3 | -6/+4 |
| | | | | Unused. Bit reversing is done in the decoder. | ||||
* | pcm/dsd2pcm: add license headers | Max Kellermann | 2014-08-23 | 7 | -0/+210 |
| | | | | | Obtained from the Mercurial repository at https://code.google.com/p/dsd2pcm/ | ||||
* | pcm/SoxrResampler: add missing string.h include | Max Kellermann | 2014-08-16 | 1 | -0/+1 |
| | |||||
* | PcmExport: add missing <iterator> include | Max Kellermann | 2014-08-13 | 1 | -0/+2 |
| | | | | For the range-based loop on a ConstBuffer object. | ||||
* | PcmDsdUsb: use class ConstBuffer | Max Kellermann | 2014-08-12 | 3 | -18/+16 |
| | |||||
* | PcmExport: use class ConstBuffer | Max Kellermann | 2014-08-12 | 2 | -36/+23 |
| | |||||
* | PcmConvert: Convert() returns ConstBuffer | Max Kellermann | 2014-08-12 | 2 | -12/+4 |
| | |||||
* | pcm: use nullptr instead of NULL | Max Kellermann | 2014-07-30 | 2 | -3/+3 |
| | |||||
* | pcm/Neon: explicit rounding | Max Kellermann | 2014-03-19 | 1 | -3/+5 |
| | | | | Convert to 31 bit first, then right-shift with rounding to 16 bit. | ||||
* | pcm/Neon: make neon_x4_b() variadic | Max Kellermann | 2014-03-16 | 1 | -6/+5 |
| | |||||
* | pcm/Neon: apply bit shift during float->int conversion | Max Kellermann | 2014-03-16 | 1 | -7/+2 |
| | | | | Avoid multiplication. This is a speedup of 20%. | ||||
* | pcm/PcmFormat: ARM NEON optimizations for float->s16 | Max Kellermann | 2014-03-15 | 2 | -1/+135 |
| | | | | This is nearly 4 times faster than the "portable" algorithm. | ||||
* | pcm/PcmFormat: don't use WritableBuffer | Max Kellermann | 2014-03-14 | 1 | -28/+20 |
| | | | | The previous commit eliminated the need for that. | ||||
* | pcm/PcmFormat: instantiate FloatToInteger<S32> | Max Kellermann | 2014-03-14 | 1 | -6/+1 |
| | | | | | .. instead of reusing FloatToInteger<S24> and converting from S24 to S32 in-place. | ||||
* | pcm/PcmFormat: eliminate more duplicate code with templates | Max Kellermann | 2014-03-14 | 3 | -122/+233 |
| | | | | | Refactor the conversion functions to classes and pass an instance to the new function AllocateConvert(). | ||||
* | pcm/PcmFormat: eliminate local variable "bits" | Max Kellermann | 2014-03-14 | 1 | -3/+1 |
| | |||||
* | pcm/PcmFormat: remove obsolete AllocateFromFloat() overload | Max Kellermann | 2014-03-14 | 1 | -15/+0 |
| | |||||
* | util/{Const,Writable}Buffer: add operator[] | Max Kellermann | 2014-03-01 | 1 | -3/+3 |
| |