Add support for system_midi jack client
This commit is contained in:
parent
99ec681f8b
commit
d48f5cb312
|
@ -41,6 +41,7 @@ struct virtualizer
|
||||||
graph_proxy_handle jack_graph_proxy;
|
graph_proxy_handle jack_graph_proxy;
|
||||||
ladish_graph_handle jack_graph;
|
ladish_graph_handle jack_graph;
|
||||||
uint64_t system_client_id;
|
uint64_t system_client_id;
|
||||||
|
uint64_t system_midi_client_id;
|
||||||
unsigned int our_clients_count;
|
unsigned int our_clients_count;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -387,6 +388,11 @@ done:
|
||||||
virtualizer_ptr->system_client_id = id;
|
virtualizer_ptr->system_client_id = id;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (strcmp(jack_name, "system_midi") == 0)
|
||||||
|
{
|
||||||
|
virtualizer_ptr->system_midi_client_id = id;
|
||||||
|
}
|
||||||
|
|
||||||
if (app != NULL)
|
if (app != NULL)
|
||||||
{
|
{
|
||||||
/* interlink client and app */
|
/* interlink client and app */
|
||||||
|
@ -489,6 +495,11 @@ static void client_disappeared(void * context, uint64_t id)
|
||||||
virtualizer_ptr->system_client_id = 0;
|
virtualizer_ptr->system_client_id = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (id == virtualizer_ptr->system_midi_client_id)
|
||||||
|
{
|
||||||
|
virtualizer_ptr->system_midi_client_id = 0;
|
||||||
|
}
|
||||||
|
|
||||||
if (vgraph != NULL && ladish_graph_is_persist(vgraph)) /* if client is supposed to be persisted */
|
if (vgraph != NULL && ladish_graph_is_persist(vgraph)) /* if client is supposed to be persisted */
|
||||||
{
|
{
|
||||||
ladish_client_set_jack_id(client, 0);
|
ladish_client_set_jack_id(client, 0);
|
||||||
|
@ -780,7 +791,8 @@ port_appeared(
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (client_id == virtualizer_ptr->system_client_id)
|
else if (client_id == virtualizer_ptr->system_client_id ||
|
||||||
|
client_id == virtualizer_ptr->system_midi_client_id)
|
||||||
{
|
{
|
||||||
log_info("system client port appeared");
|
log_info("system client port appeared");
|
||||||
|
|
||||||
|
@ -1211,6 +1223,7 @@ ladish_virtualizer_create(
|
||||||
virtualizer_ptr->jack_graph_proxy = jack_graph_proxy;
|
virtualizer_ptr->jack_graph_proxy = jack_graph_proxy;
|
||||||
virtualizer_ptr->jack_graph = jack_graph;
|
virtualizer_ptr->jack_graph = jack_graph;
|
||||||
virtualizer_ptr->system_client_id = 0;
|
virtualizer_ptr->system_client_id = 0;
|
||||||
|
virtualizer_ptr->system_midi_client_id = 0;
|
||||||
virtualizer_ptr->our_clients_count = 0;
|
virtualizer_ptr->our_clients_count = 0;
|
||||||
|
|
||||||
if (!graph_proxy_attach(
|
if (!graph_proxy_attach(
|
||||||
|
|
Loading…
Reference in New Issue