"Fossies" - the Fresh Open Source Software Archive
Member "audacity-minsrc-2.3.2/lib-src/libsoxr/README" (28 Aug 2018, 2866 Bytes) of package /linux/misc/audacity-minsrc-2.3.2.tar.xz:
As a special service "Fossies" has tried to format the requested text file into HTML format (style: standard
) with prefixed line numbers.
Alternatively you can here view
the uninterpreted source code file.
See also the last Fossies "Diffs"
side-by-side code changes report for "README": 2.2.2_vs_2.3.1
1 SoX Resampler Library Copyright (c) 2007-18 email@example.com
3 The SoX Resampler library `libsoxr' performs one-dimensional sample-rate
4 conversion -- it may be used, for example, to resample PCM-encoded audio.
5 For higher-dimensional resampling, such as for visual-image processing, you
6 should look elsewhere.
8 It aims to give fast¹ and very high quality² results for any constant
9 (rational or irrational) resampling ratio. Phase-response, preserved
10 bandwidth, aliasing, and rejection level parameters are all configurable;
11 alternatively, simple `preset' configurations may be selected. A
12 variable-rate resampling mode of operation is also included.
14 The resampler is currently available either as part of `libsox' (the audio
15 file-format and effect library), or stand-alone as `libsoxr' (this package).
16 The interfaces to libsox and libsoxr are slightly different, with that of
17 libsoxr designed specifically for resampling. An application requiring
18 support for other effects, or for reading-from or writing-to audio files or
19 devices, should use libsox (or other libraries such as libsndfile or
22 Libsoxr provides a simple API that allows interfacing using the most
23 commonly-used sample formats and buffering schemes: sample-formats may be
24 either floating-point or integer, and multiple channels either interleaved
25 or split in separate buffers. The API is documented in the header file
26 `soxr.h', together with sample code found in the 'examples' directory.
28 For compatibility with the popular `libsamplerate' library, the header file
29 `soxr-lsr.h' is provided and may be used as an alternative API.³ Note
30 however, that libsoxr does not provide a full emulation of libsamplerate
31 and that using this approach, only a sub-set of libsoxr's features are
34 The design was inspired by Laurent De Soras' paper `The Quest For The
35 Perfect Resampler', http://ldesoras.free.fr/doc/articles/resampler-en.pdf;
36 in essence, it combines Julius O. Smith's `Bandlimited Interpolation'
37 technique (https://ccrma.stanford.edu/~jos/resample/resample.pdf) with FFT-
38 based over-sampling.
40 Note that for real-time resampling, libsoxr may have a higher latency
41 than non-FFT based resamplers. For example, when using the `High Quality'
42 configuration to resample between 44100Hz and 48000Hz, the latency is
43 around 1000 output samples, i.e. roughly 20ms (though passband and FFT-
44 size configuration parameters may be used to reduce this figure).
46 For build and installation instructions, see the file `INSTALL'; for
47 copyright and licensing information, see the file `LICENCE'.
49 For support and new versions, see https://soxr.sourceforge.net
51 ¹ For example, multi-channel resampling can utilise multiple CPU-cores.
52 ² Bit-perfect within practical occupied-bandwidth limits.
53 ³ For details of that API, see http://www.mega-nerd.com/SRC/api.html.