[-]
[+]
|
Changed |
_service:tar_git:pulseaudio-modules-droid.changes
|
|
[-]
[+]
|
Changed |
_service:tar_git:pulseaudio-modules-droid.spec
^
|
|
[-]
[+]
|
Changed |
_service
^
|
@@ -2,7 +2,7 @@
<service name="tar_git">
<param name="url">https://github.com/mer-hybris/pulseaudio-modules-droid.git</param>
<param name="branch">master</param>
- <param name="revision">HEAD</param>
+ <param name="revision">8283bbe5c932d34f6d427ce02abf455c23b3c3b1</param>
<param name="token"/>
<param name="debian"/>
<param name="dumb"/>
|
[-]
[+]
|
Changed |
_service:tar_git:pulseaudio-modules-droid-14.2.92.tar.bz2/src/common/conversion.c
^
|
@@ -140,40 +140,6 @@
case CONV_STRING_INPUT_FLAG:
return string_convert_num_to_str(string_conversion_table_input_flag, value, to_str);
-
- case CONV_STRING_AUDIO_SOURCE_FANCY:
- return string_convert_num_to_str(string_conversion_table_audio_source_fancy, value, to_str);
- }
-
- pa_assert_not_reached();
- return false;
-}
-
-bool pa_string_convert_str_to_num(pa_conversion_string_t type, const char *str, uint32_t *to_value) {
- switch (type) {
- case CONV_STRING_FORMAT:
- return string_convert_str_to_num(string_conversion_table_format, str, to_value);
-
- case CONV_STRING_OUTPUT_CHANNELS:
- return string_convert_str_to_num(string_conversion_table_output_channels, str, to_value);
-
- case CONV_STRING_INPUT_CHANNELS:
- return string_convert_str_to_num(string_conversion_table_input_channels, str, to_value);
-
- case CONV_STRING_OUTPUT_DEVICE:
- return string_convert_str_to_num(string_conversion_table_output_device, str, to_value);
-
- case CONV_STRING_INPUT_DEVICE:
- return string_convert_str_to_num(string_conversion_table_input_device, str, to_value);
-
- case CONV_STRING_OUTPUT_FLAG:
- return string_convert_str_to_num(string_conversion_table_output_flag, str, to_value);
-
- case CONV_STRING_INPUT_FLAG:
- return string_convert_str_to_num(string_conversion_table_input_flag, str, to_value);
-
- case CONV_STRING_AUDIO_SOURCE_FANCY:
- return string_convert_str_to_num(string_conversion_table_audio_source_fancy, str, to_value);
}
pa_assert_not_reached();
@@ -244,6 +210,10 @@
return string_convert_num_to_str(string_conversion_table_input_device_fancy, (uint32_t) value, to_str);
}
+bool pa_droid_audio_source_name(audio_source_t value, const char **to_str) {
+ return string_convert_num_to_str(string_conversion_table_audio_source_fancy, (uint32_t) value, to_str);
+}
+
static int parse_list(const struct string_conversion *table,
const char *separator,
const char *str,
@@ -310,10 +280,6 @@
case CONV_STRING_INPUT_FLAG:
return parse_list(string_conversion_table_input_flag, separator, str, dst, unknown_entries);
-
- /* Not handled in this context */
- case CONV_STRING_AUDIO_SOURCE_FANCY:
- return 0;
}
pa_assert_not_reached();
|
[-]
[+]
|
Changed |
_service:tar_git:pulseaudio-modules-droid-14.2.92.tar.bz2/src/common/droid-util.c
^
|
@@ -116,7 +116,6 @@
static int input_stream_set_route(pa_droid_hw_module *hw_module, pa_droid_stream *s);
static int droid_set_parameters(pa_droid_hw_module *hw, const char *parameters);
-static bool droid_set_audio_source(pa_droid_hw_module *hw_module, audio_source_t audio_source);
static pa_droid_profile *profile_new(pa_droid_profile_set *ps,
const pa_droid_config_hw_module *module,
@@ -1415,7 +1414,7 @@
#if AUDIO_API_VERSION_MAJ >= 3
/* Go with empty address, should work
* with most devices for now. */
- , ""
+ , NULL
#endif
);
pa_droid_hw_module_unlock(module);
@@ -1639,7 +1638,7 @@
&input->stream
#if AUDIO_API_VERSION_MAJ >= 3
, 0
- , "" /* Use empty address. */
+ , NULL /* Don't define address */
, hw_module->state.audio_source
#endif
);
@@ -1753,11 +1752,7 @@
bool pa_droid_stream_reconfigure_input(pa_droid_stream *s,
const pa_sample_spec *requested_sample_spec,
- const pa_channel_map *requested_channel_map,
- const pa_proplist *proplist) {
- /* Use default audio source by default */
- audio_source_t audio_source = AUDIO_SOURCE_DEFAULT;
-
+ const pa_channel_map *requested_channel_map) {
pa_assert(s);
pa_assert(s->input);
pa_assert(requested_sample_spec);
@@ -1768,16 +1763,6 @@
s->input->req_sample_spec = *requested_sample_spec;
s->input->req_channel_map = *requested_channel_map;
- if (proplist) {
- const char *source;
- /* If audio source is defined in source-output proplist use that instead. */
- if ((source = pa_proplist_gets(proplist, EXT_PROP_AUDIO_SOURCE)))
- pa_string_convert_str_to_num(CONV_STRING_AUDIO_SOURCE_FANCY, source, &audio_source);
- }
-
- /* Update audio source */
- droid_set_audio_source(s->module, audio_source);
-
input_stream_close(s);
if (input_stream_open(s, false) < 0) {
@@ -1793,50 +1778,6 @@
return true;
}
-bool pa_droid_stream_reconfigure_input_needed(pa_droid_stream *s,
- const pa_sample_spec *requested_sample_spec,
- const pa_channel_map *requested_channel_map,
- const pa_proplist *proplist) {
- bool reconfigure_needed = false;
-
- pa_assert(s);
- pa_assert(s->input);
-
- if (requested_sample_spec && !pa_sample_spec_equal(&s->input->sample_spec, requested_sample_spec)) {
- reconfigure_needed = true;
- pa_log_debug("input reconfigure needed: sample specs not equal");
- }
-
- if (requested_channel_map && !pa_channel_map_equal(&s->input->channel_map, requested_channel_map)) {
- reconfigure_needed = true;
- pa_log_debug("input reconfigure needed: channel maps not equal");
- }
-
- if (proplist) {
- const char *source;
- audio_source_t audio_source;
-
- /* If audio source is defined in source-output proplist use that instead. */
- if ((source = pa_proplist_gets(proplist, EXT_PROP_AUDIO_SOURCE))) {
- if (pa_string_convert_str_to_num(CONV_STRING_AUDIO_SOURCE_FANCY, source, &audio_source) &&
- s->module->state.audio_source != audio_source) {
-
- reconfigure_needed = true;
- pa_log_debug("input reconfigure needed: " EXT_PROP_AUDIO_SOURCE " changes");
- }
- } else {
- if (pa_input_device_default_audio_source(s->module->state.input_device, &audio_source) &&
- s->module->state.audio_source != audio_source) {
-
- reconfigure_needed = true;
- pa_log_debug("input reconfigure needed: audio source changes");
- }
- }
- }
-
- return reconfigure_needed;
-}
-
pa_droid_stream *pa_droid_open_input_stream(pa_droid_hw_module *hw_module,
const pa_sample_spec *default_sample_spec,
const pa_channel_map *default_channel_map) {
@@ -1858,7 +1799,7 @@
s->input->default_sample_spec = *default_sample_spec;
s->input->default_channel_map = *default_channel_map;
- if (!pa_droid_stream_reconfigure_input(s, default_sample_spec, default_channel_map, NULL)) {
+ if (!pa_droid_stream_reconfigure_input(s, default_sample_spec, default_channel_map)) {
pa_droid_stream_unref(s);
s = NULL;
} else
@@ -2316,14 +2257,26 @@
return ret;
}
-/* Return true if audio source changes */
-static bool droid_set_audio_source(pa_droid_hw_module *hw_module, audio_source_t audio_source) {
+bool pa_droid_hw_set_input_device(pa_droid_hw_module *hw_module,
+ audio_devices_t device) {
+ audio_source_t audio_source = AUDIO_SOURCE_DEFAULT;
audio_source_t audio_source_override = AUDIO_SOURCE_DEFAULT;
+ bool device_changed = false;
+ bool source_changed = false;
pa_assert(hw_module);
- if (audio_source == AUDIO_SOURCE_DEFAULT)
- pa_input_device_default_audio_source(hw_module->state.input_device, &audio_source);
+ if (hw_module->state.input_device != device) {
+ const char *name = NULL;
+ pa_log_debug("Set global input to %s (%#010x)",
+ pa_string_convert_input_device_num_to_str(device, &name)
+ ? name : "<unknown>",
+ device);
+ hw_module->state.input_device = device;
+ device_changed = true;
+ }
+
+ pa_input_device_default_audio_source(hw_module->state.input_device, &audio_source);
/* Override audio source based on mode. */
switch (hw_module->state.mode) {
@@ -2339,9 +2292,9 @@
}
if (audio_source != audio_source_override) {
- const char *from = NULL, *to = NULL;
- pa_string_convert_num_to_str(CONV_STRING_AUDIO_SOURCE_FANCY, audio_source, &from);
- pa_string_convert_num_to_str(CONV_STRING_AUDIO_SOURCE_FANCY, audio_source, &to);
+ const char *from, *to;
+ pa_droid_audio_source_name(audio_source, &from);
+ pa_droid_audio_source_name(audio_source_override, &to);
pa_log_info("Audio mode %s, overriding audio source %s with %s",
audio_mode_to_string(hw_module->state.mode),
from ? from : "<unknown>",
@@ -2351,39 +2304,14 @@
if (audio_source != hw_module->state.audio_source) {
const char *name = NULL;
- pa_log_debug("Set global audio source to %s (%#010x)",
- pa_string_convert_num_to_str(CONV_STRING_AUDIO_SOURCE_FANCY, audio_source, &name)
+ pa_log_debug("set global audio source to %s (%#010x)",
+ pa_droid_audio_source_name(audio_source, &name)
? name : "<unknown>",
audio_source);
hw_module->state.audio_source = audio_source;
-
- /* audio source changed */
- return true;
+ source_changed = true;
}
- /* audio source did not change */
- return false;
-}
-
-bool pa_droid_hw_set_input_device(pa_droid_hw_module *hw_module,
- audio_devices_t device) {
- bool device_changed = false;
- bool source_changed = false;
-
- pa_assert(hw_module);
-
- if (hw_module->state.input_device != device) {
- const char *name = NULL;
- pa_log_debug("Set global input to %s (%#010x)",
- pa_string_convert_input_device_num_to_str(device, &name)
- ? name : "<unknown>",
- device);
- hw_module->state.input_device = device;
- device_changed = true;
- }
-
- source_changed = droid_set_audio_source(hw_module, hw_module->state.audio_source);
-
|
[-]
[+]
|
Changed |
_service:tar_git:pulseaudio-modules-droid-14.2.92.tar.bz2/src/common/include/droid/conversion.h
^
|
@@ -52,12 +52,10 @@
CONV_STRING_OUTPUT_DEVICE,
CONV_STRING_INPUT_DEVICE,
CONV_STRING_OUTPUT_FLAG,
- CONV_STRING_INPUT_FLAG,
- CONV_STRING_AUDIO_SOURCE_FANCY,
+ CONV_STRING_INPUT_FLAG
} pa_conversion_string_t;
bool pa_string_convert_num_to_str(pa_conversion_string_t type, uint32_t value, const char **to_str);
-bool pa_string_convert_str_to_num(pa_conversion_string_t type, const char *str, uint32_t *to_value);
bool pa_convert_output_channel(uint32_t value, pa_conversion_field_t from, uint32_t *to_value);
bool pa_convert_input_channel(uint32_t value, pa_conversion_field_t from, uint32_t *to_value);
@@ -83,6 +81,9 @@
bool pa_droid_output_port_name(audio_devices_t value, const char **to_str);
bool pa_droid_input_port_name(audio_devices_t value, const char **to_str);
+/* Pretty audio source names */
+bool pa_droid_audio_source_name(audio_source_t value, const char **to_str);
+
int pa_conversion_parse_list(pa_conversion_string_t type, const char *separator,
const char *str, uint32_t *dst, char **unknown_entries);
|
[-]
[+]
|
Changed |
_service:tar_git:pulseaudio-modules-droid-14.2.92.tar.bz2/src/common/include/droid/droid-util.h
^
|
@@ -51,8 +51,6 @@
#define PROP_DROID_INPUT_BUILTIN "droid.input.builtin"
#define PROP_DROID_INPUT_EXTERNAL "droid.input.external"
-#define EXT_PROP_AUDIO_SOURCE "audio.source"
-
#define PA_DROID_PRIMARY_DEVICE "primary"
typedef struct pa_droid_hw_module pa_droid_hw_module;
@@ -320,15 +318,9 @@
pa_droid_stream *pa_droid_open_input_stream(pa_droid_hw_module *hw_module,
const pa_sample_spec *default_sample_spec,
const pa_channel_map *default_channel_map);
-/* Test if reconfiguring of input stream is needed */
-bool pa_droid_stream_reconfigure_input_needed(pa_droid_stream *s,
- const pa_sample_spec *requested_sample_spec,
- const pa_channel_map *requested_channel_map,
- const pa_proplist *proplist);
bool pa_droid_stream_reconfigure_input(pa_droid_stream *s,
const pa_sample_spec *requested_sample_spec,
- const pa_channel_map *requested_channel_map,
- const pa_proplist *proplist);
+ const pa_channel_map *requested_channel_map);
bool pa_droid_hw_set_input_device(pa_droid_hw_module *hw_module,
audio_devices_t device);
|
[-]
[+]
|
Changed |
_service:tar_git:pulseaudio-modules-droid-14.2.92.tar.bz2/src/droid/droid-source.c
^
|
@@ -94,7 +94,6 @@
static void source_reconfigure(struct userdata *u,
const pa_sample_spec *reconfigure_sample_spec,
const pa_channel_map *reconfigure_channel_map,
- const pa_proplist *proplist,
audio_devices_t update_device);
/* Our droid source may be left in a state of not having an input stream
@@ -348,7 +347,7 @@
if (!PA_SOURCE_IS_OPENED(u->source->state))
do_routing(u, data->device);
else
- source_reconfigure(u, NULL, NULL, NULL, data->device);
+ source_reconfigure(u, NULL, NULL, data->device);
return 0;
}
@@ -430,7 +429,6 @@
static void source_reconfigure(struct userdata *u,
const pa_sample_spec *reconfigure_sample_spec,
const pa_channel_map *reconfigure_channel_map,
- const pa_proplist *proplist,
audio_devices_t update_device) {
pa_channel_map old_channel_map;
pa_sample_spec old_sample_spec;
@@ -455,7 +453,7 @@
if (update_device)
do_routing(u, update_device);
- if (pa_droid_stream_reconfigure_input(u->stream, &new_sample_spec, &new_channel_map, proplist))
+ if (pa_droid_stream_reconfigure_input(u->stream, &new_sample_spec, &new_channel_map))
pa_log_info("Source reconfigured.");
else
pa_log_info("Failed to reconfigure input stream, no worries, using defaults.");
@@ -489,10 +487,8 @@
if (new_data->source != u->source)
return PA_HOOK_OK;
- if (!pa_droid_stream_reconfigure_input_needed(u->stream,
- &new_data->sample_spec,
- &new_data->channel_map,
- new_data->proplist))
+ if (pa_sample_spec_equal(&new_data->sample_spec, pa_droid_stream_sample_spec(u->stream)) &&
+ pa_channel_map_equal(&new_data->channel_map, pa_droid_stream_channel_map(u->stream)))
return PA_HOOK_OK;
pa_log_info("New source-output connecting and our source needs to be reconfigured.");
@@ -504,11 +500,10 @@
source_reconfigure(u,
pa_droid_stream_sample_spec(primary_output),
pa_droid_stream_channel_map(primary_output),
- new_data->proplist,
0);
} else
- source_reconfigure(u, &new_data->sample_spec, &new_data->channel_map, new_data->proplist, 0);
+ source_reconfigure(u, &new_data->sample_spec, &new_data->channel_map, 0);
return PA_HOOK_OK;
}
@@ -528,12 +523,12 @@
so = so_i;
}
- if (so && pa_droid_stream_reconfigure_input_needed(u->stream,
- &so->sample_spec,
- &so->channel_map,
- so->proplist)) {
- pa_log_info("Source-output disconnected and our source needs to be reconfigured.");
- source_reconfigure(u, &so->sample_spec, &so->channel_map, so->proplist, 0);
+ if (so) {
+ if (!pa_sample_spec_equal(&so->sample_spec, pa_droid_stream_sample_spec(u->stream)) ||
+ !pa_channel_map_equal(&so->channel_map, pa_droid_stream_channel_map(u->stream))) {
+ pa_log_info("Source-output disconnected and our source needs to be reconfigured.");
+ source_reconfigure(u, &so->sample_spec, &so->channel_map, 0);
+ }
}
}
|