spa-node: fix properties while loading.

Update the example in the config file to load a spa node
This commit is contained in:
Wim Taymans 2020-02-21 16:27:00 +01:00
parent 9e625441ad
commit f9dccccf91
2 changed files with 5 additions and 4 deletions

View file

@ -20,6 +20,7 @@ add-spa-lib api.v4l2.* v4l2/libspa-v4l2
add-spa-lib api.bluez5.* bluez5/libspa-bluez5
add-spa-lib api.vulkan.* vulkan/libspa-vulkan
add-spa-lib api.jack.* jack/libspa-jack
#add-spa-lib videotestsrc videotestsrc/libspa-videotestsrc
#load-module -ifexists libpipewire-module-spa-device api.jack.device
#load-module libpipewire-module-spa-device api.alsa.enum.udev
@ -31,7 +32,7 @@ load-module libpipewire-module-metadata
load-module libpipewire-module-spa-device-factory
load-module libpipewire-module-spa-node-factory
#load-module libpipewire-module-spa-node api.vulkan.compute.source node.name=my-compute-source
#load-module libpipewire-module-spa-node videotestsrc/libspa-videotestsrc videotestsrc videotestsrc Spa:POD:Object:Props:patternType=Spa:POD:Object:Props:patternType:snow
#load-module libpipewire-module-spa-node videotestsrc node.name=videotestsrc Spa:Pod:Object:Param:Props:patternType=1
load-module libpipewire-module-client-node
load-module libpipewire-module-client-device
load-module libpipewire-module-access

View file

@ -180,14 +180,14 @@ setup_props(struct pw_context *context, struct spa_node *spa_node, struct pw_pro
while ((key = pw_properties_iterate(pw_props, &state))) {
uint32_t type = 0;
type = spa_debug_type_find_type(NULL, key);
type = spa_debug_type_find_type(spa_type_props, key);
if (type == SPA_TYPE_None)
continue;
if ((prop = spa_pod_find_prop(props, prop, type))) {
const char *value = pw_properties_get(pw_props, key);
pw_log_info("configure prop %s", key);
pw_log_info("configure prop %s to %s", key, value);
switch(prop->value.type) {
case SPA_TYPE_Bool:
@ -196,7 +196,7 @@ setup_props(struct pw_context *context, struct spa_node *spa_node, struct pw_pro
break;
case SPA_TYPE_Id:
SPA_POD_VALUE(struct spa_pod_id, &prop->value) =
spa_debug_type_find_type(NULL, value);
pw_properties_parse_int(value);
break;
case SPA_TYPE_Int:
SPA_POD_VALUE(struct spa_pod_int, &prop->value) =