Revert "pcm/Convert: add option to enable the integer-only dsd2pcm implementation"

This reverts commit c84bae739a.  A
configuration option is not necessary, because the PcmConvert
constructor knows already whether integer or floating point is needed.
This commit is contained in:
Max Kellermann 2020-01-17 19:11:10 +01:00
parent c84bae739a
commit 8db86e2820
5 changed files with 0 additions and 42 deletions

1
NEWS
View File

@ -22,7 +22,6 @@ ver 0.22 (not yet released)
- ffmpeg: new plugin based on FFmpeg's libavfilter library
- hdcd: new plugin based on FFmpeg's "af_hdcd" for HDCD playback
- volume: convert S16 to S24 to preserve quality and reduce dithering noise
- dsd: add integer-only DSD to PCM converter
* output
- jack: add option "auto_destination_ports"
- jack: report error details

View File

@ -568,26 +568,6 @@ Sometimes, music needs to be resampled before it can be played; for example, CDs
Check the :ref:`resampler_plugins` reference for a list of resamplers
and how to configure them.
DSD
^^^
There are three ways to play back DSD (Direct Stream Digital):
- natively if your output supports it (ALSA only and requires a sound
card with native DSD support)
- `DSD over PCM <http://dsd-guide.com/dop-open-standard>`_: wrapped
inside fake 24 bit PCM samples (ALSA and OSX only and requires an
external DAC with DoP support)
- for everything else, MPD automatically converts DSD to PCM
For the last option, the setting ``dsd2pcm_converter`` selects a
conversion method. The default is ``float`` which converts to
floating point samples. For CPUs with a weak floating point unit
(e.g. some ARMs like the one in the Raspberry Pi), it may be faster to
use ``integer``, which is an integer-only implementation of the
conversion algorithm.
Client Connections
------------------

View File

@ -79,7 +79,6 @@ enum class ConfigOption {
DESPOTIFY_USER,
DESPOTIFY_PASSWORD,
DESPOTIFY_HIGH_BITRATE,
DSD2PCM_CONVERTER,
MAX
};

View File

@ -75,7 +75,6 @@ const ConfigTemplate config_param_templates[] = {
{ "despotify_user", false, true },
{ "despotify_password", false, true },
{ "despotify_high_bitrate", false, true },
{ "dsd2pcm_converter" },
};
static constexpr unsigned n_config_param_templates =

View File

@ -19,35 +19,16 @@
#include "Convert.hxx"
#include "ConfiguredResampler.hxx"
#include "config/Data.hxx"
#include "util/ConstBuffer.hxx"
#include "util/StringAPI.hxx"
#include <stdexcept>
#include <assert.h>
#ifdef ENABLE_DSD
static bool dsd2pcm_integer = false;
#endif
void
pcm_convert_global_init(const ConfigData &config)
{
pcm_resampler_global_init(config);
#ifdef ENABLE_DSD
dsd2pcm_integer = config.With(ConfigOption::DSD2PCM_CONVERTER, [](const char *s){
if (s == nullptr)
return false;
else if (StringIsEqual(s, "float"))
return false;
else if (StringIsEqual(s, "integer"))
return true;
else
throw std::runtime_error("Unrecognized value");
});
#endif
}
PcmConvert::PcmConvert(const AudioFormat _src_format,