Accepting request 721534 from home:oholecek:branches:multimedia:libs
!NOT TO BE FORWARDED TO FACTORY! https://bugreports.qt.io/browse/QTBUG-77037 needs to be solved first - Update to 13 RC2 (12.99.2) * Added support for Dolby TrueHD and DTS-HD Master Audio * Improved initial card profile selection for ALSA cards * Bluetooth card profile choices aren't persistent any more by default * Added support for SteelSeries Arctis 5 USB headset * New "max_latency_msec" module argument for module-loopback * New "stream_name" module argument for module-rtp-send * Fixed S/PDIF for CMEDIA USB2.0 High-Speed True HD Audio * Use source sample spec and channel map by default in module-loopback * New "avoid_resampling" module argument for module-udev-detect and module-alsa-card * New function to enable realtime scheduling for client threads * Removed BlueZ 4 support * Dropped intltool * Some initial work on a Meson build system * https://www.freedesktop.org/wiki/Software/PulseAudio/Notes/13.0/ - Removed patches already included in the source: pulseaudio-alsa.patch pa-set-exit-idle-time-to-0-when-we-detect-a-session.patch OBS-URL: https://build.opensuse.org/request/show/721534 OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/pulseaudio?expand=0&rev=208
This commit is contained in:
parent
d03ae33675
commit
3f8bbcdfbd
@ -1,113 +0,0 @@
|
||||
From: Tanu Kaskinen <tanuk@iki.fi>
|
||||
Subject: [PATCH] set exit-idle-time to 0 when we detect a session
|
||||
Date: Wed, 28 Feb 2018 18:16:03 +0200
|
||||
Message-Id: <20180228161603.30746-1-tanuk@iki.fi>
|
||||
|
||||
As the comments explain, this fixes relogin problems on some systems
|
||||
that remove our sockets on logout without terminating the daemon.
|
||||
---
|
||||
|
||||
src/modules/module-console-kit.c | 13 +++++++++++++
|
||||
src/modules/module-systemd-login.c | 14 ++++++++++++++
|
||||
src/modules/x11/module-x11-xsmp.c | 13 +++++++++++++
|
||||
src/pulsecore/core.c | 10 ++++++++++
|
||||
src/pulsecore/core.h | 2 ++
|
||||
5 files changed, 52 insertions(+)
|
||||
|
||||
--- a/src/modules/module-console-kit.c
|
||||
+++ b/src/modules/module-console-kit.c
|
||||
@@ -120,6 +120,19 @@ static void add_session(struct userdata
|
||||
|
||||
pa_log_debug("Added new session %s", id);
|
||||
|
||||
+ /* Positive exit_idle_time is only useful when we have no session tracking
|
||||
+ * capability, so we can set it to 0 now that we have detected a session.
|
||||
+ * The benefit of setting exit_idle_time to 0 is that pulseaudio will exit
|
||||
+ * immediately when the session ends. That in turn is useful, because some
|
||||
+ * systems (those that use pam_systemd but don't use systemd for managing
|
||||
+ * pulseaudio) clean $XDG_RUNTIME_DIR on logout, but fail to terminate all
|
||||
+ * services that depend on the files in $XDG_RUNTIME_DIR. The directory
|
||||
+ * contains our sockets, and if the sockets are removed without terminating
|
||||
+ * pulseaudio, a quick relogin will likely cause trouble, because a new
|
||||
+ * instance will be spawned while the old instance is still running. */
|
||||
+ if (u->core->exit_idle_time > 0)
|
||||
+ pa_core_set_exit_idle_time(u->core, 0);
|
||||
+
|
||||
fail:
|
||||
|
||||
if (m)
|
||||
--- a/src/modules/module-systemd-login.c
|
||||
+++ b/src/modules/module-systemd-login.c
|
||||
@@ -86,6 +86,20 @@ static int add_session(struct userdata *
|
||||
pa_hashmap_put(u->sessions, session->id, session);
|
||||
|
||||
pa_log_debug("Added new session %s", id);
|
||||
+
|
||||
+ /* Positive exit_idle_time is only useful when we have no session tracking
|
||||
+ * capability, so we can set it to 0 now that we have detected a session.
|
||||
+ * The benefit of setting exit_idle_time to 0 is that pulseaudio will exit
|
||||
+ * immediately when the session ends. That in turn is useful, because some
|
||||
+ * systems (those that use pam_systemd but don't use systemd for managing
|
||||
+ * pulseaudio) clean $XDG_RUNTIME_DIR on logout, but fail to terminate all
|
||||
+ * services that depend on the files in $XDG_RUNTIME_DIR. The directory
|
||||
+ * contains our sockets, and if the sockets are removed without terminating
|
||||
+ * pulseaudio, a quick relogin will likely cause trouble, because a new
|
||||
+ * instance will be spawned while the old instance is still running. */
|
||||
+ if (u->core->exit_idle_time > 0)
|
||||
+ pa_core_set_exit_idle_time(u->core, 0);
|
||||
+
|
||||
return 0;
|
||||
}
|
||||
|
||||
--- a/src/modules/x11/module-x11-xsmp.c
|
||||
+++ b/src/modules/x11/module-x11-xsmp.c
|
||||
@@ -208,6 +208,19 @@ int pa__init(pa_module*m) {
|
||||
if (!u->client)
|
||||
goto fail;
|
||||
|
||||
+ /* Positive exit_idle_time is only useful when we have no session tracking
|
||||
+ * capability, so we can set it to 0 now that we have detected a session.
|
||||
+ * The benefit of setting exit_idle_time to 0 is that pulseaudio will exit
|
||||
+ * immediately when the session ends. That in turn is useful, because some
|
||||
+ * systems (those that use pam_systemd but don't use systemd for managing
|
||||
+ * pulseaudio) clean $XDG_RUNTIME_DIR on logout, but fail to terminate all
|
||||
+ * services that depend on the files in $XDG_RUNTIME_DIR. The directory
|
||||
+ * contains our sockets, and if the sockets are removed without terminating
|
||||
+ * pulseaudio, a quick relogin will likely cause trouble, because a new
|
||||
+ * instance will be spawned while the old instance is still running. */
|
||||
+ if (u->core->exit_idle_time > 0)
|
||||
+ pa_core_set_exit_idle_time(u->core, 0);
|
||||
+
|
||||
pa_modargs_free(ma);
|
||||
|
||||
return 0;
|
||||
--- a/src/pulsecore/core.c
|
||||
+++ b/src/pulsecore/core.c
|
||||
@@ -426,6 +426,16 @@ void pa_core_update_default_source(pa_co
|
||||
pa_hook_fire(&core->hooks[PA_CORE_HOOK_DEFAULT_SOURCE_CHANGED], core->default_source);
|
||||
}
|
||||
|
||||
+void pa_core_set_exit_idle_time(pa_core *core, int time) {
|
||||
+ pa_assert(core);
|
||||
+
|
||||
+ if (time == core->exit_idle_time)
|
||||
+ return;
|
||||
+
|
||||
+ pa_log_info("exit_idle_time: %i -> %i", core->exit_idle_time, time);
|
||||
+ core->exit_idle_time = time;
|
||||
+}
|
||||
+
|
||||
static void exit_callback(pa_mainloop_api *m, pa_time_event *e, const struct timeval *t, void *userdata) {
|
||||
pa_core *c = userdata;
|
||||
pa_assert(c->exit_event == e);
|
||||
--- a/src/pulsecore/core.h
|
||||
+++ b/src/pulsecore/core.h
|
||||
@@ -254,6 +254,8 @@ void pa_core_set_configured_default_sour
|
||||
void pa_core_update_default_sink(pa_core *core);
|
||||
void pa_core_update_default_source(pa_core *core);
|
||||
|
||||
+void pa_core_set_exit_idle_time(pa_core *core, int time);
|
||||
+
|
||||
/* Check whether no one is connected to this core */
|
||||
void pa_core_check_idle(pa_core *c);
|
||||
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:809668ffc296043779c984f53461c2b3987a45b7a25eb2f0a1d11d9f23ba4055
|
||||
size 1665092
|
3
pulseaudio-12.99.2.tar.xz
Normal file
3
pulseaudio-12.99.2.tar.xz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:a8f29c719fc317d7e4b86a468d82a8f7619a49e024748606a2f2d3d68b3a4a3f
|
||||
size 1940172
|
@ -1,123 +0,0 @@
|
||||
---
|
||||
configure.ac | 2 +-
|
||||
src/modules/alsa/alsa-mixer.c | 2 +-
|
||||
src/modules/alsa/alsa-mixer.h | 2 +-
|
||||
src/modules/alsa/alsa-sink.c | 2 +-
|
||||
src/modules/alsa/alsa-source.c | 2 +-
|
||||
src/modules/alsa/alsa-ucm.c | 2 +-
|
||||
src/modules/alsa/alsa-ucm.h | 2 +-
|
||||
src/modules/alsa/alsa-util.c | 2 +-
|
||||
src/modules/alsa/alsa-util.h | 2 +-
|
||||
src/modules/alsa/module-alsa-source.c | 2 +-
|
||||
10 files changed, 10 insertions(+), 10 deletions(-)
|
||||
|
||||
--- a/src/modules/alsa/alsa-mixer.c
|
||||
+++ b/src/modules/alsa/alsa-mixer.c
|
||||
@@ -23,7 +23,7 @@
|
||||
#endif
|
||||
|
||||
#include <sys/types.h>
|
||||
-#include <asoundlib.h>
|
||||
+#include <alsa/asoundlib.h>
|
||||
#include <math.h>
|
||||
|
||||
#ifdef HAVE_VALGRIND_MEMCHECK_H
|
||||
--- a/src/modules/alsa/alsa-mixer.h
|
||||
+++ b/src/modules/alsa/alsa-mixer.h
|
||||
@@ -21,7 +21,7 @@
|
||||
along with PulseAudio; if not, see <http://www.gnu.org/licenses/>.
|
||||
***/
|
||||
|
||||
-#include <asoundlib.h>
|
||||
+#include <alsa/asoundlib.h>
|
||||
|
||||
#include <pulse/sample.h>
|
||||
#include <pulse/mainloop-api.h>
|
||||
--- a/src/modules/alsa/alsa-sink.c
|
||||
+++ b/src/modules/alsa/alsa-sink.c
|
||||
@@ -25,7 +25,7 @@
|
||||
#include <signal.h>
|
||||
#include <stdio.h>
|
||||
|
||||
-#include <asoundlib.h>
|
||||
+#include <alsa/asoundlib.h>
|
||||
|
||||
#ifdef HAVE_VALGRIND_MEMCHECK_H
|
||||
#include <valgrind/memcheck.h>
|
||||
--- a/src/modules/alsa/alsa-source.c
|
||||
+++ b/src/modules/alsa/alsa-source.c
|
||||
@@ -25,7 +25,7 @@
|
||||
#include <signal.h>
|
||||
#include <stdio.h>
|
||||
|
||||
-#include <asoundlib.h>
|
||||
+#include <alsa/asoundlib.h>
|
||||
|
||||
#include <pulse/rtclock.h>
|
||||
#include <pulse/timeval.h>
|
||||
--- a/src/modules/alsa/alsa-ucm.c
|
||||
+++ b/src/modules/alsa/alsa-ucm.c
|
||||
@@ -27,7 +27,7 @@
|
||||
#include <ctype.h>
|
||||
#include <sys/types.h>
|
||||
#include <limits.h>
|
||||
-#include <asoundlib.h>
|
||||
+#include <alsa/asoundlib.h>
|
||||
|
||||
#ifdef HAVE_VALGRIND_MEMCHECK_H
|
||||
#include <valgrind/memcheck.h>
|
||||
--- a/src/modules/alsa/alsa-util.c
|
||||
+++ b/src/modules/alsa/alsa-util.c
|
||||
@@ -23,7 +23,7 @@
|
||||
#endif
|
||||
|
||||
#include <sys/types.h>
|
||||
-#include <asoundlib.h>
|
||||
+#include <alsa/asoundlib.h>
|
||||
|
||||
#include <pulse/sample.h>
|
||||
#include <pulse/xmalloc.h>
|
||||
--- a/src/modules/alsa/alsa-util.h
|
||||
+++ b/src/modules/alsa/alsa-util.h
|
||||
@@ -21,7 +21,7 @@
|
||||
along with PulseAudio; if not, see <http://www.gnu.org/licenses/>.
|
||||
***/
|
||||
|
||||
-#include <asoundlib.h>
|
||||
+#include <alsa/asoundlib.h>
|
||||
|
||||
#include <pulse/sample.h>
|
||||
#include <pulse/channelmap.h>
|
||||
--- a/src/modules/alsa/module-alsa-source.c
|
||||
+++ b/src/modules/alsa/module-alsa-source.c
|
||||
@@ -24,7 +24,7 @@
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
-#include <asoundlib.h>
|
||||
+#include <alsa/asoundlib.h>
|
||||
|
||||
#ifdef HAVE_VALGRIND_MEMCHECK_H
|
||||
#include <valgrind/memcheck.h>
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -833,7 +833,7 @@ AS_IF([test "x$enable_alsa" = "xyes" &&
|
||||
AS_IF([test "x$HAVE_ALSA" = "x1"],
|
||||
[
|
||||
save_CPPFLAGS="$CPPFLAGS"; CPPFLAGS="$CPPFLAGS $ASOUNDLIB_CFLAGS"
|
||||
- AC_CHECK_HEADERS([use-case.h], HAVE_ALSA_UCM=1, HAVE_ALSA_UCM=0)
|
||||
+ AC_CHECK_HEADERS([alsa/use-case.h], HAVE_ALSA_UCM=1, HAVE_ALSA_UCM=0)
|
||||
CPPFLAGS="$save_CPPFLAGS"
|
||||
],
|
||||
HAVE_ALSA_UCM=0)
|
||||
--- a/src/modules/alsa/alsa-ucm.h
|
||||
+++ b/src/modules/alsa/alsa-ucm.h
|
||||
@@ -23,7 +23,7 @@
|
||||
***/
|
||||
|
||||
#ifdef HAVE_ALSA_UCM
|
||||
-#include <use-case.h>
|
||||
+#include <alsa/use-case.h>
|
||||
#else
|
||||
typedef void snd_use_case_mgr_t;
|
||||
#endif
|
@ -1,3 +1,25 @@
|
||||
-------------------------------------------------------------------
|
||||
Tue Aug 6 20:18:24 UTC 2019 - Ondrej Holecek <oholecek@suse.com>
|
||||
|
||||
- Update to 13 RC2 (12.99.2)
|
||||
* Added support for Dolby TrueHD and DTS-HD Master Audio
|
||||
* Improved initial card profile selection for ALSA cards
|
||||
* Bluetooth card profile choices aren't persistent any more by default
|
||||
* Added support for SteelSeries Arctis 5 USB headset
|
||||
* New "max_latency_msec" module argument for module-loopback
|
||||
* New "stream_name" module argument for module-rtp-send
|
||||
* Fixed S/PDIF for CMEDIA USB2.0 High-Speed True HD Audio
|
||||
* Use source sample spec and channel map by default in module-loopback
|
||||
* New "avoid_resampling" module argument for module-udev-detect and module-alsa-card
|
||||
* New function to enable realtime scheduling for client threads
|
||||
* Removed BlueZ 4 support
|
||||
* Dropped intltool
|
||||
* Some initial work on a Meson build system
|
||||
* https://www.freedesktop.org/wiki/Software/PulseAudio/Notes/13.0/
|
||||
- Removed patches already included in the source:
|
||||
pulseaudio-alsa.patch
|
||||
pa-set-exit-idle-time-to-0-when-we-detect-a-session.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jul 11 17:50:21 UTC 2019 - Antoine Belvire <antoine.belvire@opensuse.org>
|
||||
|
||||
|
@ -21,12 +21,12 @@
|
||||
%define _fillupdir /var/adm/fillup-templates
|
||||
%endif
|
||||
|
||||
%define drvver 12.2
|
||||
%define drvver 12.99
|
||||
%define soname 0
|
||||
%define _udevrulesdir %(pkg-config --variable=udevdir udev)/rules.d
|
||||
%define _bashcompletionsdir %{_datadir}/bash-completion/completions
|
||||
Name: pulseaudio
|
||||
Version: 12.2
|
||||
Version: 12.99.2
|
||||
Release: 0
|
||||
Summary: A Networked Sound Server
|
||||
License: GPL-2.0-or-later AND LGPL-2.1-or-later
|
||||
@ -45,8 +45,6 @@ Source99: baselibs.conf
|
||||
Patch0: disabled-start.diff
|
||||
Patch1: suppress-socket-error-msg.diff
|
||||
Patch2: pulseaudio-wrong-memset.patch
|
||||
Patch3: pulseaudio-alsa.patch
|
||||
Patch4: pa-set-exit-idle-time-to-0-when-we-detect-a-session.patch
|
||||
# PATCH-FIX-OPENSUSE qpaeq-shebang.patch Avoid rpmlint error due to using env python shebang
|
||||
Patch5: qpaeq-shebang.patch
|
||||
BuildRequires: alsa-devel >= 1.0.19
|
||||
@ -55,7 +53,6 @@ BuildRequires: doxygen
|
||||
BuildRequires: fdupes
|
||||
BuildRequires: fftw3-devel >= 3.0
|
||||
BuildRequires: gcc-c++
|
||||
BuildRequires: intltool
|
||||
BuildRequires: jack-devel
|
||||
BuildRequires: libatomic_ops-devel >= 1.2
|
||||
BuildRequires: libavahi-devel
|
||||
@ -88,6 +85,7 @@ BuildRequires: pkgconfig(x11)
|
||||
BuildRequires: pkgconfig(x11-xcb)
|
||||
BuildRequires: pkgconfig(xcb)
|
||||
BuildRequires: pkgconfig(xtst)
|
||||
|
||||
Requires: rtkit
|
||||
Requires: udev >= 146
|
||||
## needs the same liborc version which was used to build against
|
||||
@ -339,8 +337,6 @@ Optional dependency offering zsh completion for various PulseAudio utilities
|
||||
%patch0
|
||||
%patch1 -p1
|
||||
%patch2
|
||||
%patch3 -p1
|
||||
%patch4 -p1
|
||||
%patch5
|
||||
|
||||
%build
|
||||
|
Loading…
x
Reference in New Issue
Block a user