Add server name parameter for jack client

This commit is contained in:
Marcus Weseloh 2024-05-28 16:54:56 +02:00 committed by Johannes Pohl
parent 3fc86a823b
commit e5ebe35f80
2 changed files with 8 additions and 2 deletions

View file

@ -119,6 +119,9 @@ void wait(boost::asio::steady_timer& timer, const std::chrono::duration<Rep, Per
JackStream::JackStream(PcmStream::Listener* pcmListener, boost::asio::io_context& ioc, const ServerSettings& server_settings, const StreamUri& uri)
: PcmStream(pcmListener, ioc, server_settings, uri), read_timer_(strand_), silence_(0ms)
{
serverName_ = uri_.getQuery("server_name", "default");
send_silence_ = (uri_.getQuery("send_silence", "false") == "true");
idle_threshold_ = std::chrono::milliseconds(std::max(cpt::stoi(uri_.getQuery("idle_threshold", "100")), 10));
@ -194,8 +197,10 @@ void JackStream::tryConnect()
bool JackStream::openJackConnection()
{
client_ = jack_client_open(name_.c_str(), JackNoStartServer, &status_, nullptr);
char *serverName = serverName_.data();
jack_options_t options = (jack_options_t)(JackNoStartServer | JackServerName);
client_ = jack_client_open(name_.c_str(), options, nullptr, serverName);
if (client_ == NULL) {
return false;
}

View file

@ -61,8 +61,9 @@ protected:
void autoConnectPorts();
std::string serverName_;
jack_client_t *client_;
jack_status_t status_;
std::vector<jack_port_t *> ports_;
jack_nframes_t jackConnectFrames_;
std::chrono::time_point<std::chrono::steady_clock> jackConnectTime_;