[-]
[+]
|
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">11.1.75</param>
<param name="token"/>
<param name="debian"/>
<param name="dumb"/>
|
[-]
[+]
|
Changed |
_service:tar_git:pulseaudio-modules-droid-11.1.75.tar.bz2/README
^
|
@@ -19,27 +19,21 @@
Headers for defining devices and strings for different droid versions are in
src/common/droid-util-audio.h (legacy headers for Jolla 1 in droid-util-41qc.h).
-When new devices with relevant new enums appear, add enum check to configure.ac.
-CC_CHECK_DROID_ENUM macro will create macros HAVE_ENUM_FOO, STRING_ENTRY_IF_FOO
-and FANCY_ENTRY_IF_FOO if enum FOO exists in HAL audio.h.
-
-For example:
-
-# configure.ac:
+When new devices with relevant new enums appear, add enum check to configure.ac,
+for example: (the CC_CHECK_DROID_ENUM m4 macro will create define HAVE_ENUM_FOO
+if the enum FOO exists in HAL audio.h)
CC_CHECK_DROID_ENUM([${DROIDHEADERS_CFLAGS}], [AUDIO_DEVICE_OUT_IP])
- CC_CHECK_DROID_ENUM([${DROIDHEADERS_CFLAGS}], [AUDIO_DEVICE_OUT_OTHER_NEW])
-# and then in droid-util-audio.h add macros to proper tables:
+and then in droid-util-audio.h add the enum to proper tables with ifdefs:
/* string_conversion_table_output_device[] */
- STRING_ENTRY_IF_OUT_IP
- STRING_ENTRY_IF_OUT_OTHER_NEW
+ #ifdef HAVE_ENUM_AUDIO_DEVICE_OUT_IP
+ STRING_ENTRY( AUDIO_DEVICE_OUT_IP ),
+ #endif
/* string_conversion_table_output_device_fancy[] */
- FANCY_ENTRY_IF_OUT_IP("output-ip")
- FANCY_ENTRY_IF_OUT_OTHER_NEW("output-other_new")
-
-In addition to the above macros there are also now defines
-HAVE_ENUM_AUDIO_DEVICE_OUT_IP and HAVE_ENUM_AUDIO_DEVICE_OUT_OTHER_NEW.
+ #ifdef HAVE_ENUM_AUDIO_DEVICE_OUT_IP
+ { AUDIO_DEVICE_OUT_IP, "output-ip" },
+ #endif
The purpose of droid-modules is to "replace AudioFlinger". Many hardware
adaptations use ALSA as the kernel interface, but there is no saying that
|
[-]
[+]
|
Changed |
_service:tar_git:pulseaudio-modules-droid-11.1.75.tar.bz2/configure.ac
^
|
@@ -269,8 +269,8 @@
CC_CHECK_DROID_ENUM([${DROIDHEADERS_CFLAGS}], [AUDIO_CHANNEL_OUT_5POINT1_BACK])
CC_CHECK_DROID_ENUM([${DROIDHEADERS_CFLAGS}], [AUDIO_CHANNEL_OUT_5POINT1_SIDE])
CC_CHECK_DROID_ENUM([${DROIDHEADERS_CFLAGS}], [AUDIO_CHANNEL_IN_VOICE_CALL_MONO])
-CC_CHECK_DROID_ENUM([${DROIDHEADERS_CFLAGS}], [AUDIO_CHANNEL_IN_VOICE_UPLINK_MONO])
-CC_CHECK_DROID_ENUM([${DROIDHEADERS_CFLAGS}], [AUDIO_CHANNEL_IN_VOICE_DNLINK_MONO])
+CC_CHECK_DROID_ENUM([${DROIDHEADERS_CFLAGS}], [AUDIO_CHANNEL_IN_VOICE_UPLINK])
+CC_CHECK_DROID_ENUM([${DROIDHEADERS_CFLAGS}], [AUDIO_CHANNEL_IN_VOICE_DNLINK])
# Formats
CC_CHECK_DROID_ENUM([${DROIDHEADERS_CFLAGS}], [AUDIO_FORMAT_PCM_OFFLOAD])
|
[-]
[+]
|
Changed |
_service:tar_git:pulseaudio-modules-droid-11.1.75.tar.bz2/m4/check_droid_enum.m4
^
|
@@ -17,10 +17,5 @@
AC_MSG_RESULT([$cc_check_droid_enum])
if test x"$cc_check_droid_enum" = x"yes"; then
AC_DEFINE(HAVE_ENUM_$2,,[define if enum $2 is found in headers])
- AC_DEFINE(STRING_ENTRY_IF_$2,[STRING_ENTRY($2),],[string entry for enum $2])
- AC_DEFINE(FANCY_ENTRY_IF_$2(n),[{$2, n},],[fancy entry for enum $2])
-else
- AC_DEFINE(STRING_ENTRY_IF_$2,,[string entry for enum $2])
- AC_DEFINE(FANCY_ENTRY_IF_$2(n),,[fancy entry for enum $2])
fi
])
|
[-]
[+]
|
Changed |
_service:tar_git:pulseaudio-modules-droid-11.1.75.tar.bz2/src/common/config-parser-xml.c
^
|
@@ -535,7 +535,7 @@
element = xml_string_dup(element_name, -1);
- if (pa_safe_streq(data->current->name, element)) {
+ if (pa_streq(data->current->name, element)) {
ELEMENT_STACK_POP(data->stack, data->current);
if (pa_streq(element, ELEMENT_mixPort))
@@ -554,7 +554,7 @@
int whitespace = 0;
char *str = NULL;
- if (len <= 0 || !data->current->char_data)
+ if (len <= 0)
goto done;
str = xml_string_dup(s, len);
@@ -563,7 +563,8 @@
if (whitespace == len)
goto done;
- data->current->char_data(data, str);
+ if (data->current->char_data)
+ data->current->char_data(data, str);
done:
pa_xfree(str);
|
[-]
[+]
|
Changed |
_service:tar_git:pulseaudio-modules-droid-11.1.75.tar.bz2/src/common/droid-util-audio.h
^
|
@@ -140,19 +140,45 @@
/* Devices which may or may not be defined for all devices,
* update configure.ac CC_CHECK_DROID_ENUM list if you encounter new ones. */
- STRING_ENTRY_IF_AUDIO_DEVICE_OUT_HDMI
- STRING_ENTRY_IF_AUDIO_DEVICE_OUT_HDMI_ARC
- STRING_ENTRY_IF_AUDIO_DEVICE_OUT_TELEPHONY_TX
- STRING_ENTRY_IF_AUDIO_DEVICE_OUT_LINE
- STRING_ENTRY_IF_AUDIO_DEVICE_OUT_SPDIF
- STRING_ENTRY_IF_AUDIO_DEVICE_OUT_AUX_LINE
- STRING_ENTRY_IF_AUDIO_DEVICE_OUT_SPEAKER_SAFE
- STRING_ENTRY_IF_AUDIO_DEVICE_OUT_FM
- STRING_ENTRY_IF_AUDIO_DEVICE_OUT_FM_TX
- STRING_ENTRY_IF_AUDIO_DEVICE_OUT_ANC_HEADSET
- STRING_ENTRY_IF_AUDIO_DEVICE_OUT_ANC_HEADPHONE
- STRING_ENTRY_IF_AUDIO_DEVICE_OUT_PROXY
- STRING_ENTRY_IF_AUDIO_DEVICE_OUT_IP
+#ifdef HAVE_ENUM_AUDIO_DEVICE_OUT_HDMI
+ STRING_ENTRY( AUDIO_DEVICE_OUT_HDMI ),
+#endif
+#ifdef HAVE_ENUM_AUDIO_DEVICE_OUT_HDMI_ARC
+ STRING_ENTRY( AUDIO_DEVICE_OUT_HDMI_ARC ),
+#endif
+#ifdef HAVE_ENUM_AUDIO_DEVICE_OUT_TELEPHONY_TX
+ STRING_ENTRY( AUDIO_DEVICE_OUT_TELEPHONY_TX ),
+#endif
+#ifdef HAVE_ENUM_AUDIO_DEVICE_OUT_LINE
+ STRING_ENTRY( AUDIO_DEVICE_OUT_LINE ),
+#endif
+#ifdef HAVE_ENUM_AUDIO_DEVICE_OUT_SPDIF
+ STRING_ENTRY( AUDIO_DEVICE_OUT_SPDIF ),
+#endif
+#ifdef HAVE_ENUM_AUDIO_DEVICE_OUT_AUX_LINE
+ STRING_ENTRY( AUDIO_DEVICE_OUT_AUX_LINE ),
+#endif
+#ifdef HAVE_ENUM_AUDIO_DEVICE_OUT_SPEAKER_SAFE
+ STRING_ENTRY( AUDIO_DEVICE_OUT_SPEAKER_SAFE ),
+#endif
+#ifdef HAVE_ENUM_AUDIO_DEVICE_OUT_FM
+ STRING_ENTRY( AUDIO_DEVICE_OUT_FM ),
+#endif
+#ifdef HAVE_ENUM_AUDIO_DEVICE_OUT_FM_TX
+ STRING_ENTRY( AUDIO_DEVICE_OUT_FM_TX ),
+#endif
+#ifdef HAVE_ENUM_AUDIO_DEVICE_OUT_ANC_HEADSET
+ STRING_ENTRY( AUDIO_DEVICE_OUT_ANC_HEADSET ),
+#endif
+#ifdef HAVE_ENUM_AUDIO_DEVICE_OUT_ANC_HEADPHONE
+ STRING_ENTRY( AUDIO_DEVICE_OUT_ANC_HEADPHONE ),
+#endif
+#ifdef HAVE_ENUM_AUDIO_DEVICE_OUT_PROXY
+ STRING_ENTRY( AUDIO_DEVICE_OUT_PROXY ),
+#endif
+#ifdef HAVE_ENUM_AUDIO_DEVICE_OUT_IP
+ STRING_ENTRY( AUDIO_DEVICE_OUT_IP ),
+#endif
/* Combination entries consisting of multiple devices defined above.
* These don't require counterpart in string_conversion_table_output_device_fancy. */
@@ -186,19 +212,45 @@
{ AUDIO_DEVICE_OUT_DEFAULT, "output-default" },
/* Devices which may or may not be defined for all devices, */
- FANCY_ENTRY_IF_AUDIO_DEVICE_OUT_HDMI ( "output-hdmi" )
- FANCY_ENTRY_IF_AUDIO_DEVICE_OUT_HDMI_ARC ( "output-hdmi_arc" )
- FANCY_ENTRY_IF_AUDIO_DEVICE_OUT_TELEPHONY_TX ( "output-telephony_tx" )
- FANCY_ENTRY_IF_AUDIO_DEVICE_OUT_LINE ( "output-line" )
- FANCY_ENTRY_IF_AUDIO_DEVICE_OUT_SPDIF ( "output-spdif" )
- FANCY_ENTRY_IF_AUDIO_DEVICE_OUT_AUX_LINE ( "output-aux_line" )
- FANCY_ENTRY_IF_AUDIO_DEVICE_OUT_SPEAKER_SAFE ( "output-speaker_safe" )
- FANCY_ENTRY_IF_AUDIO_DEVICE_OUT_FM ( "output-fm" )
- FANCY_ENTRY_IF_AUDIO_DEVICE_OUT_FM_TX ( "output-fm_tx" )
- FANCY_ENTRY_IF_AUDIO_DEVICE_OUT_ANC_HEADSET ( "output-and_headset" )
- FANCY_ENTRY_IF_AUDIO_DEVICE_OUT_ANC_HEADPHONE ( "output-anc_headphone" )
- FANCY_ENTRY_IF_AUDIO_DEVICE_OUT_PROXY ( "output-proxy" )
- FANCY_ENTRY_IF_AUDIO_DEVICE_OUT_IP ( "output-ip" )
+#ifdef HAVE_ENUM_AUDIO_DEVICE_OUT_HDMI
+ { AUDIO_DEVICE_OUT_HDMI, "output-hdmi" },
+#endif
+#ifdef HAVE_ENUM_AUDIO_DEVICE_OUT_HDMI_ARC
+ { AUDIO_DEVICE_OUT_HDMI_ARC, "output-hdmi_arc" },
+#endif
+#ifdef HAVE_ENUM_AUDIO_DEVICE_OUT_TELEPHONY_TX
+ { AUDIO_DEVICE_OUT_TELEPHONY_TX, "output-telephony_tx" },
+#endif
+#ifdef HAVE_ENUM_AUDIO_DEVICE_OUT_LINE
+ { AUDIO_DEVICE_OUT_LINE, "output-line" },
+#endif
+#ifdef HAVE_ENUM_AUDIO_DEVICE_OUT_SPDIF
+ { AUDIO_DEVICE_OUT_SPDIF, "output-spdif" },
+#endif
+#ifdef HAVE_ENUM_AUDIO_DEVICE_OUT_AUX_LINE
+ { AUDIO_DEVICE_OUT_AUX_LINE, "output-aux_line" },
+#endif
+#ifdef HAVE_ENUM_AUDIO_DEVICE_OUT_SPEAKER_SAFE
+ { AUDIO_DEVICE_OUT_SPEAKER_SAFE, "output-speaker_safe" },
+#endif
+#ifdef HAVE_ENUM_AUDIO_DEVICE_OUT_FM
+ { AUDIO_DEVICE_OUT_FM, "output-fm" },
+#endif
+#ifdef HAVE_ENUM_AUDIO_DEVICE_OUT_FM_TX
+ { AUDIO_DEVICE_OUT_FM_TX, "output-fm_tx" },
+#endif
+#ifdef HAVE_ENUM_AUDIO_DEVICE_OUT_ANC_HEADSET
+ { AUDIO_DEVICE_OUT_ANC_HEADSET, "output-anc_headset" },
+#endif
+#ifdef HAVE_ENUM_AUDIO_DEVICE_OUT_ANC_HEADPHONE
+ { AUDIO_DEVICE_OUT_ANC_HEADPHONE, "output-anc_headphone" },
+#endif
+#ifdef HAVE_ENUM_AUDIO_DEVICE_OUT_PROXY
+ { AUDIO_DEVICE_OUT_PROXY, "output-proxy" },
+#endif
+#ifdef HAVE_ENUM_AUDIO_DEVICE_OUT_IP
+ { AUDIO_DEVICE_OUT_IP, "output-ip" },
+#endif
{ 0, NULL }
};
@@ -224,18 +276,42 @@
/* Devices which may or may not be defined for all devices,
* update configure.ac CC_CHECK_DROID_ENUM list if you encounter new ones. */
- STRING_ENTRY_IF_AUDIO_DEVICE_IN_HDMI
- STRING_ENTRY_IF_AUDIO_DEVICE_IN_TELEPHONY_RX
- STRING_ENTRY_IF_AUDIO_DEVICE_IN_FM_TUNER
- STRING_ENTRY_IF_AUDIO_DEVICE_IN_TV_TUNER
- STRING_ENTRY_IF_AUDIO_DEVICE_IN_LINE
- STRING_ENTRY_IF_AUDIO_DEVICE_IN_SPDIF
- STRING_ENTRY_IF_AUDIO_DEVICE_IN_BLUETOOTH_A2DP
- STRING_ENTRY_IF_AUDIO_DEVICE_IN_LOOPBACK
- STRING_ENTRY_IF_AUDIO_DEVICE_IN_PROXY
- STRING_ENTRY_IF_AUDIO_DEVICE_IN_FM_RX
- STRING_ENTRY_IF_AUDIO_DEVICE_IN_FM_RX_A2DP
- STRING_ENTRY_IF_AUDIO_DEVICE_IN_IP
+#ifdef HAVE_ENUM_AUDIO_DEVICE_IN_HDMI
+ STRING_ENTRY( AUDIO_DEVICE_IN_HDMI ),
+#endif
+#ifdef HAVE_ENUM_AUDIO_DEVICE_IN_TELEPHONY_RX
+ STRING_ENTRY( AUDIO_DEVICE_IN_TELEPHONY_RX ),
+#endif
+#ifdef HAVE_ENUM_AUDIO_DEVICE_IN_FM_TUNER
+ STRING_ENTRY( AUDIO_DEVICE_IN_FM_TUNER ),
+#endif
+#ifdef HAVE_ENUM_AUDIO_DEVICE_IN_TV_TUNER
+ STRING_ENTRY( AUDIO_DEVICE_IN_TV_TUNER ),
+#endif
+#ifdef HAVE_ENUM_AUDIO_DEVICE_IN_LINE
+ STRING_ENTRY( AUDIO_DEVICE_IN_LINE ),
+#endif
+#ifdef HAVE_ENUM_AUDIO_DEVICE_IN_SPDIF
+ STRING_ENTRY( AUDIO_DEVICE_IN_SPDIF ),
+#endif
+#ifdef HAVE_ENUM_AUDIO_DEVICE_IN_BLUETOOTH_A2DP
+ STRING_ENTRY( AUDIO_DEVICE_IN_BLUETOOTH_A2DP ),
+#endif
+#ifdef HAVE_ENUM_AUDIO_DEVICE_IN_LOOPBACK
+ STRING_ENTRY( AUDIO_DEVICE_IN_LOOPBACK ),
+#endif
+#ifdef HAVE_ENUM_AUDIO_DEVICE_IN_PROXY
+ STRING_ENTRY( AUDIO_DEVICE_IN_PROXY ),
+#endif
+#ifdef HAVE_ENUM_AUDIO_DEVICE_IN_FM_RX
+ STRING_ENTRY( AUDIO_DEVICE_IN_FM_RX ),
+#endif
+#ifdef HAVE_ENUM_AUDIO_DEVICE_IN_FM_RX_A2DP
+ STRING_ENTRY( AUDIO_DEVICE_IN_FM_RX_A2DP ),
+#endif
+#ifdef HAVE_ENUM_AUDIO_DEVICE_IN_IP
+ STRING_ENTRY( AUDIO_DEVICE_IN_IP ),
+#endif
#ifdef DROID_AUDIO_HAL_SECONDARY_MIC
STRING_ENTRY( AUDIO_DEVICE_IN_SECONDARY_MIC ),
@@ -245,7 +321,9 @@
* These don't require counterpart in string_conversion_table_input_device_fancy. */
STRING_ENTRY( AUDIO_DEVICE_IN_ALL ),
STRING_ENTRY( AUDIO_DEVICE_IN_ALL_SCO ),
- STRING_ENTRY_IF_AUDIO_DEVICE_IN_ALL_USB
+#ifdef HAVE_ENUM_AUDIO_DEVICE_IN_ALL_USB
+ STRING_ENTRY( AUDIO_DEVICE_IN_ALL_USB ),
+#endif
{ 0, NULL }
};
@@ -267,18 +345,42 @@
{ AUDIO_DEVICE_IN_DEFAULT, "input-default" },
/* Devices which may or may not be defined for all devices, */
- FANCY_ENTRY_IF_AUDIO_DEVICE_IN_HDMI ( "input-hdmi" )
- FANCY_ENTRY_IF_AUDIO_DEVICE_IN_TELEPHONY_RX ( "input-telephony_rx" )
- FANCY_ENTRY_IF_AUDIO_DEVICE_IN_FM_TUNER ( "input-fm_tuner" )
- FANCY_ENTRY_IF_AUDIO_DEVICE_IN_TV_TUNER ( "input-tv_tuner" )
- FANCY_ENTRY_IF_AUDIO_DEVICE_IN_LINE ( "input-line" )
- FANCY_ENTRY_IF_AUDIO_DEVICE_IN_SPDIF ( "input-spdif" )
- FANCY_ENTRY_IF_AUDIO_DEVICE_IN_BLUETOOTH_A2DP ( "input-bluetooth_a2dp" )
- FANCY_ENTRY_IF_AUDIO_DEVICE_IN_LOOPBACK ( "input-loopback" )
- FANCY_ENTRY_IF_AUDIO_DEVICE_IN_PROXY ( "input-proxy" )
- FANCY_ENTRY_IF_AUDIO_DEVICE_IN_FM_RX ( "input-fm_rx" )
- FANCY_ENTRY_IF_AUDIO_DEVICE_IN_FM_RX_A2DP ( "input-fm_rx_a2dp" )
- FANCY_ENTRY_IF_AUDIO_DEVICE_IN_IP ( "input-ip" )
|
[-]
[+]
|
Changed |
_service:tar_git:pulseaudio-modules-droid-11.1.75.tar.bz2/src/common/include/droid/version.h
^
|
@@ -24,7 +24,7 @@
#include <android-config.h>
-#if defined(QCOM_BSP) || defined(DROID_DEVICE_SBJ)
+#ifdef QCOM_BSP
#define QCOM_HARDWARE
#endif
|
[-]
[+]
|
Changed |
_service:tar_git:pulseaudio-modules-droid-11.1.75.tar.bz2/src/droid/droid-sink.c
^
|
@@ -442,7 +442,6 @@
return ret;
}
-/* Called from IO context */
static int unsuspend(struct userdata *u) {
uint32_t i;
@@ -467,69 +466,56 @@
}
/* Called from IO context */
-static int sink_set_state_in_io_thread_cb(pa_sink *s, pa_sink_state_t new_state, pa_suspend_cause_t new_suspend_cause) {
- struct userdata *u;
- int r;
-
- pa_assert(s);
- pa_assert_se(u = s->userdata);
-
- /* It may be that only the suspend cause is changing, in which case there's
- * nothing more to do. */
- if (new_state == s->thread_info.state)
- return 0;
-
- switch (new_state) {
- case PA_SINK_SUSPENDED:
- pa_assert(PA_SINK_IS_OPENED(u->sink->thread_info.state));
-
- if ((r = suspend(u)) < 0)
- return r;
-
- break;
-
- case PA_SINK_IDLE:
- /* Fall through */
- case PA_SINK_RUNNING:
- if (u->sink->thread_info.state == PA_SINK_SUSPENDED) {
- if ((r = unsuspend(u)) < 0)
- return r;
- }
-
- pa_rtpoll_set_timer_absolute(u->rtpoll, pa_rtclock_now());
- break;
-
- case PA_SINK_UNLINKED:
- /* Suspending since some implementations do not want to free running stream. */
- suspend(u);
- break;
-
- /* not needed */
- case PA_SINK_INIT:
- case PA_SINK_INVALID_STATE:
- break;
- }
-
- return 0;
-}
-
-/* Called from IO context */
static int sink_process_msg(pa_msgobject *o, int code, void *data, int64_t offset, pa_memchunk *chunk) {
struct userdata *u = PA_SINK(o)->userdata;
switch (code) {
+
case PA_SINK_MESSAGE_GET_LATENCY: {
*((pa_usec_t*) data) = pa_droid_stream_get_latency(u->stream);
return 0;
}
-#if PULSEAUDIO_VERSION < 12
case PA_SINK_MESSAGE_SET_STATE: {
- int r;
- if ((r = sink_set_state_in_io_thread_cb(u->sink, PA_PTR_TO_UINT(data), 0)) < 0)
- return r;
+ switch ((pa_sink_state_t) PA_PTR_TO_UINT(data)) {
+ case PA_SINK_SUSPENDED: {
+ int r;
+
+ pa_assert(PA_SINK_IS_OPENED(u->sink->thread_info.state));
+
+ if ((r = suspend(u)) < 0)
+ return r;
+
+ break;
+ }
+
+ case PA_SINK_IDLE:
+ /* Fall through */
+ case PA_SINK_RUNNING: {
+ int r;
+
+ if (u->sink->thread_info.state == PA_SINK_SUSPENDED) {
+ if ((r = unsuspend(u)) < 0)
+ return r;
+ }
+
+ pa_rtpoll_set_timer_absolute(u->rtpoll, pa_rtclock_now());
+ break;
+ }
+
+ case PA_SINK_UNLINKED: {
+ /* Suspending since some implementations do not want to free running stream. */
+ suspend(u);
+ break;
+ }
+
+ /* not needed */
+ case PA_SINK_INIT:
+ case PA_SINK_INVALID_STATE:
+ ;
+ }
+ break;
}
-#endif
}
return pa_sink_process_msg(o, code, data, offset, chunk);
@@ -1272,9 +1258,6 @@
u->sink->userdata = u;
u->sink->parent.process_msg = sink_process_msg;
-#if PULSEAUDIO_VERSION >= 12
- u->sink->set_state_in_io_thread = sink_set_state_in_io_thread_cb;
-#endif
u->sink->set_port = sink_set_port_cb;
@@ -1328,6 +1311,9 @@
pa_droid_config_free(config);
pa_xfree(thread_name);
+ if (config)
+ pa_xfree(config);
+
if (u)
userdata_free(u);
|
[-]
[+]
|
Changed |
_service:tar_git:pulseaudio-modules-droid-11.1.75.tar.bz2/src/droid/droid-source.c
^
|
@@ -157,7 +157,7 @@
if (!u->stream_valid) {
p = pa_memblock_acquire(chunk.memblock);
chunk.length = pa_memblock_get_length(chunk.memblock);
- pa_silence_memory(p, chunk.length, &u->source->sample_spec);
+ memset(p, 0, chunk.length);
pa_source_post(u->source, &chunk);
pa_memblock_release(chunk.memblock);
goto end;
@@ -275,51 +275,6 @@
}
/* Called from IO context */
-static int source_set_state_in_io_thread_cb(pa_source *s, pa_source_state_t new_state, pa_suspend_cause_t new_suspend_cause) {
- struct userdata *u;
- int r;
-
- pa_assert(s);
- pa_assert_se(u = s->userdata);
-
- /* It may be that only the suspend cause is changing, in which case there's
- * nothing more to do. */
- if (new_state == s->thread_info.state)
- return 0;
-
- switch (new_state) {
- case PA_SOURCE_SUSPENDED:
- if (PA_SOURCE_IS_OPENED(u->source->thread_info.state)) {
- if ((r = suspend(u)) < 0)
- return r;
- }
-
- break;
-
- case PA_SOURCE_IDLE:
- /* Fall through */
- case PA_SOURCE_RUNNING:
- if (u->source->thread_info.state == PA_SOURCE_SUSPENDED) {
- unsuspend(u);
- u->timestamp = pa_rtclock_now();
- }
- break;
-
- case PA_SOURCE_UNLINKED:
- /* Suspending since some implementations do not want to free running stream. */
- suspend(u);
- break;
-
- /* not needed */
- case PA_SOURCE_INIT:
- case PA_SOURCE_INVALID_STATE:
- break;
- }
-
- return 0;
-}
-
-/* Called from IO context */
static int source_process_msg(pa_msgobject *o, int code, void *data, int64_t offset, pa_memchunk *chunk) {
struct userdata *u = PA_SOURCE(o)->userdata;
@@ -335,13 +290,42 @@
break;
}
-#if PULSEAUDIO_VERSION < 12
case PA_SOURCE_MESSAGE_SET_STATE: {
- int r;
- if ((r = source_set_state_in_io_thread_cb(u->source, PA_PTR_TO_UINT(data), 0)) < 0)
- return r;
+ switch ((pa_source_state_t) PA_PTR_TO_UINT(data)) {
+ case PA_SOURCE_SUSPENDED: {
+ int r;
+
+ if (PA_SOURCE_IS_OPENED(u->source->thread_info.state)) {
+ if ((r = suspend(u)) < 0)
+ return r;
+ }
+
+ break;
+ }
+
+ case PA_SOURCE_IDLE:
+ /* Fall through */
+ case PA_SOURCE_RUNNING: {
+ if (u->source->thread_info.state == PA_SOURCE_SUSPENDED) {
+ unsuspend(u);
+ u->timestamp = pa_rtclock_now();
+ }
+ break;
+ }
+
+ case PA_SOURCE_UNLINKED: {
+ /* Suspending since some implementations do not want to free running stream. */
+ suspend(u);
+ break;
+ }
+
+ /* not needed */
+ case PA_SOURCE_INIT:
+ case PA_SOURCE_INVALID_STATE:
+ ;
+ }
+ break;
}
-#endif
}
return pa_source_process_msg(o, code, data, offset, chunk);
@@ -703,9 +687,6 @@
u->source->userdata = u;
u->source->parent.process_msg = source_process_msg;
-#if PULSEAUDIO_VERSION >= 12
- u->source->set_state_in_io_thread = source_set_state_in_io_thread_cb;
-#endif
source_set_mute_control(u);
|
[-]
[+]
|
Changed |
_service:tar_git:pulseaudio-modules-droid-11.1.75.tar.bz2/src/droid/module-droid-sink.c
^
|
@@ -50,7 +50,6 @@
PA_MODULE_VERSION(PACKAGE_VERSION);
static const char* const valid_modargs[] = {
- "config",
"rate",
"format",
"channels",
|
[-]
[+]
|
Changed |
_service:tar_git:pulseaudio-modules-droid-11.1.75.tar.bz2/src/droid/module-droid-source.c
^
|
@@ -49,7 +49,6 @@
PA_MODULE_VERSION(PACKAGE_VERSION);
static const char* const valid_modargs[] = {
- "config",
"rate",
"format",
"channels",
|