output/jack: merge set_audioformat() into Open()
This commit is contained in:
parent
2fc40e5575
commit
2892a6f5e2
@ -368,22 +368,6 @@ mpd_jack_shutdown(jack_status_t, const char *reason, void *arg)
|
|||||||
reason)));
|
reason)));
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
|
||||||
set_audioformat(JackOutput *jd, AudioFormat &audio_format)
|
|
||||||
{
|
|
||||||
audio_format.sample_rate = jack_get_sample_rate(jd->client);
|
|
||||||
|
|
||||||
if (jd->num_source_ports == 1)
|
|
||||||
audio_format.channels = 1;
|
|
||||||
else if (audio_format.channels > jd->num_source_ports)
|
|
||||||
audio_format.channels = 2;
|
|
||||||
|
|
||||||
/* JACK uses 32 bit float in the range [-1 .. 1] - just like
|
|
||||||
MPD's SampleFormat::FLOAT*/
|
|
||||||
static_assert(jack_sample_size == sizeof(float), "Expected float32");
|
|
||||||
audio_format.format = SampleFormat::FLOAT;
|
|
||||||
}
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
mpd_jack_error(const char *msg)
|
mpd_jack_error(const char *msg)
|
||||||
{
|
{
|
||||||
@ -614,7 +598,17 @@ JackOutput::Open(AudioFormat &new_audio_format)
|
|||||||
if (client == nullptr)
|
if (client == nullptr)
|
||||||
Connect();
|
Connect();
|
||||||
|
|
||||||
set_audioformat(this, new_audio_format);
|
new_audio_format.sample_rate = jack_get_sample_rate(client);
|
||||||
|
|
||||||
|
if (num_source_ports == 1)
|
||||||
|
new_audio_format.channels = 1;
|
||||||
|
else if (new_audio_format.channels > num_source_ports)
|
||||||
|
new_audio_format.channels = 2;
|
||||||
|
|
||||||
|
/* JACK uses 32 bit float in the range [-1 .. 1] - just like
|
||||||
|
MPD's SampleFormat::FLOAT*/
|
||||||
|
static_assert(jack_sample_size == sizeof(float), "Expected float32");
|
||||||
|
new_audio_format.format = SampleFormat::FLOAT;
|
||||||
audio_format = new_audio_format;
|
audio_format = new_audio_format;
|
||||||
|
|
||||||
Start();
|
Start();
|
||||||
|
Loading…
Reference in New Issue
Block a user