portaudio: try sndio as first audio device, adopt.

The changes to sndio.patch were:

- Put the sndio backend as the first one that PortAudio tries to
connect;
- Add return for cases when sndio isn't available so PortAudio can
fallback to other systems.
This commit is contained in:
Érico Rolim 2020-07-25 22:50:30 -03:00 committed by John Zimmermann
parent 0d22e42f09
commit 438a48f6ab
2 changed files with 19 additions and 13 deletions

View file

@ -20,7 +20,7 @@ index 5e1a764..2747f73 100644
src/hostapi/wdmks \ src/hostapi/wdmks \
src/hostapi/wmme \ src/hostapi/wmme \
diff --git configure.in configure.in diff --git configure.in configure.in
index 13816fb..4c06d10 100644 index 83c239a..db11d65 100644
--- configure.in --- configure.in
+++ configure.in +++ configure.in
@@ -24,6 +24,10 @@ AC_ARG_WITH(alsa, @@ -24,6 +24,10 @@ AC_ARG_WITH(alsa,
@ -59,7 +59,7 @@ index 13816fb..4c06d10 100644
if [[ "$have_jack" = "yes" ] && [ "$with_jack" != "no" ]] ; then if [[ "$have_jack" = "yes" ] && [ "$with_jack" != "no" ]] ; then
DLL_LIBS="$DLL_LIBS $JACK_LIBS" DLL_LIBS="$DLL_LIBS $JACK_LIBS"
CFLAGS="$CFLAGS $JACK_CFLAGS" CFLAGS="$CFLAGS $JACK_CFLAGS"
@@ -509,6 +524,7 @@ case "$target_os" in @@ -510,6 +525,7 @@ case "$target_os" in
;; ;;
*) *)
AC_MSG_RESULT([ AC_MSG_RESULT([
@ -68,7 +68,7 @@ index 13816fb..4c06d10 100644
JACK ........................ $have_jack JACK ........................ $have_jack
]) ])
diff --git include/portaudio.h include/portaudio.h diff --git include/portaudio.h include/portaudio.h
index 8a94aaf..f94d9c4 100644 index 9c8a295..e535a02 100644
--- include/portaudio.h --- include/portaudio.h
+++ include/portaudio.h +++ include/portaudio.h
@@ -287,7 +287,8 @@ typedef enum PaHostApiTypeId @@ -287,7 +287,8 @@ typedef enum PaHostApiTypeId
@ -86,7 +86,7 @@ new file mode 100644
index 0000000..725ef47 index 0000000..725ef47
--- /dev/null --- /dev/null
+++ src/hostapi/sndio/pa_sndio.c +++ src/hostapi/sndio/pa_sndio.c
@@ -0,0 +1,765 @@ @@ -0,0 +1,768 @@
+/* +/*
+ * Copyright (c) 2009 Alexandre Ratchov <alex@caoua.org> + * Copyright (c) 2009 Alexandre Ratchov <alex@caoua.org>
+ * + *
@ -775,6 +775,9 @@ index 0000000..725ef47
+ +
+ DPR("PaSndio_Initialize: initializing...\n"); + DPR("PaSndio_Initialize: initializing...\n");
+ +
+ if ((hdl=sio_open(SIO_DEVANY, SIO_PLAY, 1)) == NULL)
+ return paNoError;
+ sio_close(hdl);
+ /* unusable APIs should return paNoError and a NULL hostApi */ + /* unusable APIs should return paNoError and a NULL hostApi */
+ *hostApi = NULL; + *hostApi = NULL;
+ +
@ -853,7 +856,7 @@ index 0000000..725ef47
+ return paNoError; + return paNoError;
+} +}
diff --git src/os/unix/pa_unix_hostapis.c src/os/unix/pa_unix_hostapis.c diff --git src/os/unix/pa_unix_hostapis.c src/os/unix/pa_unix_hostapis.c
index a9b4a05..c3fa2a3 100644 index a9b4a05..f10ced1 100644
--- src/os/unix/pa_unix_hostapis.c --- src/os/unix/pa_unix_hostapis.c
+++ src/os/unix/pa_unix_hostapis.c +++ src/os/unix/pa_unix_hostapis.c
@@ -44,6 +44,7 @@ @@ -44,6 +44,7 @@
@ -864,14 +867,17 @@ index a9b4a05..c3fa2a3 100644
PaError PaOSS_Initialize( PaUtilHostApiRepresentation **hostApi, PaHostApiIndex index ); PaError PaOSS_Initialize( PaUtilHostApiRepresentation **hostApi, PaHostApiIndex index );
/* Added for IRIX, Pieter, oct 2, 2003: */ /* Added for IRIX, Pieter, oct 2, 2003: */
PaError PaSGI_Initialize( PaUtilHostApiRepresentation **hostApi, PaHostApiIndex index ); PaError PaSGI_Initialize( PaUtilHostApiRepresentation **hostApi, PaHostApiIndex index );
@@ -79,6 +80,10 @@ PaUtilHostApiInitializer *paHostApiInitializers[] = @@ -57,6 +58,10 @@ PaError PaSkeleton_Initialize( PaUtilHostApiRepresentation **hostApi, PaHostApiI
#endif /* __linux__ */
PaUtilHostApiInitializer *paHostApiInitializers[] =
{
+#ifdef PA_USE_SNDIO +#ifdef PA_USE_SNDIO
+ PaSndio_Initialize, + PaSndio_Initialize,
+#endif +#endif
+ +
#if PA_USE_JACK #ifdef __linux__
PaJack_Initialize,
#endif #if PA_USE_ALSA
--
2.27.0

View file

@ -1,14 +1,14 @@
# Template file for 'portaudio' # Template file for 'portaudio'
pkgname=portaudio pkgname=portaudio
version=190600.20161030 version=190600.20161030
revision=4 revision=5
wrksrc=portaudio wrksrc=portaudio
build_style=gnu-configure build_style=gnu-configure
configure_args="--enable-cxx --with-jack $(vopt_enable sndio)" configure_args="--enable-cxx --with-jack $(vopt_enable sndio)"
hostmakedepends="automake libtool pkg-config" hostmakedepends="automake libtool pkg-config"
makedepends="alsa-lib-devel jack-devel $(vopt_if sndio sndio-devel)" makedepends="alsa-lib-devel jack-devel $(vopt_if sndio sndio-devel)"
short_desc="Portable cross-platform audio I/O library" short_desc="Portable cross-platform audio I/O library"
maintainer="Orphaned <orphan@voidlinux.org>" maintainer="Érico Nogueira <ericonr@disroot.org>"
license="MIT" license="MIT"
homepage="http://www.portaudio.com" homepage="http://www.portaudio.com"
distfiles="http://www.${pkgname}.com/archives/pa_stable_v${version%.*}_${version#*.}.tgz" distfiles="http://www.${pkgname}.com/archives/pa_stable_v${version%.*}_${version#*.}.tgz"