Группа :: Звук
Пакет: bluez-alsa
Главная Изменения Спек Патчи Sources Загрузить Gear Bugs and FR Repocop
Патч: bluez-alsa-4.1.1-alt1.patch
Скачать
Скачать
.gear/bluez-alsa-4.0.0-alt-libfreeaptx.patch | 180 ++++++++++++++++++
.gear/bluez-alsa.spec | 202 +++++++++++++++++++++
.gear/rules | 4 +
.../tags/3e0844d2bc07fc22d5126f388612c1725690d909 | 6 +
.../tags/78c8fc4020d7e4e1ad9bbf6afefe3d93b2fca24b | 6 +
.../tags/bcae620796786ce2989f1654456f21cbea6e2fe3 | 6 +
.gear/tags/list | 3 +
7 files changed, 407 insertions(+)
diff --git a/.gear/bluez-alsa-4.0.0-alt-libfreeaptx.patch b/.gear/bluez-alsa-4.0.0-alt-libfreeaptx.patch
new file mode 100644
index 0000000..2fa7b66
--- /dev/null
+++ b/.gear/bluez-alsa-4.0.0-alt-libfreeaptx.patch
@@ -0,0 +1,180 @@
+diff --git a/configure.ac b/configure.ac
+index 92dc5ee..0350661 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -103,18 +103,20 @@ AM_COND_IF([ENABLE_AAC], [
+ AC_DEFINE([ENABLE_AAC], [1], [Define to 1 if AAC is enabled.])
+ ])
+
+-AC_ARG_WITH([libopenaptx],
+- [AS_HELP_STRING([--with-libopenaptx], [use libopenaptx by pali.rohar for apt-X (HD)])])
+-AM_CONDITIONAL([WITH_LIBOPENAPTX], [test "x$with_libopenaptx" = "xyes"])
++AC_ARG_WITH([libfreeaptx],
++ [AS_HELP_STRING([--with-libfreeaptx], [use libfreeaptx by iamthehorker for apt-X (HD)])])
++AM_CONDITIONAL([WITH_LIBFREEAPTX], [test "x$with_libfreeaptx" = "xyes"])
++AM_COND_IF([WITH_LIBFREEAPTX], [
++ PKG_CHECK_MODULES([APTX], [libfreeaptx >= 0.1.1])
++ AC_DEFINE([WITH_LIBFREEAPTX], [1], [Define to 1 if libfreeaptx shall be used.])
++])
+
+ AC_ARG_ENABLE([aptx],
+ [AS_HELP_STRING([--enable-aptx], [enable apt-X support])])
+ AM_CONDITIONAL([ENABLE_APTX], [test "x$enable_aptx" = "xyes"])
+ AM_COND_IF([ENABLE_APTX], [
+- AM_COND_IF([WITH_LIBOPENAPTX], [
+- PKG_CHECK_MODULES([APTX], [libopenaptx >= 0.2.0])
++ AM_COND_IF([WITH_LIBFREEAPTX], [
+ AC_DEFINE([HAVE_APTX_DECODE], [1], [Define to 1 if you have apt-X decode library.])
+- AC_DEFINE([WITH_LIBOPENAPTX], [1], [Define to 1 if libopenaptx shall be used.])
+ ], [
+ PKG_CHECK_MODULES([APTX], [openaptx >= 1.2.0])
+ if test "$($PKG_CONFIG --variable=aptxdecoder openaptx)" = "true"; then
+@@ -128,10 +130,8 @@ AC_ARG_ENABLE([aptx_hd],
+ [AS_HELP_STRING([--enable-aptx-hd], [enable apt-X HD support])])
+ AM_CONDITIONAL([ENABLE_APTX_HD], [test "x$enable_aptx_hd" = "xyes"])
+ AM_COND_IF([ENABLE_APTX_HD], [
+- AM_COND_IF([WITH_LIBOPENAPTX], [
+- PKG_CHECK_MODULES([APTX_HD], [libopenaptx >= 0.2.0])
++ AM_COND_IF([WITH_LIBFREEAPTX], [
+ AC_DEFINE([HAVE_APTX_HD_DECODE], [1], [Define to 1 if you have apt-X HD decode library.])
+- AC_DEFINE([WITH_LIBOPENAPTX], [1], [Define to 1 if libopenaptx shall be used.])
+ ], [
+ PKG_CHECK_MODULES([APTX_HD], [openaptxhd >= 1.2.0])
+ if test "$($PKG_CONFIG --variable=aptxdecoder openaptxhd)" = "true"; then
+@@ -359,12 +359,12 @@ AM_COND_IF([ALSA_1_1_2__1_1_3], [
+ AC_MSG_WARN([LIBASOUND_THREAD_SAFE=0 while using bluealsa PCM.])
+ ])
+
+-# notify user that using libopenaptx might be a good idea
++# notify user that using libfreeaptx might be a good idea
+ AM_COND_IF([ENABLE_APTX_OR_APTX_HD], [
+-AM_COND_IF([WITH_LIBOPENAPTX], [], [
++AM_COND_IF([WITH_LIBFREEAPTX], [], [
+ AC_MSG_NOTICE([ *** using apt-X (HD) via Qualcomm API ***])
+ AC_MSG_NOTICE([Enabled apt-X (HD) support requires encoder (and decoder)])
+ AC_MSG_NOTICE([library with a proprietary Qualcomm API. Please consider])
+- AC_MSG_NOTICE([using --with-libopenaptx option which will use a library])
++ AC_MSG_NOTICE([using --with-libfreeaptx option which will use a library])
+ AC_MSG_NOTICE([based on FFmpeg project with better decoding support.])
+ ])])
+diff --git a/src/codec-aptx.c b/src/codec-aptx.c
+index 2e256e4..a3ecbb7 100644
+--- a/src/codec-aptx.c
++++ b/src/codec-aptx.c
+@@ -16,7 +16,7 @@
+ #include <stdint.h>
+ #include <stdlib.h>
+
+-#include <openaptx.h>
++#include <freeaptx.h>
+
+ #include "shared/defs.h"
+ #include "shared/log.h"
+@@ -28,7 +28,7 @@
+ * @returns On success, this function returns initialized apt-X encoder
+ * handler. On error, NULL is returned. */
+ HANDLE_APTX aptxenc_init(void) {
+-#if WITH_LIBOPENAPTX
++#if WITH_LIBFREEAPTX
+ return aptx_init(0);
+ #else
+ APTXENC handle;
+@@ -49,7 +49,7 @@ HANDLE_APTX aptxenc_init(void) {
+ * @returns On success, this function returns initialized apt-X decoder
+ * handler. On error, NULL is returned. */
+ HANDLE_APTX aptxdec_init(void) {
+-#if WITH_LIBOPENAPTX
++#if WITH_LIBFREEAPTX
+ return aptx_init(0);
+ #else
+ APTXDEC handle;
+@@ -70,7 +70,7 @@ HANDLE_APTX aptxdec_init(void) {
+ * @returns On success, this function returns initialized apt-X encoder
+ * handler. On error, NULL is returned. */
+ HANDLE_APTX aptxhdenc_init(void) {
+-#if WITH_LIBOPENAPTX
++#if WITH_LIBFREEAPTX
+ return aptx_init(1);
+ #else
+ APTXENC handle;
+@@ -91,7 +91,7 @@ HANDLE_APTX aptxhdenc_init(void) {
+ * @returns On success, this function returns initialized apt-X decoder
+ * handler. On error, NULL is returned. */
+ HANDLE_APTX aptxhddec_init(void) {
+-#if WITH_LIBOPENAPTX
++#if WITH_LIBFREEAPTX
+ return aptx_init(1);
+ #else
+ APTXDEC handle;
+@@ -117,7 +117,7 @@ ssize_t aptxenc_encode(HANDLE_APTX handle, const int16_t *input, size_t samples,
+ if (samples < 8 || *len < 4)
+ return errno = EINVAL, -1;
+
+-#if WITH_LIBOPENAPTX
++#if WITH_LIBFREEAPTX
+
+ const uint8_t pcm[3 /* 24bit */ * 8 /* 4 samples * 2 channels */] = {
+ 0, input[0], input[0] >> 8, 0, input[1], input[1] >> 8,
+@@ -159,7 +159,7 @@ ssize_t aptxdec_decode(HANDLE_APTX handle, const void *input, size_t len,
+ if (len < 4 || *samples < 8)
+ return errno = EINVAL, -1;
+
+-#if WITH_LIBOPENAPTX
++#if WITH_LIBFREEAPTX
+
+ uint8_t pcm[3 /* 24bit */ * 8 /* 4 samples * 2 channels */ * 2];
+ size_t written, dropped;
+@@ -212,7 +212,7 @@ ssize_t aptxhdenc_encode(HANDLE_APTX handle, const int32_t *input, size_t sample
+ if (samples < 8 || *len < 6)
+ return errno = EINVAL, -1;
+
+-#if WITH_LIBOPENAPTX
++#if WITH_LIBFREEAPTX
+
+ const uint8_t pcm[3 /* 24bit */ * 8 /* 4 samples * 2 channels */] = {
+ input[0], input[0] >> 8, input[0] >> 16, input[1], input[1] >> 8, input[1] >> 16,
+@@ -262,7 +262,7 @@ ssize_t aptxhddec_decode(HANDLE_APTX handle, const void *input, size_t len,
+ if (len < 6 || *samples < 8)
+ return errno = EINVAL, -1;
+
+-#if WITH_LIBOPENAPTX
++#if WITH_LIBFREEAPTX
+
+ uint8_t pcm[3 /* 24bit */ * 8 /* 4 samples * 2 channels */ * 2];
+ size_t written, dropped;
+@@ -316,7 +316,7 @@ ssize_t aptxhddec_decode(HANDLE_APTX handle, const void *input, size_t len,
+ *
+ * @param handle Initialized encoder handler. */
+ void aptxenc_destroy(HANDLE_APTX handle) {
+-#if WITH_LIBOPENAPTX
++#if WITH_LIBFREEAPTX
+ aptx_finish(handle);
+ #else
+ if (aptxbtenc_destroy != NULL)
+@@ -332,7 +332,7 @@ void aptxenc_destroy(HANDLE_APTX handle) {
+ *
+ * @param handle Initialized decoder handler. */
+ void aptxdec_destroy(HANDLE_APTX handle) {
+-#if WITH_LIBOPENAPTX
++#if WITH_LIBFREEAPTX
+ aptx_finish(handle);
+ #else
+ aptxbtdec_destroy(handle);
+@@ -347,7 +347,7 @@ void aptxdec_destroy(HANDLE_APTX handle) {
+ *
+ * @param handle Initialized encoder handler. */
+ void aptxhdenc_destroy(HANDLE_APTX handle) {
+-#if WITH_LIBOPENAPTX
++#if WITH_LIBFREEAPTX
+ aptx_finish(handle);
+ #else
+ if (aptxhdbtenc_destroy != NULL)
+@@ -363,7 +363,7 @@ void aptxhdenc_destroy(HANDLE_APTX handle) {
+ *
+ * @param handle Initialized decoder handler. */
+ void aptxhddec_destroy(HANDLE_APTX handle) {
+-#if WITH_LIBOPENAPTX
++#if WITH_LIBFREEAPTX
+ aptx_finish(handle);
+ #else
+ aptxhdbtdec_destroy(handle);
diff --git a/.gear/bluez-alsa.spec b/.gear/bluez-alsa.spec
new file mode 100644
index 0000000..0203c6e
--- /dev/null
+++ b/.gear/bluez-alsa.spec
@@ -0,0 +1,202 @@
+%define git %nil
+%define b_user bluealsa
+
+%def_enable aptx
+%def_enable aac
+%def_enable ldac
+%def_enable mpg123
+%def_enable mp3lame
+%def_disable lc3plus
+%def_disable debug
+# FIXME! needs running dbus-daemon
+%def_disable test
+%def_enable cli
+
+Name: bluez-alsa
+Version: 4.1.1
+Release: alt1
+Epoch: 5
+Summary: BlueZ ALSA backend for Linux
+License: MIT
+Group: Sound
+URL: https://github.com/Arkq/bluez-alsa
+
+Packager: L.A. Kostis <lakostis@altlinux.ru>
+
+Source: %name-%version.tar
+
+Patch0: %name-%version-%release.patch
+Patch1: %name-4.0.0-alt-libfreeaptx.patch
+
+Provides: alsa-plugins-bluealsa = %EVR, bluealsa = %EVR
+
+BuildRequires: systemd-devel libdbus-glib-devel, libbluez-devel, libalsa-devel, libsbc-devel libgio-devel python3-module-docutils
+# Packet loss concealment for HFP with mSBC codec
+BuildRequires: libspandsp3-devel
+# Helper library for dumping incoming BT data
+BuildRequires: libsndfile-devel
+# bash-completion
+BuildRequires: bash-completion
+%{?_enable_aptx:BuildRequires: libfreeaptx-devel}
+%{?_enable_aac:BuildRequires: libfdk-aac-devel}
+%{?_enable_ldac:BuildRequires: libldac-devel}
+%{?_enable_mpg123:BuildRequires: libmpg123-devel}
+%{?_enable_mp3lame:BuildRequires: liblame-devel}
+%{?_enable_test:BuildRequires: libcheck-devel}
+%{?_enable_l3plus:BuildRequires: libl3plus-devel}
+%{?_enable_cli:BuildRequires: libreadline-devel}
+# for hcitop
+BuildRequires: libbsd-devel libncurses-devel
+
+%description
+This project is a rebirth of a direct integration between Bluez and ALSA.
+
+With this application (later named as BlueALSA), one can achieve the same goal
+as with PulseAudio, but with less dependencies and more bare-metal-like.
+BlueALSA registers all known Bluetooth audio profiles in Bluez, so in theory
+every Bluetooth device (with audio capabilities) can be connected. In order to
+access the audio stream, one has to connect to the ALSA PCM device called
+bluealsa. The device is based on the ALSA software PCM plugin.
+
+%package -n bash-completion-%name
+Summary: Bash completion for %name
+Group: Shells
+BuildArch: noarch
+Requires: bash-completion
+Requires: %name = %version-%release
+
+%description -n bash-completion-%name
+Bash completion for %name.
+
+%package -n hcitop
+Summary: a simple dynamic view of HCI activity
+Group: System/Configuration/Other
+
+%description -n hcitop
+hcitop provides a dynamic real-time view of activity statistics for each
+HCI interface. The view is refreshed at regular intervals, and also on demand
+by pressing a key. To quit the program press the 'q' key, or use Ctrl-C.
+
+%prep
+%setup -q
+%autopatch -p1
+
+%build
+%autoreconf
+%configure \
+ %{subst_enable aac} \
+ %{subst_enable ldac} \
+ %{subst_enable mpg123} \
+ %{subst_enable mp3lame} \
+ %{subst_enable l3plus} \
+ %{subst_enable debug} \
+ %{subst_enable test} \
+ %{subst_enable cli} \
+ %{?_enable_aptx:--with-libfreeaptx --enable-aptx --enable-aptx-hd} \
+ --with-alsaconfdir=%_datadir/alsa/alsa.conf.d \
+ --with-bash-completion \
+ --with-bluealsauser=%b_user \
+ --with-bluealsaaplayuser=%b_user \
+ --enable-systemd \
+ --enable-upower \
+ --enable-ofono \
+ --enable-a2dpconf \
+ --disable-static \
+ --enable-manpages \
+ --enable-msbc \
+ --enable-faststream \
+ --enable-rfcomm \
+ --enable-hcitop \
+ --localstatedir=/var
+
+%install
+%make DESTDIR=%buildroot install
+install -m0700 -d %buildroot%_localstatedir/%b_user
+
+%if_enabled test
+%check
+%make check
+%endif
+
+%pre
+/usr/sbin/useradd -r -n -g audio -M -s /dev/null -c %b_user %b_user >/dev/null 2>&1 ||:
+
+%files
+%doc README.md NEWS LICENSE AUTHORS
+%_bindir/*
+%exclude %_bindir/hcitop
+%_libdir/alsa-lib/*.so
+%_datadir/alsa/alsa.conf.d/*.conf
+%_sysconfdir/dbus-1/system.d/*.conf
+%_unitdir/*.service
+%_man1dir/*
+%exclude %_man1dir/hcitop.1*
+%_man7dir/*
+%_man8dir/*
+%dir %attr(0700,%b_user,root) %_localstatedir/%b_user
+
+%files -n hcitop
+%_bindir/hcitop
+%_man1dir/hcitop.1*
+
+%files -n bash-completion-%name
+%_datadir/bash-completion/completions/*
+
+%changelog
+* Sat Jul 01 2023 L.A. Kostis <lakostis@altlinux.ru> 5:4.1.1-alt1
+- 4.1.1.
+
+* Fri May 26 2023 L.A. Kostis <lakostis@altlinux.ru> 5:4.1.0-alt1
+- 4.1.0.
+
+* Sat Jan 07 2023 L.A. Kostis <lakostis@altlinux.ru> 5:4.0.0-alt0.3.g871a208
+- GIT 871a208.
+
+* Wed Dec 14 2022 L.A. Kostis <lakostis@altlinux.ru> 5:4.0.0-alt0.3.g204c224
+- GIT 204c224.
+
+* Mon Nov 28 2022 L.A. Kostis <lakostis@altlinux.ru> 5:4.0.0-alt0.2
+- Enable hcitop.
+
+* Sun Nov 27 2022 L.A. Kostis <lakostis@altlinux.ru> 5:4.0.0-alt0.1
+- 4.0.0.
+- Enable -cli/-rfcomm utils.
+- Enable faststream support.
+- Enable bash-completion.
+
+* Fri Sep 03 2021 L.A. Kostis <lakostis@altlinux.ru> 5:3.1.0-alt2.gaac8742
+- GIT aac8742.
+- Switch to libfreeaptx.
+- Disable debug flags.
+- Disable static libraries.
+- Enable manpages.
+
+* Mon Jun 14 2021 L.A. Kostis <lakostis@altlinux.ru> 5:3.1.0-alt1.g06dc8dd
+- GIT 06dc8dd.
+- use libopenaptx.
+
+* Thu Jan 07 2021 L.A. Kostis <lakostis@altlinux.ru> 5:3.0.0-alt2.g76929fd
+- GIT 76929fd.
+- Update buildrequires.
+
+* Thu Dec 10 2020 L.A. Kostis <lakostis@altlinux.ru> 5:3.0.0-alt1.gbb39d41
+- GIT bb39d41.
+
+* Sat Mar 21 2020 L.A. Kostis <lakostis@altlinux.ru> 5:2.1.0-alt1
+- 2.1.0.
+- Enable upower (to expose battery change percentage).
+
+* Wed Sep 18 2019 L.A. Kostis <lakostis@altlinux.ru> 5:1.4.0-alt0.5
+- Added DBUS/systemd support.
+
+* Tue Sep 17 2019 L.A. Kostis <lakostis@altlinux.ru> 5:1.4.0-alt0.4
+- Added serial to fix collision with old bluez-4.x package.
+
+* Tue Sep 17 2019 L.A. Kostis <lakostis@altlinux.ru> 1.4.0-alt0.3
+- Added tests (can be only passed locally).
+
+* Mon Sep 16 2019 L.A. Kostis <lakostis@altlinux.ru> 1.4.0-alt0.2
+- Added debug switch.
+
+* Mon Sep 16 2019 L.A. Kostis <lakostis@altlinux.ru> 1.4.0-alt0.1
+- Initial build for ALTLinux.
diff --git a/.gear/rules b/.gear/rules
new file mode 100644
index 0000000..fa5f110
--- /dev/null
+++ b/.gear/rules
@@ -0,0 +1,4 @@
+tar: v@version@:.
+diff: v@version@:. .
+copy?: .gear/*.patch
+spec: .gear/bluez-alsa.spec
diff --git a/.gear/tags/3e0844d2bc07fc22d5126f388612c1725690d909 b/.gear/tags/3e0844d2bc07fc22d5126f388612c1725690d909
new file mode 100644
index 0000000..4a62b8c
--- /dev/null
+++ b/.gear/tags/3e0844d2bc07fc22d5126f388612c1725690d909
@@ -0,0 +1,6 @@
+object f7e6ee596917deb1a3fd2715398cff19203f30af
+type commit
+tag v4.1.1
+tagger Arkadiusz Bokowy <arkadiusz.bokowy@gmail.com> 1687637051 +0200
+
+Release 4.1.1
diff --git a/.gear/tags/78c8fc4020d7e4e1ad9bbf6afefe3d93b2fca24b b/.gear/tags/78c8fc4020d7e4e1ad9bbf6afefe3d93b2fca24b
new file mode 100644
index 0000000..0b6ef4e
--- /dev/null
+++ b/.gear/tags/78c8fc4020d7e4e1ad9bbf6afefe3d93b2fca24b
@@ -0,0 +1,6 @@
+object dd05a1baa261b94da9ba977b5e3392c8b4dc7a5e
+type commit
+tag v4.0.0
+tagger Arkadiusz Bokowy <arkadiusz.bokowy@gmail.com> 1654281708 +0200
+
+Release 4.0.0
diff --git a/.gear/tags/bcae620796786ce2989f1654456f21cbea6e2fe3 b/.gear/tags/bcae620796786ce2989f1654456f21cbea6e2fe3
new file mode 100644
index 0000000..0f310da
--- /dev/null
+++ b/.gear/tags/bcae620796786ce2989f1654456f21cbea6e2fe3
@@ -0,0 +1,6 @@
+object 165e15bce4f9c8dd6238ee8d105ab9fa857c63a1
+type commit
+tag v4.1.0
+tagger Arkadiusz Bokowy <arkadiusz.bokowy@gmail.com> 1684875249 +0200
+
+Release 4.1.0
diff --git a/.gear/tags/list b/.gear/tags/list
new file mode 100644
index 0000000..7c13263
--- /dev/null
+++ b/.gear/tags/list
@@ -0,0 +1,3 @@
+78c8fc4020d7e4e1ad9bbf6afefe3d93b2fca24b v4.0.0
+bcae620796786ce2989f1654456f21cbea6e2fe3 v4.1.0
+3e0844d2bc07fc22d5126f388612c1725690d909 v4.1.1