summaryrefslogtreecommitdiffstats
path: root/meta-audio-4a-framework/recipes-multimedia
diff options
context:
space:
mode:
Diffstat (limited to 'meta-audio-4a-framework/recipes-multimedia')
-rw-r--r--meta-audio-4a-framework/recipes-multimedia/pulseaudio/files/default.pa.4a88
-rw-r--r--meta-audio-4a-framework/recipes-multimedia/pulseaudio/pulseaudio-module-4a-client_git.bb20
2 files changed, 86 insertions, 22 deletions
diff --git a/meta-audio-4a-framework/recipes-multimedia/pulseaudio/files/default.pa.4a b/meta-audio-4a-framework/recipes-multimedia/pulseaudio/files/default.pa.4a
index 0afab22b..0efdacc2 100644
--- a/meta-audio-4a-framework/recipes-multimedia/pulseaudio/files/default.pa.4a
+++ b/meta-audio-4a-framework/recipes-multimedia/pulseaudio/files/default.pa.4a
@@ -1,33 +1,77 @@
#!/usr/bin/pulseaudio -nF
#
+# This file is part of PulseAudio.
+#
+# PulseAudio is free software; you can redistribute it and/or modify it
+# under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# PulseAudio is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with PulseAudio; if not, see <http://www.gnu.org/licenses/>.
+
+# This startup script is used only if PulseAudio is started per-user
+# (i.e. not in system mode)
.fail
-### Automatically load driver modules for Bluetooth hardware
-.ifexists module-bluetooth-policy.so
-load-module module-bluetooth-policy
+### Automatically augment property information from .desktop files
+### stored in /usr/share/application
+load-module module-augment-properties
+
+### Load several protocols
+.ifexists module-esound-protocol-unix.so
+load-module module-esound-protocol-unix
.endif
+load-module module-native-protocol-unix
+
+### Network access (may be configured with paprefs, so leave this commented
+### here if you plan to use paprefs)
+#load-module module-esound-protocol-tcp
+#load-module module-native-protocol-tcp
+
+### Load the RTP receiver module (also configured via paprefs, see above)
+#load-module module-rtp-recv
-.ifexists module-bluetooth-discover.so
-load-module module-bluetooth-discover headset=ofono
+### Load the RTP sender module (also configured via paprefs, see above)
+#load-module module-null-sink sink_name=rtp format=s16be channels=2 rate=44100 sink_properties="device.description='RTP Multicast Sink'"
+#load-module module-rtp-send source=rtp.monitor
+
+.ifexists module-4a-client.so
+load-module module-null-sink sink_name=aaaa_null_sink sink_properties="device.description='4A Null Output'"
+set-default-sink aaaa_null_sink
+load-module module-4a-client
+.else
+load-module module-udev-detect
.endif
-load-module module-native-protocol-unix
+### Automatically move streams to the default sink if the sink they are
+### connected to dies, similar for sources
+load-module module-rescue-streams
+
+### Make sure we always have a sink around, even if it is a null sink.
+load-module module-always-sink
### Automatically suspend sinks/sources that become idle for too long
-load-module module-suspend-on-idle timeout=0
-
-load-module module-alsa-sink device=Fallback
-#load-module module-alsa-sink device=CustomLow
-load-module module-alsa-sink device=Radio
-#load-module module-alsa-sink device=Multimedia
-#load-module module-alsa-sink device=Streaming
-load-module module-alsa-sink device=Video
-#load-module module-alsa-sink device=CustomMedium
-load-module module-alsa-sink device=Navigation
-load-module module-alsa-sink device=Phone
-#load-module module-alsa-sink device=CustomHigh
-#load-module module-alsa-sink device=Warning
-load-module module-alsa-sink device=Emergency
-
-set-default-sink alsa_output.Fallback
+load-module module-suspend-on-idle
+
+### If autoexit on idle is enabled we want to make sure we only quit
+### when no local session needs us anymore.
+.ifexists module-console-kit.so
+load-module module-console-kit
+.endif
+.ifexists module-systemd-login.so
+load-module module-systemd-login
+.endif
+
+### Modules to allow autoloading of filters (such as echo cancellation)
+### on demand. module-filter-heuristics tries to determine what filters
+### make sense, and module-filter-apply does the heavy-lifting of
+### loading modules and rerouting streams.
+load-module module-filter-heuristics
+load-module module-filter-apply
diff --git a/meta-audio-4a-framework/recipes-multimedia/pulseaudio/pulseaudio-module-4a-client_git.bb b/meta-audio-4a-framework/recipes-multimedia/pulseaudio/pulseaudio-module-4a-client_git.bb
new file mode 100644
index 00000000..0a763d88
--- /dev/null
+++ b/meta-audio-4a-framework/recipes-multimedia/pulseaudio/pulseaudio-module-4a-client_git.bb
@@ -0,0 +1,20 @@
+SUMMARY = "pulseaudio 4A client module"
+DESCRIPTION = "pulseaudio module to work with 4A (AGL Advanced Audio Agent)"
+HOMEPAGE = "https://gitlab.collabora.com/gkiagia/pulseaudio-module-4a"
+SECTION = "plugins"
+
+LICENSE = "LGPL-2.1+"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=4fbd65380cdd255951079008b364516c"
+
+SRC_URI = "git://gitlab.collabora.com/gkiagia/pulseaudio-module-4a.git;protocol=https"
+SRCREV = "897f554324bbb031d6a482584b227f8400d2c624"
+
+PV = "0.1+git${SRCPV}"
+S = "${WORKDIR}/git"
+
+inherit cmake pkgconfig
+
+DEPENDS += "af-binder systemd json-c pulseaudio"
+RDEPENDS_${PN} = "pulseaudio-module-alsa-sink"
+
+FILES_${PN} += "/usr/lib/pulse-*/modules/module-4a-client.so"