diff options
Diffstat (limited to 'src/output/plugins')
20 files changed, 57 insertions, 58 deletions
diff --git a/src/output/plugins/AlsaOutputPlugin.cxx b/src/output/plugins/AlsaOutputPlugin.cxx index 1d3d24869..b1b44b8bc 100644 --- a/src/output/plugins/AlsaOutputPlugin.cxx +++ b/src/output/plugins/AlsaOutputPlugin.cxx @@ -64,7 +64,7 @@ class AlsaOutput final friend struct AudioOutputWrapper<AlsaOutput>; - FilteredAudioOutput base; + AudioOutput base; Manual<PcmExport> pcm_export; @@ -414,7 +414,7 @@ static constexpr Domain alsa_output_domain("alsa_output"); AlsaOutput::AlsaOutput(EventLoop &loop, const ConfigBlock &block) :MultiSocketMonitor(loop), DeferredMonitor(loop), - base(alsa_output_plugin, block), + base(alsa_output_plugin), device(block.GetBlockValue("device", "")), #ifdef ENABLE_DSD dop(block.GetBlockValue("dop", false) || diff --git a/src/output/plugins/AoOutputPlugin.cxx b/src/output/plugins/AoOutputPlugin.cxx index 0be06acd0..ed8b359aa 100644 --- a/src/output/plugins/AoOutputPlugin.cxx +++ b/src/output/plugins/AoOutputPlugin.cxx @@ -40,7 +40,7 @@ static unsigned ao_output_ref; class AoOutput { friend struct AudioOutputWrapper<AoOutput>; - FilteredAudioOutput base; + AudioOutput base; const size_t write_size; int driver; @@ -95,7 +95,7 @@ MakeAoError() } AoOutput::AoOutput(const ConfigBlock &block) - :base(ao_output_plugin, block), + :base(ao_output_plugin), write_size(block.GetBlockValue("write_size", 1024u)) { if (ao_output_ref == 0) { diff --git a/src/output/plugins/FifoOutputPlugin.cxx b/src/output/plugins/FifoOutputPlugin.cxx index c001e2195..788ad85e6 100644 --- a/src/output/plugins/FifoOutputPlugin.cxx +++ b/src/output/plugins/FifoOutputPlugin.cxx @@ -37,7 +37,7 @@ class FifoOutput { friend struct AudioOutputWrapper<FifoOutput>; - FilteredAudioOutput base; + AudioOutput base; const AllocatedPath path; std::string path_utf8; @@ -75,7 +75,7 @@ public: static constexpr Domain fifo_output_domain("fifo_output"); FifoOutput::FifoOutput(const ConfigBlock &block) - :base(fifo_output_plugin, block), + :base(fifo_output_plugin), path(block.GetPath("path")) { if (path.IsNull()) diff --git a/src/output/plugins/HaikuOutputPlugin.cxx b/src/output/plugins/HaikuOutputPlugin.cxx index d6b8c5b2e..bb8d9a378 100644 --- a/src/output/plugins/HaikuOutputPlugin.cxx +++ b/src/output/plugins/HaikuOutputPlugin.cxx @@ -48,7 +48,7 @@ class HaikuOutput { friend int haiku_output_get_volume(HaikuOutput &haiku); friend bool haiku_output_set_volume(HaikuOutput &haiku, unsigned volume); - FilteredAudioOutput base; + AudioOutput base; size_t write_size; @@ -66,7 +66,7 @@ class HaikuOutput { public: HaikuOutput(const ConfigBlock &block) - :base(haiku_output_plugin, block), + :base(haiku_output_plugin), /* XXX: by default we should let the MediaKit propose the buffer size */ write_size(block.GetBlockValue("write_size", 4096u)) {} diff --git a/src/output/plugins/JackOutputPlugin.cxx b/src/output/plugins/JackOutputPlugin.cxx index 770de3fdb..e1884a95c 100644 --- a/src/output/plugins/JackOutputPlugin.cxx +++ b/src/output/plugins/JackOutputPlugin.cxx @@ -43,7 +43,7 @@ static constexpr unsigned MAX_PORTS = 16; static constexpr size_t jack_sample_size = sizeof(jack_default_audio_sample_t); struct JackOutput { - FilteredAudioOutput base; + AudioOutput base; /** * libjack options passed to jack_client_open(). @@ -162,7 +162,7 @@ parse_port_list(const char *source, std::string dest[]) } JackOutput::JackOutput(const ConfigBlock &block) - :base(jack_output_plugin, block), + :base(jack_output_plugin), name(block.GetBlockValue("client_name", nullptr)), server_name(block.GetBlockValue("server_name", nullptr)) { @@ -443,7 +443,7 @@ JackOutput::Disable() } } -static FilteredAudioOutput * +static AudioOutput * mpd_jack_init(EventLoop &, const ConfigBlock &block) { jack_set_error_function(mpd_jack_error); diff --git a/src/output/plugins/NullOutputPlugin.cxx b/src/output/plugins/NullOutputPlugin.cxx index 4603e16df..4b28751d5 100644 --- a/src/output/plugins/NullOutputPlugin.cxx +++ b/src/output/plugins/NullOutputPlugin.cxx @@ -26,7 +26,7 @@ class NullOutput { friend struct AudioOutputWrapper<NullOutput>; - FilteredAudioOutput base; + AudioOutput base; const bool sync; @@ -34,7 +34,7 @@ class NullOutput { public: NullOutput(const ConfigBlock &block) - :base(null_output_plugin, block), + :base(null_output_plugin), sync(block.GetBlockValue("sync", true)) {} static NullOutput *Create(EventLoop &event_loop, diff --git a/src/output/plugins/OSXOutputPlugin.cxx b/src/output/plugins/OSXOutputPlugin.cxx index c619d2ec5..03c1bc6f1 100644 --- a/src/output/plugins/OSXOutputPlugin.cxx +++ b/src/output/plugins/OSXOutputPlugin.cxx @@ -36,7 +36,7 @@ #include <memory> struct OSXOutput { - FilteredAudioOutput base; + AudioOutput base; /* configuration settings */ OSType component_subtype; @@ -80,7 +80,7 @@ osx_output_test_default_device(void) } OSXOutput::OSXOutput(const ConfigBlock &block) - :base(osx_output_plugin, block) + :base(osx_output_plugin) { const char *device = block.GetBlockValue("device"); @@ -103,7 +103,7 @@ OSXOutput::OSXOutput(const ConfigBlock &block) sync_sample_rate = block.GetBlockValue("sync_sample_rate", false); } -static FilteredAudioOutput * +static AudioOutput * osx_output_init(EventLoop &, const ConfigBlock &block) { OSXOutput *oo = new OSXOutput(block); @@ -128,7 +128,7 @@ osx_output_init(EventLoop &, const ConfigBlock &block) } static void -osx_output_finish(FilteredAudioOutput *ao) +osx_output_finish(AudioOutput *ao) { OSXOutput *oo = (OSXOutput *)ao; @@ -514,7 +514,7 @@ osx_render(void *vdata, } static void -osx_output_enable(FilteredAudioOutput *ao) +osx_output_enable(AudioOutput *ao) { char errormsg[1024]; OSXOutput *oo = (OSXOutput *)ao; @@ -550,7 +550,7 @@ osx_output_enable(FilteredAudioOutput *ao) } static void -osx_output_disable(FilteredAudioOutput *ao) +osx_output_disable(AudioOutput *ao) { OSXOutput *oo = (OSXOutput *)ao; @@ -562,7 +562,7 @@ osx_output_disable(FilteredAudioOutput *ao) } static void -osx_output_close(FilteredAudioOutput *ao) +osx_output_close(AudioOutput *ao) { OSXOutput *od = (OSXOutput *)ao; @@ -573,7 +573,7 @@ osx_output_close(FilteredAudioOutput *ao) } static void -osx_output_open(FilteredAudioOutput *ao, AudioFormat &audio_format) +osx_output_open(AudioOutput *ao, AudioFormat &audio_format) { char errormsg[1024]; OSXOutput *od = (OSXOutput *)ao; @@ -663,14 +663,14 @@ osx_output_open(FilteredAudioOutput *ao, AudioFormat &audio_format) } static size_t -osx_output_play(FilteredAudioOutput *ao, const void *chunk, size_t size) +osx_output_play(AudioOutput *ao, const void *chunk, size_t size) { OSXOutput *od = (OSXOutput *)ao; return od->ring_buffer->push((uint8_t *)chunk, size); } static std::chrono::steady_clock::duration -osx_output_delay(FilteredAudioOutput *ao) noexcept +osx_output_delay(AudioOutput *ao) noexcept { OSXOutput *od = (OSXOutput *)ao; return od->ring_buffer->write_available() diff --git a/src/output/plugins/OpenALOutputPlugin.cxx b/src/output/plugins/OpenALOutputPlugin.cxx index 79d7c165e..0bdd98038 100644 --- a/src/output/plugins/OpenALOutputPlugin.cxx +++ b/src/output/plugins/OpenALOutputPlugin.cxx @@ -39,7 +39,7 @@ class OpenALOutput { /* should be enough for buffer size = 2048 */ static constexpr unsigned NUM_BUFFERS = 16; - FilteredAudioOutput base; + AudioOutput base; const char *device_name; ALCdevice *device; @@ -138,7 +138,7 @@ OpenALOutput::SetupContext() } OpenALOutput::OpenALOutput(const ConfigBlock &block) - :base(openal_output_plugin, block), + :base(openal_output_plugin), device_name(block.GetBlockValue("device")) { if (device_name == nullptr) diff --git a/src/output/plugins/OssOutputPlugin.cxx b/src/output/plugins/OssOutputPlugin.cxx index b5fe87461..6581237fa 100644 --- a/src/output/plugins/OssOutputPlugin.cxx +++ b/src/output/plugins/OssOutputPlugin.cxx @@ -63,7 +63,7 @@ class OssOutput { friend struct AudioOutputWrapper<OssOutput>; - FilteredAudioOutput base; + AudioOutput base; #ifdef AFMT_S24_PACKED Manual<PcmExport> pcm_export; @@ -85,8 +85,8 @@ class OssOutput { int oss_format; public: - OssOutput(const ConfigBlock &block, const char *_device=nullptr) - :base(oss_output_plugin, block), + explicit OssOutput(const char *_device=nullptr) + :base(oss_output_plugin), fd(-1), device(_device) {} static OssOutput *Create(EventLoop &event_loop, @@ -192,11 +192,10 @@ oss_open_default() int err[ARRAY_SIZE(default_devices)]; enum oss_stat ret[ARRAY_SIZE(default_devices)]; - const ConfigBlock empty; for (int i = ARRAY_SIZE(default_devices); --i >= 0; ) { ret[i] = oss_stat_device(default_devices[i], &err[i]); if (ret[i] == OSS_STAT_NO_ERROR) - return new OssOutput(empty, default_devices[i]); + return new OssOutput(default_devices[i]); } for (int i = ARRAY_SIZE(default_devices); --i >= 0; ) { @@ -231,7 +230,7 @@ OssOutput::Create(EventLoop &, const ConfigBlock &block) { const char *device = block.GetBlockValue("device"); if (device != nullptr) - return new OssOutput(block, device); + return new OssOutput(device); return oss_open_default(); } diff --git a/src/output/plugins/PipeOutputPlugin.cxx b/src/output/plugins/PipeOutputPlugin.cxx index 455b16fab..b0f7f6492 100644 --- a/src/output/plugins/PipeOutputPlugin.cxx +++ b/src/output/plugins/PipeOutputPlugin.cxx @@ -31,7 +31,7 @@ class PipeOutput { friend struct AudioOutputWrapper<PipeOutput>; - FilteredAudioOutput base; + AudioOutput base; const std::string cmd; FILE *fh; @@ -52,7 +52,7 @@ public: }; PipeOutput::PipeOutput(const ConfigBlock &block) - :base(pipe_output_plugin, block), + :base(pipe_output_plugin), cmd(block.GetBlockValue("command", "")) { if (cmd.empty()) diff --git a/src/output/plugins/PulseOutputPlugin.cxx b/src/output/plugins/PulseOutputPlugin.cxx index cd1f4c97b..da18bfc4b 100644 --- a/src/output/plugins/PulseOutputPlugin.cxx +++ b/src/output/plugins/PulseOutputPlugin.cxx @@ -47,7 +47,7 @@ class PulseOutput { friend struct AudioOutputWrapper<PulseOutput>; - FilteredAudioOutput base; + AudioOutput base; const char *name; const char *server; @@ -179,7 +179,7 @@ private: }; PulseOutput::PulseOutput(const ConfigBlock &block) - :base(pulse_output_plugin, block), + :base(pulse_output_plugin), name(block.GetBlockValue("name", "mpd_pulse")), server(block.GetBlockValue("server")), sink(block.GetBlockValue("sink")) diff --git a/src/output/plugins/RecorderOutputPlugin.cxx b/src/output/plugins/RecorderOutputPlugin.cxx index 075abf472..a57a54773 100644 --- a/src/output/plugins/RecorderOutputPlugin.cxx +++ b/src/output/plugins/RecorderOutputPlugin.cxx @@ -45,7 +45,7 @@ static constexpr Domain recorder_domain("recorder"); class RecorderOutput { friend struct AudioOutputWrapper<RecorderOutput>; - FilteredAudioOutput base; + AudioOutput base; /** * The configured encoder plugin. @@ -114,7 +114,7 @@ private: }; RecorderOutput::RecorderOutput(const ConfigBlock &block) - :base(recorder_output_plugin, block) + :base(recorder_output_plugin) { /* read configuration */ diff --git a/src/output/plugins/RoarOutputPlugin.cxx b/src/output/plugins/RoarOutputPlugin.cxx index 4963cf9f7..6f0a31d22 100644 --- a/src/output/plugins/RoarOutputPlugin.cxx +++ b/src/output/plugins/RoarOutputPlugin.cxx @@ -39,7 +39,7 @@ class RoarOutput { friend struct AudioOutputWrapper<RoarOutput>; - FilteredAudioOutput base; + AudioOutput base; const std::string host, name; @@ -54,7 +54,7 @@ class RoarOutput { public: RoarOutput(const ConfigBlock &block); - operator FilteredAudioOutput *() { + operator AudioOutput *() { return &base; } @@ -86,7 +86,7 @@ GetConfiguredRole(const ConfigBlock &block) noexcept } RoarOutput::RoarOutput(const ConfigBlock &block) - :base(roar_output_plugin, block), + :base(roar_output_plugin), host(block.GetBlockValue("server", "")), name(block.GetBlockValue("name", "MPD")), role(GetConfiguredRole(block)) diff --git a/src/output/plugins/ShoutOutputPlugin.cxx b/src/output/plugins/ShoutOutputPlugin.cxx index de8722982..ecde49c81 100644 --- a/src/output/plugins/ShoutOutputPlugin.cxx +++ b/src/output/plugins/ShoutOutputPlugin.cxx @@ -40,7 +40,7 @@ static constexpr unsigned DEFAULT_CONN_TIMEOUT = 2; struct ShoutOutput final { - FilteredAudioOutput base; + AudioOutput base; shout_t *shout_conn; shout_metadata_t *shout_meta; @@ -113,7 +113,7 @@ ShoutSetAudioInfo(shout_t *shout_conn, const AudioFormat &audio_format) } ShoutOutput::ShoutOutput(const ConfigBlock &block) - :base(shout_output_plugin, block), + :base(shout_output_plugin), shout_conn(shout_new()), shout_meta(shout_metadata_new()) { diff --git a/src/output/plugins/SndioOutputPlugin.cxx b/src/output/plugins/SndioOutputPlugin.cxx index a0d7a3e48..7fa48fc1a 100644 --- a/src/output/plugins/SndioOutputPlugin.cxx +++ b/src/output/plugins/SndioOutputPlugin.cxx @@ -47,7 +47,7 @@ static constexpr Domain sndio_output_domain("sndio_output"); class SndioOutput { friend struct AudioOutputWrapper<SndioOutput>; - FilteredAudioOutput base; + AudioOutput base; const char *const device; const unsigned buffer_time; /* in ms */ struct sio_hdl *sio_hdl; @@ -65,7 +65,7 @@ public: }; SndioOutput::SndioOutput(const ConfigBlock &block) - :base(sndio_output_plugin, block), + :base(sndio_output_plugin), device(block.GetBlockValue("device", SIO_DEVANY)), buffer_time(block.GetBlockValue("buffer_time", MPD_SNDIO_BUFFER_TIME_MS)) diff --git a/src/output/plugins/SolarisOutputPlugin.cxx b/src/output/plugins/SolarisOutputPlugin.cxx index ae4e71ff8..438ebd765 100644 --- a/src/output/plugins/SolarisOutputPlugin.cxx +++ b/src/output/plugins/SolarisOutputPlugin.cxx @@ -53,7 +53,7 @@ struct audio_info { class SolarisOutput { friend struct AudioOutputWrapper<SolarisOutput>; - FilteredAudioOutput base; + AudioOutput base; /* configuration */ const char *const device; @@ -61,7 +61,7 @@ class SolarisOutput { int fd; explicit SolarisOutput(const ConfigBlock &block) - :base(solaris_output_plugin, block), + :base(solaris_output_plugin), device(block.GetBlockValue("device", "/dev/audio")) {} public: diff --git a/src/output/plugins/WinmmOutputPlugin.cxx b/src/output/plugins/WinmmOutputPlugin.cxx index 0a335eeaf..25372edf7 100644 --- a/src/output/plugins/WinmmOutputPlugin.cxx +++ b/src/output/plugins/WinmmOutputPlugin.cxx @@ -42,7 +42,7 @@ struct WinmmBuffer { class WinmmOutput { friend struct AudioOutputWrapper<WinmmOutput>; - FilteredAudioOutput base; + AudioOutput base; const UINT device_id; HWAVEOUT handle; @@ -148,7 +148,7 @@ get_device_id(const char *device_name) } WinmmOutput::WinmmOutput(const ConfigBlock &block) - :base(winmm_output_plugin, block), + :base(winmm_output_plugin), device_id(get_device_id(block.GetBlockValue("device"))) { } diff --git a/src/output/plugins/httpd/HttpdInternal.hxx b/src/output/plugins/httpd/HttpdInternal.hxx index 7ad0a1325..45b6edde6 100644 --- a/src/output/plugins/httpd/HttpdInternal.hxx +++ b/src/output/plugins/httpd/HttpdInternal.hxx @@ -52,7 +52,7 @@ struct Tag; class HttpdOutput final : ServerSocket, DeferredMonitor { friend struct AudioOutputWrapper<HttpdOutput>; - FilteredAudioOutput base; + AudioOutput base; /** * True if the audio output is open and accepts client @@ -160,7 +160,7 @@ public: static HttpdOutput *Create(EventLoop &event_loop, const ConfigBlock &block); - static constexpr HttpdOutput *Cast(FilteredAudioOutput *ao) { + static constexpr HttpdOutput *Cast(AudioOutput *ao) { return &ContainerCast(*ao, &HttpdOutput::base); } diff --git a/src/output/plugins/httpd/HttpdOutputPlugin.cxx b/src/output/plugins/httpd/HttpdOutputPlugin.cxx index 6836dc09a..e65a6982d 100644 --- a/src/output/plugins/httpd/HttpdOutputPlugin.cxx +++ b/src/output/plugins/httpd/HttpdOutputPlugin.cxx @@ -51,7 +51,7 @@ const Domain httpd_output_domain("httpd_output"); inline HttpdOutput::HttpdOutput(EventLoop &_loop, const ConfigBlock &block) :ServerSocket(_loop), DeferredMonitor(_loop), - base(httpd_output_plugin, block), + base(httpd_output_plugin), encoder(nullptr), unflushed_input(0), metadata(nullptr) { diff --git a/src/output/plugins/sles/SlesOutputPlugin.cxx b/src/output/plugins/sles/SlesOutputPlugin.cxx index ca47f99a4..279d29c4d 100644 --- a/src/output/plugins/sles/SlesOutputPlugin.cxx +++ b/src/output/plugins/sles/SlesOutputPlugin.cxx @@ -43,7 +43,7 @@ class SlesOutput { static constexpr unsigned N_BUFFERS = 3; static constexpr size_t BUFFER_SIZE = 65536; - FilteredAudioOutput base; + AudioOutput base; SLES::Object engine_object, mix_object, play_object; SLES::Play play; @@ -87,9 +87,9 @@ class SlesOutput { uint8_t buffers[N_BUFFERS][BUFFER_SIZE]; public: - SlesOutput(const ConfigBlock &block); + SlesOutput(); - operator FilteredAudioOutput *() { + operator AudioOutput *() { return &base; } @@ -129,8 +129,8 @@ private: static constexpr Domain sles_domain("sles"); -SlesOutput::SlesOutput(const ConfigBlock &block) - :base(sles_output_plugin, block) +SlesOutput::SlesOutput() + :base(sles_output_plugin) { } @@ -416,9 +416,9 @@ sles_test_default_device() } inline SlesOutput * -SlesOutput::Create(EventLoop &, const ConfigBlock &block) +SlesOutput::Create(EventLoop &, const ConfigBlock &) { - return new SlesOutput(block); + return new SlesOutput(); } typedef AudioOutputWrapper<SlesOutput> Wrapper; |