session: rename the default source/sink controls to have shorter names
+ use a more correct naming scheme to match the one from Spa + remove the default video source, since we now use a different session for video
This commit is contained in:
@@ -868,17 +868,11 @@ wp_impl_session_init (WpImplSession * self)
|
|||||||
|
|
||||||
/* prepare default endpoint */
|
/* prepare default endpoint */
|
||||||
wp_spa_props_register (controls,
|
wp_spa_props_register (controls,
|
||||||
"wp-session-default-endpoint-audio-source",
|
"Wp:defaultSource", "Default Source", wp_spa_pod_new_int (0));
|
||||||
"Default Audio Source", wp_spa_pod_new_int (0));
|
|
||||||
wp_spa_props_register (controls,
|
wp_spa_props_register (controls,
|
||||||
"wp-session-default-endpoint-audio-sink",
|
"Wp:defaultSink", "Default Sink", wp_spa_pod_new_int (0));
|
||||||
"Default Audio Sink", wp_spa_pod_new_int (0));
|
|
||||||
wp_spa_props_register (controls,
|
|
||||||
"wp-session-default-endpoint-video-source",
|
|
||||||
"Default Video Source", wp_spa_pod_new_int (0));
|
|
||||||
|
|
||||||
wp_proxy_set_feature_ready (WP_PROXY (self),
|
wp_proxy_set_feature_ready (WP_PROXY (self), WP_PROXY_FEATURE_CONTROLS);
|
||||||
WP_PROXY_FEATURE_CONTROLS);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
@@ -67,14 +67,9 @@ wp_init (WpInitFlags flags)
|
|||||||
|
|
||||||
/* Register custom wireplumber session types */
|
/* Register custom wireplumber session types */
|
||||||
wp_spa_type_register (WP_SPA_TYPE_TABLE_PROPS,
|
wp_spa_type_register (WP_SPA_TYPE_TABLE_PROPS,
|
||||||
"Wp:Session:Default:Endpoint:Audio:Source",
|
"Wp:Pod:Object:Param:Props:defaultSource", "Wp:defaultSource");
|
||||||
"wp-session-default-endpoint-audio-source");
|
|
||||||
wp_spa_type_register (WP_SPA_TYPE_TABLE_PROPS,
|
wp_spa_type_register (WP_SPA_TYPE_TABLE_PROPS,
|
||||||
"Wp:Session:Default:Endpoint:Audio:Sink",
|
"Wp:Pod:Object:Param:Props:defaultSink", "Wp:defaultSink");
|
||||||
"wp-session-default-endpoint-audio-sink");
|
|
||||||
wp_spa_type_register (WP_SPA_TYPE_TABLE_PROPS,
|
|
||||||
"Wp:Session:Default:Endpoint:Video:Source",
|
|
||||||
"wp-session-default-endpoint-video-source");
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* ensure WpProxy subclasses are loaded, which is needed to be able
|
/* ensure WpProxy subclasses are loaded, which is needed to be able
|
||||||
|
@@ -83,10 +83,10 @@ wp_config_policy_context_get_data_target (WpConfigPolicyContext *self,
|
|||||||
const char *type_name;
|
const char *type_name;
|
||||||
switch (data->me.endpoint_data.direction) {
|
switch (data->me.endpoint_data.direction) {
|
||||||
case WP_DIRECTION_INPUT:
|
case WP_DIRECTION_INPUT:
|
||||||
type_name = "wp-session-default-endpoint-audio-source";
|
type_name = "Wp:defaultSource";
|
||||||
break;
|
break;
|
||||||
case WP_DIRECTION_OUTPUT:
|
case WP_DIRECTION_OUTPUT:
|
||||||
type_name = "wp-session-default-endpoint-audio-sink";
|
type_name = "Wp:defaultSink";
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
g_warn_if_reached ();
|
g_warn_if_reached ();
|
||||||
|
@@ -170,9 +170,9 @@ test_session_basic (TestSessionFixture *fixture, gconstpointer data)
|
|||||||
session = wp_impl_session_new (fixture->base.core);
|
session = wp_impl_session_new (fixture->base.core);
|
||||||
wp_impl_session_set_property (session, "test.property", "test-value");
|
wp_impl_session_set_property (session, "test.property", "test-value");
|
||||||
wp_session_set_default_endpoint (WP_SESSION (session),
|
wp_session_set_default_endpoint (WP_SESSION (session),
|
||||||
"wp-session-default-endpoint-audio-sink", 5);
|
"Wp:defaultSink", 5);
|
||||||
wp_session_set_default_endpoint (WP_SESSION (session),
|
wp_session_set_default_endpoint (WP_SESSION (session),
|
||||||
"wp-session-default-endpoint-video-source", 9);
|
"Wp:defaultSource", 9);
|
||||||
|
|
||||||
/* verify properties are set before export */
|
/* verify properties are set before export */
|
||||||
{
|
{
|
||||||
@@ -182,9 +182,9 @@ test_session_basic (TestSessionFixture *fixture, gconstpointer data)
|
|||||||
"test-value");
|
"test-value");
|
||||||
}
|
}
|
||||||
g_assert_cmpuint (wp_session_get_default_endpoint (WP_SESSION (session),
|
g_assert_cmpuint (wp_session_get_default_endpoint (WP_SESSION (session),
|
||||||
"wp-session-default-endpoint-audio-sink"), ==, 5);
|
"Wp:defaultSink"), ==, 5);
|
||||||
g_assert_cmpuint (wp_session_get_default_endpoint (WP_SESSION (session),
|
g_assert_cmpuint (wp_session_get_default_endpoint (WP_SESSION (session),
|
||||||
"wp-session-default-endpoint-video-source"), ==, 9);
|
"Wp:defaultSource"), ==, 9);
|
||||||
|
|
||||||
/* do export */
|
/* do export */
|
||||||
wp_proxy_augment (WP_PROXY (session), WP_SESSION_FEATURES_STANDARD, NULL,
|
wp_proxy_augment (WP_PROXY (session), WP_SESSION_FEATURES_STANDARD, NULL,
|
||||||
@@ -214,10 +214,10 @@ test_session_basic (TestSessionFixture *fixture, gconstpointer data)
|
|||||||
}
|
}
|
||||||
g_assert_cmpuint (wp_session_get_default_endpoint (
|
g_assert_cmpuint (wp_session_get_default_endpoint (
|
||||||
WP_SESSION (fixture->proxy_session),
|
WP_SESSION (fixture->proxy_session),
|
||||||
"wp-session-default-endpoint-audio-sink"), ==, 5);
|
"Wp:defaultSink"), ==, 5);
|
||||||
g_assert_cmpuint (wp_session_get_default_endpoint (
|
g_assert_cmpuint (wp_session_get_default_endpoint (
|
||||||
WP_SESSION (fixture->proxy_session),
|
WP_SESSION (fixture->proxy_session),
|
||||||
"wp-session-default-endpoint-video-source"), ==, 9);
|
"Wp:defaultSource"), ==, 9);
|
||||||
|
|
||||||
/* setup change signals */
|
/* setup change signals */
|
||||||
g_signal_connect (fixture->proxy_session, "default-endpoint-changed",
|
g_signal_connect (fixture->proxy_session, "default-endpoint-changed",
|
||||||
@@ -231,7 +231,7 @@ test_session_basic (TestSessionFixture *fixture, gconstpointer data)
|
|||||||
|
|
||||||
/* change default endpoint on the proxy */
|
/* change default endpoint on the proxy */
|
||||||
wp_session_set_default_endpoint (WP_SESSION (fixture->proxy_session),
|
wp_session_set_default_endpoint (WP_SESSION (fixture->proxy_session),
|
||||||
"wp-session-default-endpoint-audio-sink", 73);
|
"Wp:defaultSink", 73);
|
||||||
|
|
||||||
/* run until the change is on both sides */
|
/* run until the change is on both sides */
|
||||||
fixture->n_events = 0;
|
fixture->n_events = 0;
|
||||||
@@ -242,20 +242,20 @@ test_session_basic (TestSessionFixture *fixture, gconstpointer data)
|
|||||||
|
|
||||||
g_assert_cmpuint (wp_session_get_default_endpoint (
|
g_assert_cmpuint (wp_session_get_default_endpoint (
|
||||||
WP_SESSION (fixture->proxy_session),
|
WP_SESSION (fixture->proxy_session),
|
||||||
"wp-session-default-endpoint-audio-sink"), ==, 73);
|
"Wp:defaultSink"), ==, 73);
|
||||||
g_assert_cmpuint (wp_session_get_default_endpoint (
|
g_assert_cmpuint (wp_session_get_default_endpoint (
|
||||||
WP_SESSION (fixture->proxy_session),
|
WP_SESSION (fixture->proxy_session),
|
||||||
"wp-session-default-endpoint-video-source"), ==, 9);
|
"Wp:defaultSource"), ==, 9);
|
||||||
|
|
||||||
g_assert_cmpuint (wp_session_get_default_endpoint (
|
g_assert_cmpuint (wp_session_get_default_endpoint (
|
||||||
WP_SESSION (session), "wp-session-default-endpoint-audio-sink"), ==, 73);
|
WP_SESSION (session), "Wp:defaultSink"), ==, 73);
|
||||||
g_assert_cmpuint (wp_session_get_default_endpoint (
|
g_assert_cmpuint (wp_session_get_default_endpoint (
|
||||||
WP_SESSION (session), "wp-session-default-endpoint-video-source"), ==, 9);
|
WP_SESSION (session), "Wp:defaultSource"), ==, 9);
|
||||||
|
|
||||||
/* change default endpoint on the exported */
|
/* change default endpoint on the exported */
|
||||||
fixture->n_events = 0;
|
fixture->n_events = 0;
|
||||||
wp_session_set_default_endpoint (WP_SESSION (session),
|
wp_session_set_default_endpoint (WP_SESSION (session),
|
||||||
"wp-session-default-endpoint-audio-source", 44);
|
"Wp:defaultSource", 44);
|
||||||
|
|
||||||
/* run until the change is on both sides */
|
/* run until the change is on both sides */
|
||||||
g_main_loop_run (fixture->base.loop);
|
g_main_loop_run (fixture->base.loop);
|
||||||
@@ -264,10 +264,10 @@ test_session_basic (TestSessionFixture *fixture, gconstpointer data)
|
|||||||
/* test round 3: verify the value change on both sides */
|
/* test round 3: verify the value change on both sides */
|
||||||
|
|
||||||
g_assert_cmpuint (wp_session_get_default_endpoint (
|
g_assert_cmpuint (wp_session_get_default_endpoint (
|
||||||
WP_SESSION (session), "wp-session-default-endpoint-audio-source"), ==, 44);
|
WP_SESSION (session), "Wp:defaultSource"), ==, 44);
|
||||||
g_assert_cmpuint (wp_session_get_default_endpoint (
|
g_assert_cmpuint (wp_session_get_default_endpoint (
|
||||||
WP_SESSION (fixture->proxy_session),
|
WP_SESSION (fixture->proxy_session),
|
||||||
"wp-session-default-endpoint-audio-source"), ==, 44);
|
"Wp:defaultSource"), ==, 44);
|
||||||
|
|
||||||
/* change a property on the exported */
|
/* change a property on the exported */
|
||||||
fixture->n_events = 0;
|
fixture->n_events = 0;
|
||||||
|
@@ -95,7 +95,7 @@ list_endpoints (WpObjectManager * om, struct WpCliData * d)
|
|||||||
NULL);
|
NULL);
|
||||||
for (; wp_iterator_next (ep_it, &ep_val); g_value_unset (&ep_val)) {
|
for (; wp_iterator_next (ep_it, &ep_val); g_value_unset (&ep_val)) {
|
||||||
WpEndpoint *ep = g_value_get_object (&ep_val);
|
WpEndpoint *ep = g_value_get_object (&ep_val);
|
||||||
print_dev_endpoint (ep, session, "wp-session-default-endpoint-audio-source");
|
print_dev_endpoint (ep, session, "Wp:defaultSource");
|
||||||
}
|
}
|
||||||
g_clear_pointer (&ep_it, wp_iterator_unref);
|
g_clear_pointer (&ep_it, wp_iterator_unref);
|
||||||
|
|
||||||
@@ -105,7 +105,7 @@ list_endpoints (WpObjectManager * om, struct WpCliData * d)
|
|||||||
NULL);
|
NULL);
|
||||||
for (; wp_iterator_next (ep_it, &ep_val); g_value_unset (&ep_val)) {
|
for (; wp_iterator_next (ep_it, &ep_val); g_value_unset (&ep_val)) {
|
||||||
WpEndpoint *ep = g_value_get_object (&ep_val);
|
WpEndpoint *ep = g_value_get_object (&ep_val);
|
||||||
print_dev_endpoint (ep, session, "wp-session-default-endpoint-audio-sink");
|
print_dev_endpoint (ep, session, "Wp:defaultSink");
|
||||||
}
|
}
|
||||||
g_clear_pointer (&ep_it, wp_iterator_unref);
|
g_clear_pointer (&ep_it, wp_iterator_unref);
|
||||||
|
|
||||||
@@ -149,9 +149,9 @@ set_default (WpObjectManager * om, struct WpCliData * d)
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (g_strcmp0 (wp_endpoint_get_media_class (ep), "Audio/Sink") == 0)
|
if (g_strcmp0 (wp_endpoint_get_media_class (ep), "Audio/Sink") == 0)
|
||||||
type_name = "wp-session-default-endpoint-audio-sink";
|
type_name = "Wp:defaultSink";
|
||||||
else if (g_strcmp0 (wp_endpoint_get_media_class (ep), "Audio/Source") == 0)
|
else if (g_strcmp0 (wp_endpoint_get_media_class (ep), "Audio/Source") == 0)
|
||||||
type_name = "wp-session-default-endpoint-audio-source";
|
type_name = "Wp:defaultSource";
|
||||||
else {
|
else {
|
||||||
g_print ("%u: not a device endpoint\n", id);
|
g_print ("%u: not a device endpoint\n", id);
|
||||||
g_main_loop_quit (d->loop);
|
g_main_loop_quit (d->loop);
|
||||||
|
Reference in New Issue
Block a user