Commit 1155a290 authored by Max Kellermann's avatar Max Kellermann

Merge branch 'cdda_set_cdspeed' of git://github.com/andrewbasterfield/MPD

parents 030e6039 9c1bf9ac
......@@ -1056,6 +1056,8 @@ Plays audio CDs using libcdio. The URI has the form: "cdda://[DEVICE][/TRACK]".
- Description
* - **default_byte_order little_endian|big_endian**
- If the CD drive does not specify a byte order, MPD assumes it is the CPU's native byte order. This setting allows overriding this.
* - **speed N**
- Request CDParanoia cap the extraction speed to Nx normal CD audio rotation speed, keeping the drive quiet.
curl
~~~~
......
......@@ -104,6 +104,7 @@ class CdioParanoiaInputStream final : public InputStream {
static constexpr Domain cdio_domain("cdio");
static bool default_reverse_endian;
static unsigned speed = 0;
static void
input_cdio_init(EventLoop &, const ConfigBlock &block)
......@@ -118,6 +119,7 @@ input_cdio_init(EventLoop &, const ConfigBlock &block)
throw FormatRuntimeError("Unrecognized 'default_byte_order' setting: %s",
value);
}
speed = block.GetBlockValue("speed",0u);
}
struct cdio_uri {
......@@ -209,6 +211,10 @@ input_cdio_open(const char *uri,
}
cdda_verbose_set(drv, CDDA_MESSAGE_FORGETIT, CDDA_MESSAGE_FORGETIT);
if (speed > 0) {
FormatDebug(cdio_domain,"Attempting to set CD speed to %dx",speed);
cdda_speed_set(drv,speed);
}
if (0 != cdio_cddap_open(drv)) {
cdio_cddap_close_no_free_cdio(drv);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment