pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: pkgsrc/audio/pulseaudio



Module Name:    pkgsrc
Committed By:   ryoon
Date:           Sat Jul  2 16:44:39 UTC 2022

Modified Files:
        pkgsrc/audio/pulseaudio: Makefile PLIST buildlink3.mk distinfo
            options.mk
        pkgsrc/audio/pulseaudio/patches: patch-meson.build
            patch-src_pulsecore_iochannel.c

Log Message:
pulseaudio: Update to 16.1

Changelog:
16.1:
The 16.0 release had some regressions, so here comes a bugfix
release to remedy those (along with some other fixes). These are
the changes:

 * Fix parsing of percentage volumes with decimal points in pactl
 * Fix crash with the "pacmd play-file" command when reads from
 the disk aren't frame-aligned

 * Fix module-rtp-recv sometimes thinking it's receiving an Opus
   stream when it's not
 * Fix frequent crashing in module-combine-sink, regression in 16.0
 * Fix crashing on 32-bit architectures when using the GStreamer
   codecs for LDAC and AptX

16.0:
## Notes for end users

Opus support in the RTP modules

The audio sent with module-rtp-send can now be compressed with the
Opus codec. To use it, pass enable_opus=true as a module argument
to module-rtp-send. This feature works only when PulseAudio is
compiled with GStreamer enabled (both sending and receiving end).

Stereo output support for EPOS/Sennheiser GSP 670 USB/wireless
headset and SteelSeries GameDAC

The EPOS/Sennheiser GSP 670 headset has separate mono and stereo
output ALSA devices, but with the default configuration only mono
worked with PulseAudio. Now both outputs work. The support includes
both direct USB connection and the GSA 70 wireless dongle.

The same fix was applied to SteelSeries GameDAC.

Fix input issues for Texas Instruments PCM2902 based sound cards

Texas Instruments PCM2902 is a generic audio chip that is used in
multiple USB sound cards. We had custom configuration for Behringer
UMC22, which turned out to affect multiple sound cards because they
use the same USB ID. The PCM2902 sound cards vary in their
capabilities, while our configuration was tailored only for the
UMC22 card, which caused some trouble with recording on multiple
PCM2902 sound cards. The reported issues have now been fixed.

Native Instruments Komplete Audio 6 MK2 profiles

The Native Instruments Komplete Audio 6 MK2 is similar to the
Komplete Audio 6 and is now supported as well.

Tunnel latency is now configurable

The tunnel sink and source modules used to have a fixed 250 ms
latency. The desired latency can now be configured with the
latency_msec module argument.

Tunnel modules can now reconnect to remote server

A new reconnect_interval_ms argument was added to all four tunnel
sink and source modules. When the argument is specified, the tunnel
module will try automatic re-connection to the remote server if
the connection fails. The argument specifies the time interval in
ms after which a connection attempt is repeated. In particular,
this allows to load tunnel sinks and sources from default.pa which
will become available as soon as the remote server becomes available.
Bluetooth device battery level reporting added

If a bluetooth device supports battery level reporting, PulseAudio
now is able to forward the information to other software. In case
your desktop environment doesn't yet support showing the battery
level in a nice GUI, the level is also available in the device's
card object properties with the bluetooth.battery key. The property
can be read with pactl list cards, for example.

Tunnel and combine-sink latency fixes

The tunnel and combine-sink latency reporting accuracy has been
improved, which should help with audio synchronization issues.

module-loopback improvements

As part of a set of improvements to module-loopback's latency
stability, a new argument, adjust_threshold_usec, was added to
module-loopback to fine-tune the controller algorithm. The default
value is 250 (microseconds), which should be sufficient in most
cases. If it's not enough (caused by inaccurate latency reports
from the sink or source), the loopback's sample rate will oscillate,
while unnecessarily high values will increase variance in the
loopback latency.

Another change is the ability to set the adjust_time argument to
smaller values than 1 second, for example 0.5 sets the adjustment
interval to half a second. The default value was changed from 10
seconds to 1 second to make the latency control tighter.

module-loopback used to log a bunch of status information every
time it adjusted the playback rate. Now that the default adjustment
interval is down from 10 seconds to 1 second, the logging became
a bit too much, and the logging was disabled by default. It can
now be enabled by setting the log_interval module argument. The
value is given in seconds, it doesn't have to be an integer. The
logging still happens at the time the rate adjustment is done, so
if log_interval is less than adjust_time, then the logging will
happen once per adjustment cycle.

Increased flexibility for module-jackdbus-detect

module-jackdbus-detect is used for loading a JACK sink and source
when JACK starts up. The module now has new sink_enabled and
source_enabled arguments that accept boolean values. The new
arguments can be used to disable either the sink or the source if
loading both is not desired.

module-jackdbus-detect can now also be loaded more than once,
allowing multiple JACK sinks or sources with different configurations
to be created.

pactl can show information in JSON format

pactl has a new option --format, which accepts values text and
json. text shows the pactl output in the traditional way, json
shows it in the JSON format for easier interfacing with other
software.  Channel remixing can be disabled for module-combine-sink

module-combine-sink now accepts a boolean remix argument, which
can be used to disable normal remixing. This is useful when combining
multiple sound cards for surround output: if there are 3 stereo
sound cards, you might want to set the channel map of one card to
front-left,front-right, another to rear-left,rear-right and the
third to front-center,lfe. If a combine sink is then created with
a 5.1 surround channel map using these sound cards as slaves, audio
is copied to all these sound cards, but by default the audio is
downmixed to stereo for each card, which doesn't result in proper
s is done, the channels that don't fit the slave channel map are
just dropped, which means that each sound card gets audio only for
the intended channels.

## Notes for application developers

Stream latency reports now include resampler delay

Sink input and s, respectively. While this is minor semantic change,
it should allow for more accurate A/V sync for applications.

Bluetooth device battery level reporting added

If a bluetooth device supports battery level reporting, the level
is now reported to BlueZ. Aroperties with the bluetooth.battery
key. There are no notifications when the property value changes,
however (bug reported: #1314).

## Notes for packagers

Module installation location changed, remember to upgrade paprefs
to the latest version!

Modules are now installed to $libdir/pulseaudio/modules, previously
they were installed to $libdir/pulse-$version/modules. paprefs has
some logic that is sensitive to the module installation path, so
if you ship paprefs in your distribution, make sure to upgrade
paprefs to version 1.2. Earlier paprefs versions won't work properly
with PulseAudio 16.0.

Opus support in the RTP modules requires enabling GStreamer

The new Opus compression is available only when PulseAudio is built
with the gstreamer Meson option enabled (previously it was disabled
by default, now it's automatically enabled if the necessary
dependencies are found).

Bluetooth battery level reporting via BlueZ requires enabling
experimentals features in BlueZ

The Battery API is still marked as an experimental feature in BlueZ,
and if you wish to have PulseAudio use it, bluetoothd has to be
started with the --experimental command line argument.

New time smoother implementation

There's a new algorithm for keeping latency stable during adaptive
resampling in module-loopback and elsewhere. Part of that is a new
"time smoother" implementation. It will deliver more accurate and
stable latency estimations compared to the current algorithm. This
is mainly important where a fixed relationship between different
streams is required (A/V sync, module-loopback, module-combine-sink,
module-echo cancel, ...). Since this is a fair bit of complex new
code in the core audio processing parts, the old implementation is
kept around for a while to have a backup in case bugs show up. The
new time smoother can be disabled with the enable-smoother-2=false
Meson option.

Possibility to build the daemon without the client parts

It's now possible to build the daemon without building the client
parts at the same time, by using the -Dclient=false Meson option.
The daemon will still need the client libraries during the build,
the libraries installed in the system will be used. Apparently this
kind of scheme is useful for Gentoo.


To generate a diff of this commit:
cvs rdiff -u -r1.171 -r1.172 pkgsrc/audio/pulseaudio/Makefile
cvs rdiff -u -r1.41 -r1.42 pkgsrc/audio/pulseaudio/PLIST
cvs rdiff -u -r1.40 -r1.41 pkgsrc/audio/pulseaudio/buildlink3.mk
cvs rdiff -u -r1.84 -r1.85 pkgsrc/audio/pulseaudio/distinfo
cvs rdiff -u -r1.14 -r1.15 pkgsrc/audio/pulseaudio/options.mk
cvs rdiff -u -r1.2 -r1.3 pkgsrc/audio/pulseaudio/patches/patch-meson.build
cvs rdiff -u -r1.1 -r1.2 \
    pkgsrc/audio/pulseaudio/patches/patch-src_pulsecore_iochannel.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: pkgsrc/audio/pulseaudio/Makefile
diff -u pkgsrc/audio/pulseaudio/Makefile:1.171 pkgsrc/audio/pulseaudio/Makefile:1.172
--- pkgsrc/audio/pulseaudio/Makefile:1.171      Tue Jun 28 11:30:58 2022
+++ pkgsrc/audio/pulseaudio/Makefile    Sat Jul  2 16:44:38 2022
@@ -1,7 +1,6 @@
-# $NetBSD: Makefile,v 1.171 2022/06/28 11:30:58 wiz Exp $
+# $NetBSD: Makefile,v 1.172 2022/07/02 16:44:38 ryoon Exp $
 
-DISTNAME=      pulseaudio-15.0
-PKGREVISION=   3
+DISTNAME=      pulseaudio-16.1
 CATEGORIES=    audio
 MASTER_SITES=  https://freedesktop.org/software/pulseaudio/releases/
 EXTRACT_SUFX=  .tar.xz
@@ -33,7 +32,7 @@ GCC_REQD+=    4.8
 USE_LANGUAGES=         c c++
 USE_LIBTOOL=           yes
 USE_PKGLOCALEDIR=      yes
-USE_TOOLS+=            bash:run gmake gm4
+USE_TOOLS+=            bash:run gm4
 USE_TOOLS+=            msgfmt perl:build pkg-config
 MESON_ARGS+=           -Dtcpwrap=disabled
 MESON_ARGS+=           --localedir=${PKGLOCALEDIR}/locale
@@ -71,8 +70,6 @@ MAKE_FLAGS+=          bashcompletiondir=${PREFIX
 .include "../../devel/libatomic_ops/buildlink3.mk"
 .endif
 
-# Version number in patch-configure.ac.must be changed too.
-PLIST_SUBST+=          PULSELIBVER=15.0
 PLIST_VARS+=           alsa evdev oss
 
 .if ${SHLIB_TYPE} == "dylib"
@@ -80,6 +77,7 @@ PLIST_SUBST+=         SOEXT=dylib
 .else
 PLIST_SUBST+=          SOEXT=so
 .endif
+PRINT_PLIST_AWK+=      { gsub(/\.so/, ".$${SOEXT}"); }
 
 # Build module-mmkbd-evdev.so under Linux
 .if ${OPSYS} == "Linux"
@@ -109,7 +107,7 @@ LDFLAGS.SunOS+=             -lsocket -lnsl
 
 # Do not depend on RPATH $ORIGIN.
 LDFLAGS+=              ${COMPILER_RPATH_FLAG}${PREFIX}/lib/pulseaudio
-LDFLAGS+=              ${COMPILER_RPATH_FLAG}${PREFIX}/lib/pulse-${PKGVERSION_NOREV}/modules
+LDFLAGS+=              ${COMPILER_RPATH_FLAG}${PREFIX}/lib/pulseaudio/modules
 
 INSTALLATION_DIRS=     share/examples/pulse
 

Index: pkgsrc/audio/pulseaudio/PLIST
diff -u pkgsrc/audio/pulseaudio/PLIST:1.41 pkgsrc/audio/pulseaudio/PLIST:1.42
--- pkgsrc/audio/pulseaudio/PLIST:1.41  Thu May  5 13:54:29 2022
+++ pkgsrc/audio/pulseaudio/PLIST       Sat Jul  2 16:44:38 2022
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.41 2022/05/05 13:54:29 nia Exp $
+@comment $NetBSD: PLIST,v 1.42 2022/07/02 16:44:38 ryoon Exp $
 bin/pa-info
 bin/pacat
 bin/pacmd
@@ -46,104 +46,103 @@ include/pulse/volume.h
 include/pulse/xmalloc.h
 lib/cmake/PulseAudio/PulseAudioConfig.cmake
 lib/cmake/PulseAudio/PulseAudioConfigVersion.cmake
-lib/libpulse-mainloop-glib.so
-lib/libpulse-mainloop-glib.so.0
-lib/libpulse-mainloop-glib.so.0.0.6
-lib/libpulse-simple.so
-lib/libpulse-simple.so.0
-lib/libpulse-simple.so.0.1.1
-lib/libpulse.so
-lib/libpulse.so.0
-lib/libpulse.so.0.24.0
+lib/libpulse-mainloop-glib.${SOEXT}
+lib/libpulse-mainloop-glib.${SOEXT}.0
+lib/libpulse-mainloop-glib.${SOEXT}.0.0.6
+lib/libpulse-simple.${SOEXT}
+lib/libpulse-simple.${SOEXT}.0
+lib/libpulse-simple.${SOEXT}.0.1.1
+lib/libpulse.${SOEXT}
+lib/libpulse.${SOEXT}.0
+lib/libpulse.${SOEXT}.0.24.2
 lib/pkgconfig/libpulse-mainloop-glib.pc
 lib/pkgconfig/libpulse-simple.pc
 lib/pkgconfig/libpulse.pc
-${PLIST.alsa}lib/pulse-${PULSELIBVER}/modules/libalsa-util.${SOEXT}
-${PLIST.avahi}lib/pulse-${PULSELIBVER}/modules/libavahi-wrap.${SOEXT}
-${PLIST.avahi}lib/pulse-${PKGVERSION}/modules/libavahi-wrap.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/libcli.${SOEXT}
-${PLIST.oss}lib/pulse-${PULSELIBVER}/modules/liboss-util.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/libprotocol-cli.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/libprotocol-http.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/libprotocol-native.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/libprotocol-simple.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/libraop.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/librtp.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-allow-passthrough.${SOEXT}
-${PLIST.alsa}lib/pulse-${PULSELIBVER}/modules/module-alsa-card.${SOEXT}
-${PLIST.alsa}lib/pulse-${PULSELIBVER}/modules/module-alsa-sink.${SOEXT}
-${PLIST.alsa}lib/pulse-${PULSELIBVER}/modules/module-alsa-source.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-always-sink.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-always-source.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-augment-properties.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-card-restore.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-cli-protocol-tcp.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-cli-protocol-unix.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-cli.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-combine-sink.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-combine.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-console-kit.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-dbus-protocol.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-default-device-restore.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-detect.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-device-manager.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-device-restore.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-echo-cancel.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-filter-apply.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-filter-heuristics.${SOEXT}
-${PLIST.gsettings}lib/pulse-${PULSELIBVER}/modules/module-gsettings.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-http-protocol-tcp.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-http-protocol-unix.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-intended-roles.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-ladspa-sink.${SOEXT}
-${PLIST.lirc}lib/pulse-${PULSELIBVER}/modules/module-lirc.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-loopback.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-match.${SOEXT}
-${PLIST.evdev}lib/pulse-${PULSELIBVER}/modules/module-mmkbd-evdev.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-native-protocol-fd.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-native-protocol-tcp.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-native-protocol-unix.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-null-sink.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-null-source.${SOEXT}
-${PLIST.oss}lib/pulse-${PULSELIBVER}/modules/module-oss.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-pipe-sink.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-pipe-source.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-position-event-sounds.${SOEXT}
-${PLIST.avahi}lib/pulse-${PULSELIBVER}/modules/module-raop-discover.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-raop-sink.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-remap-sink.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-remap-source.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-rescue-streams.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-role-cork.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-role-ducking.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-rtp-recv.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-rtp-send.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-rygel-media-server.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-simple-protocol-tcp.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-simple-protocol-unix.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-sine-source.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-sine.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-stream-restore.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-suspend-on-idle.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-switch-on-connect.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-switch-on-port-available.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-tunnel-sink-new.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-tunnel-sink.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-tunnel-source-new.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-tunnel-source.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-virtual-sink.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-virtual-source.${SOEXT}
-lib/pulse-${PKGVERSION}/modules/module-volume-restore.${SOEXT}
-${PLIST.x11}lib/pulse-${PKGVERSION}/modules/module-x11-bell.${SOEXT}
-${PLIST.x11}lib/pulse-${PKGVERSION}/modules/module-x11-cork-request.${SOEXT}
-${PLIST.x11}lib/pulse-${PKGVERSION}/modules/module-x11-publish.${SOEXT}
-${PLIST.x11}lib/pulse-${PKGVERSION}/modules/module-x11-xsmp.${SOEXT}
-${PLIST.avahi}lib/pulse-${PKGVERSION}/modules/module-zeroconf-discover.${SOEXT}
-${PLIST.avahi}lib/pulse-${PKGVERSION}/modules/module-zeroconf-publish.${SOEXT}
-lib/pulseaudio/libpulsecommon-${PKGVERSION}.so
-lib/pulseaudio/libpulsecore-${PKGVERSION}.so
-${PLIST.oss}lib/pulseaudio/libpulsedsp.so
+lib/pulseaudio/libpulsecommon-${PKGVERSION}.${SOEXT}
+lib/pulseaudio/libpulsecore-${PKGVERSION}.${SOEXT}
+${PLIST.oss}lib/pulseaudio/libpulsedsp.${SOEXT}
 ${PLIST.gsettings}libexec/pulse/gsettings-helper
+${PLIST.alsa}lib/pulseaudio/modules/libalsa-util.${SOEXT}
+${PLIST.avahi}lib/pulseaudio/modules/libavahi-wrap.${SOEXT}
+lib/pulseaudio/modules/libcli.${SOEXT}
+${PLIST.oss}lib/pulseaudio/modules/liboss-util.${SOEXT}
+lib/pulseaudio/modules/libprotocol-cli.${SOEXT}
+lib/pulseaudio/modules/libprotocol-http.${SOEXT}
+lib/pulseaudio/modules/libprotocol-native.${SOEXT}
+lib/pulseaudio/modules/libprotocol-simple.${SOEXT}
+lib/pulseaudio/modules/libraop.${SOEXT}
+lib/pulseaudio/modules/librtp.${SOEXT}
+lib/pulseaudio/modules/module-allow-passthrough.${SOEXT}
+${PLIST.alsa}lib/pulseaudio/modules/module-alsa-card.${SOEXT}
+${PLIST.alsa}lib/pulseaudio/modules/module-alsa-sink.${SOEXT}
+${PLIST.alsa}lib/pulseaudio/modules/module-alsa-source.${SOEXT}
+lib/pulseaudio/modules/module-always-sink.${SOEXT}
+lib/pulseaudio/modules/module-always-source.${SOEXT}
+lib/pulseaudio/modules/module-augment-properties.${SOEXT}
+lib/pulseaudio/modules/module-card-restore.${SOEXT}
+lib/pulseaudio/modules/module-cli-protocol-tcp.${SOEXT}
+lib/pulseaudio/modules/module-cli-protocol-unix.${SOEXT}
+lib/pulseaudio/modules/module-cli.${SOEXT}
+lib/pulseaudio/modules/module-combine-sink.${SOEXT}
+lib/pulseaudio/modules/module-combine.${SOEXT}
+lib/pulseaudio/modules/module-console-kit.${SOEXT}
+lib/pulseaudio/modules/module-dbus-protocol.${SOEXT}
+lib/pulseaudio/modules/module-default-device-restore.${SOEXT}
+lib/pulseaudio/modules/module-detect.${SOEXT}
+lib/pulseaudio/modules/module-device-manager.${SOEXT}
+lib/pulseaudio/modules/module-device-restore.${SOEXT}
+lib/pulseaudio/modules/module-echo-cancel.${SOEXT}
+lib/pulseaudio/modules/module-filter-apply.${SOEXT}
+lib/pulseaudio/modules/module-filter-heuristics.${SOEXT}
+${PLIST.gsettings}lib/pulseaudio/modules/module-gsettings.${SOEXT}
+lib/pulseaudio/modules/module-http-protocol-tcp.${SOEXT}
+lib/pulseaudio/modules/module-http-protocol-unix.${SOEXT}
+lib/pulseaudio/modules/module-intended-roles.${SOEXT}
+${PLIST.oss}lib/pulseaudio/modules/module-ladspa-sink.${SOEXT}
+${PLIST.lirc}lib/pulseaudio/modules/module-lirc.${SOEXT}
+lib/pulseaudio/modules/module-loopback.${SOEXT}
+lib/pulseaudio/modules/module-match.${SOEXT}
+${PLIST.evdev}lib/pulseaudio/modules/module-mmkbd-evdev.${SOEXT}
+lib/pulseaudio/modules/module-native-protocol-fd.${SOEXT}
+lib/pulseaudio/modules/module-native-protocol-tcp.${SOEXT}
+lib/pulseaudio/modules/module-native-protocol-unix.${SOEXT}
+lib/pulseaudio/modules/module-null-sink.${SOEXT}
+lib/pulseaudio/modules/module-null-source.${SOEXT}
+${PLIST.oss}lib/pulseaudio/modules/module-oss.${SOEXT}
+lib/pulseaudio/modules/module-pipe-sink.${SOEXT}
+lib/pulseaudio/modules/module-pipe-source.${SOEXT}
+lib/pulseaudio/modules/module-position-event-sounds.${SOEXT}
+${PLIST.avahi}lib/pulseaudio/modules/module-raop-discover.${SOEXT}
+lib/pulseaudio/modules/module-raop-sink.${SOEXT}
+lib/pulseaudio/modules/module-remap-sink.${SOEXT}
+lib/pulseaudio/modules/module-remap-source.${SOEXT}
+lib/pulseaudio/modules/module-rescue-streams.${SOEXT}
+lib/pulseaudio/modules/module-role-cork.${SOEXT}
+lib/pulseaudio/modules/module-role-ducking.${SOEXT}
+lib/pulseaudio/modules/module-rtp-recv.${SOEXT}
+lib/pulseaudio/modules/module-rtp-send.${SOEXT}
+lib/pulseaudio/modules/module-rygel-media-server.${SOEXT}
+lib/pulseaudio/modules/module-simple-protocol-tcp.${SOEXT}
+lib/pulseaudio/modules/module-simple-protocol-unix.${SOEXT}
+lib/pulseaudio/modules/module-sine-source.${SOEXT}
+lib/pulseaudio/modules/module-sine.${SOEXT}
+lib/pulseaudio/modules/module-stream-restore.${SOEXT}
+lib/pulseaudio/modules/module-suspend-on-idle.${SOEXT}
+lib/pulseaudio/modules/module-switch-on-connect.${SOEXT}
+lib/pulseaudio/modules/module-switch-on-port-available.${SOEXT}
+lib/pulseaudio/modules/module-tunnel-sink-new.${SOEXT}
+lib/pulseaudio/modules/module-tunnel-sink.${SOEXT}
+lib/pulseaudio/modules/module-tunnel-source-new.${SOEXT}
+lib/pulseaudio/modules/module-tunnel-source.${SOEXT}
+lib/pulseaudio/modules/module-virtual-sink.${SOEXT}
+lib/pulseaudio/modules/module-virtual-source.${SOEXT}
+lib/pulseaudio/modules/module-volume-restore.${SOEXT}
+${PLIST.x11}lib/pulseaudio/modules/module-x11-bell.${SOEXT}
+${PLIST.x11}lib/pulseaudio/modules/module-x11-cork-request.${SOEXT}
+${PLIST.x11}lib/pulseaudio/modules/module-x11-publish.${SOEXT}
+${PLIST.x11}lib/pulseaudio/modules/module-x11-xsmp.${SOEXT}
+${PLIST.avahi}lib/pulseaudio/modules/module-zeroconf-discover.${SOEXT}
+${PLIST.avahi}lib/pulseaudio/modules/module-zeroconf-publish.${SOEXT}
 man/man1/pacat.1
 man/man1/pacmd.1
 man/man1/pactl.1
@@ -202,6 +201,7 @@ share/locale/hu/LC_MESSAGES/pulseaudio.m
 share/locale/id/LC_MESSAGES/pulseaudio.mo
 share/locale/it/LC_MESSAGES/pulseaudio.mo
 share/locale/ja/LC_MESSAGES/pulseaudio.mo
+share/locale/ka/LC_MESSAGES/pulseaudio.mo
 share/locale/kk/LC_MESSAGES/pulseaudio.mo
 share/locale/kn/LC_MESSAGES/pulseaudio.mo
 share/locale/ko/LC_MESSAGES/pulseaudio.mo
@@ -304,3 +304,4 @@ share/vala/vapi/libpulse-simple.vapi
 share/vala/vapi/libpulse.deps
 share/vala/vapi/libpulse.vapi
 share/zsh/site-functions/_pulseaudio
+@pkgdir share/examples/pulse

Index: pkgsrc/audio/pulseaudio/buildlink3.mk
diff -u pkgsrc/audio/pulseaudio/buildlink3.mk:1.40 pkgsrc/audio/pulseaudio/buildlink3.mk:1.41
--- pkgsrc/audio/pulseaudio/buildlink3.mk:1.40  Tue Jun 28 11:30:58 2022
+++ pkgsrc/audio/pulseaudio/buildlink3.mk       Sat Jul  2 16:44:38 2022
@@ -1,12 +1,12 @@
-# $NetBSD: buildlink3.mk,v 1.40 2022/06/28 11:30:58 wiz Exp $
+# $NetBSD: buildlink3.mk,v 1.41 2022/07/02 16:44:38 ryoon Exp $
 
 BUILDLINK_TREE+=       pulseaudio
 
 .if !defined(PULSEAUDIO_BUILDLINK3_MK)
 PULSEAUDIO_BUILDLINK3_MK:=
 
-BUILDLINK_API_DEPENDS.pulseaudio+=     pulseaudio>=15.0
-BUILDLINK_ABI_DEPENDS.pulseaudio+=     pulseaudio>=15.0nb3
+BUILDLINK_API_DEPENDS.pulseaudio+=     pulseaudio>=16.1
+BUILDLINK_ABI_DEPENDS.pulseaudio+=     pulseaudio>=16.1
 BUILDLINK_PKGSRCDIR.pulseaudio?=       ../../audio/pulseaudio
 
 .include "../../mk/bsd.fast.prefs.mk"
@@ -33,7 +33,6 @@ pkgbase:= pulseaudio
 .endif
 
 .include "../../audio/libsndfile/buildlink3.mk"
-.include "../../databases/gdbm/buildlink3.mk"
 .include "../../devel/glib2/buildlink3.mk"
 .include "../../sysutils/dbus/buildlink3.mk"
 .endif # PULSEAUDIO_BUILDLINK3_MK

Index: pkgsrc/audio/pulseaudio/distinfo
diff -u pkgsrc/audio/pulseaudio/distinfo:1.84 pkgsrc/audio/pulseaudio/distinfo:1.85
--- pkgsrc/audio/pulseaudio/distinfo:1.84       Tue Oct 26 09:59:23 2021
+++ pkgsrc/audio/pulseaudio/distinfo    Sat Jul  2 16:44:39 2022
@@ -1,9 +1,9 @@
-$NetBSD: distinfo,v 1.84 2021/10/26 09:59:23 nia Exp $
+$NetBSD: distinfo,v 1.85 2022/07/02 16:44:39 ryoon Exp $
 
-BLAKE2s (pulseaudio-15.0.tar.xz) = 9534089fa58e4a8fddffb0c3bb82f5d5211f6a1d45cff3dccebfda44fc22c550
-SHA512 (pulseaudio-15.0.tar.xz) = 352ef20384c76c631c0faa73b08e2318902a433712e0c086a5ac7a0ae58873c8d4be8f35879bdec71a93b19ae8e2ba073cacac4d56215bcf58375a0cd9d88833
-Size (pulseaudio-15.0.tar.xz) = 1521760 bytes
-SHA1 (patch-meson.build) = e8414f6b3246ce0fc9fe3957f14826dabdad851c
+BLAKE2s (pulseaudio-16.1.tar.xz) = 47f70e6e61a1848ecac531244782db89f3c7bae5fbaac11b87c3375c35201ed6
+SHA512 (pulseaudio-16.1.tar.xz) = 33b0b4292f05e0882f3ec822cf5720414bb34c523d80fe287b9740d6be219787c562e8024c9b0d9e2ee010771ca72c7ae4f27df1bbef9c9cb6bb6a23cbcc412f
+Size (pulseaudio-16.1.tar.xz) = 1545596 bytes
+SHA1 (patch-meson.build) = eaaf0e7959e640e35e593972a19ce457569c1890
 SHA1 (patch-src_daemon_meson.build) = 20f2909ceaea27d43ef2cb5fb228952f8376fb3c
 SHA1 (patch-src_meson.build) = 91781da6bdad6f526d8c05aa0221d38067a1b8c4
 SHA1 (patch-src_modules_module-detect.c) = 72605c7d9392be7217dab2fbd9ecc85ed02021aa
@@ -12,7 +12,7 @@ SHA1 (patch-src_modules_raop_raop-client
 SHA1 (patch-src_pulse_meson.build) = c17321e03fd03034b1974ff51a900ef379342ffd
 SHA1 (patch-src_pulsecore_core-rtclock.c) = f621124e0ae8704ddcbbdf1a03a8c898ba6468e2
 SHA1 (patch-src_pulsecore_creds.h) = a22cd7fa038cb3424f3ce6e4ce48fd86de6f0d9d
-SHA1 (patch-src_pulsecore_iochannel.c) = d227e379d9b09612f84b9071f9378dbc66cfa4ac
+SHA1 (patch-src_pulsecore_iochannel.c) = 7f67854d8a834c2a99e19a46c9013e84bd45bf68
 SHA1 (patch-src_pulsecore_meson.build) = dbb9247b5185b60f600ea21c3954a324cc007e77
 SHA1 (patch-src_pulsecore_mix__neon.c) = 6f6d33d38024d65045d637d48276e1ba92b81342
 SHA1 (patch-src_pulsecore_shm.c) = c7079e8ac3461f5069e1415a2816784781aaa59c

Index: pkgsrc/audio/pulseaudio/options.mk
diff -u pkgsrc/audio/pulseaudio/options.mk:1.14 pkgsrc/audio/pulseaudio/options.mk:1.15
--- pkgsrc/audio/pulseaudio/options.mk:1.14     Fri Jul 30 12:21:06 2021
+++ pkgsrc/audio/pulseaudio/options.mk  Sat Jul  2 16:44:39 2022
@@ -1,4 +1,4 @@
-# $NetBSD: options.mk,v 1.14 2021/07/30 12:21:06 ryoon Exp $
+# $NetBSD: options.mk,v 1.15 2022/07/02 16:44:39 ryoon Exp $
 
 .include "../../comms/lirc/available.mk"
 
@@ -44,3 +44,13 @@ PLIST.x11=           yes
 .else
 CONFIGURE_ARGS+=       --disable-x11
 .endif
+
+PRINT_PLIST_AWK+=      {if ($$0 ~ /x11/ && !($$0 ~ /start-pulseaudio-x11.1/)) {$$0 = "$${PLIST.x11}" $$0;}}
+PRINT_PLIST_AWK+=      {if ($$0 ~ /pulseaudio.desktop/) {$$0 = "$${PLIST.x11}" $$0;}}
+
+PRINT_PLIST_AWK+=      {if ($$0 ~ /avahi/) {$$0 = "$${PLIST.avahi}" $$0;}}
+PRINT_PLIST_AWK+=      {if ($$0 ~ /zeroconf/) {$$0 = "$${PLIST.avahi}" $$0;}}
+PRINT_PLIST_AWK+=      {if ($$0 ~ /module-raop-discover/) {$$0 = "$${PLIST.avahi}" $$0;}}
+
+PRINT_PLIST_AWK+=      {if ($$0 ~ /oss/) {$$0 = "$${PLIST.oss}" $$0;}}
+PRINT_PLIST_AWK+=      {if ($$0 ~ /dsp/ && !($$0 ~ /share\/bash-completion\/completions\/padsp/)) {$$0 = "$${PLIST.oss}" $$0;}}

Index: pkgsrc/audio/pulseaudio/patches/patch-meson.build
diff -u pkgsrc/audio/pulseaudio/patches/patch-meson.build:1.2 pkgsrc/audio/pulseaudio/patches/patch-meson.build:1.3
--- pkgsrc/audio/pulseaudio/patches/patch-meson.build:1.2       Thu Sep 16 13:02:34 2021
+++ pkgsrc/audio/pulseaudio/patches/patch-meson.build   Sat Jul  2 16:44:39 2022
@@ -1,41 +1,12 @@
-$NetBSD: patch-meson.build,v 1.2 2021/09/16 13:02:34 schmonz Exp $
+$NetBSD: patch-meson.build,v 1.3 2022/07/02 16:44:39 ryoon Exp $
 
 * Non-MS Windows case uses libintl for dgettext.
   Fix build under NetBSD.
-* Apply proposed upstream commit 390e5f02 to fix non-x86 clang builds.
 * Omit unsupported linker arguments on macOS.
 
---- meson.build.orig   2021-07-27 20:02:27.000000000 +0000
+--- meson.build.orig   2022-05-28 15:18:37.000000000 +0000
 +++ meson.build
-@@ -216,7 +216,6 @@ endif
- check_headers = [
-   'arpa/inet.h',
-   'byteswap.h',
--  'cpuid.h',
-   'dlfcn.h',
-   'execinfo.h',
-   'grp.h',
-@@ -276,6 +275,19 @@ if cc.has_header_symbol('pthread.h', 'PT
-   cdata.set('HAVE_PTHREAD_PRIO_INHERIT', 1)
- endif
- 
-+# Headers which are usable
-+
-+check_usable_headers = [
-+  'cpuid.h',
-+]
-+
-+foreach h : check_usable_headers
-+  if cc.check_header(h)
-+    define = 'HAVE_' + h.underscorify().to_upper()
-+    cdata.set(define, 1)
-+  endif
-+endforeach
-+
- # Functions
- 
- check_functions = [
-@@ -348,7 +360,7 @@ if cc.has_header_symbol('sys/syscall.h',
+@@ -368,7 +368,7 @@ if cc.has_header_symbol('sys/syscall.h',
  endif
  
  if cc.has_function('dgettext')
@@ -44,7 +15,7 @@ $NetBSD: patch-meson.build,v 1.2 2021/09
      libintl_dep = []
    else
      libintl_dep = cc.find_library('intl')
-@@ -404,7 +416,7 @@ cdata.set('MESON_BUILD', 1)
+@@ -424,7 +424,7 @@ cdata.set('MESON_BUILD', 1)
  # so we request the nodelete flag to be enabled.
  # On other systems, we don't really know how to do that, but it's welcome if somebody can tell.
  # Windows doesn't support this flag.

Index: pkgsrc/audio/pulseaudio/patches/patch-src_pulsecore_iochannel.c
diff -u pkgsrc/audio/pulseaudio/patches/patch-src_pulsecore_iochannel.c:1.1 pkgsrc/audio/pulseaudio/patches/patch-src_pulsecore_iochannel.c:1.2
--- pkgsrc/audio/pulseaudio/patches/patch-src_pulsecore_iochannel.c:1.1 Thu Sep 16 13:02:34 2021
+++ pkgsrc/audio/pulseaudio/patches/patch-src_pulsecore_iochannel.c     Sat Jul  2 16:44:39 2022
@@ -1,15 +1,15 @@
-$NetBSD: patch-src_pulsecore_iochannel.c,v 1.1 2021/09/16 13:02:34 schmonz Exp $
+$NetBSD: patch-src_pulsecore_iochannel.c,v 1.2 2022/07/02 16:44:39 ryoon Exp $
 
 No SO_PASSCRED on macOS either.
 
---- src/pulsecore/iochannel.c.orig     2021-07-27 20:02:27.000000000 +0000
+--- src/pulsecore/iochannel.c.orig     2022-05-28 15:18:37.000000000 +0000
 +++ src/pulsecore/iochannel.c
 @@ -298,7 +298,7 @@ int pa_iochannel_creds_enable(pa_iochann
      pa_assert(io);
      pa_assert(io->ifd >= 0);
  
--#if !defined(__FreeBSD__) && !defined(__FreeBSD_kernel__)
-+#if !defined(__FreeBSD__) && !defined(__FreeBSD_kernel__) && !defined(__APPLE__)
+-#if !defined(__FreeBSD__) && !defined(__FreeBSD_kernel__) && !defined(__GNU__)
++#if !defined(__FreeBSD__) && !defined(__FreeBSD_kernel__) && !defined(__GNU__) && !defined(__APPLE__)
      if (setsockopt(io->ifd, SOL_SOCKET, SO_PASSCRED, &t, sizeof(t)) < 0) {
          pa_log_error("setsockopt(SOL_SOCKET, SO_PASSCRED): %s", pa_cstrerror(errno));
          return -1;



Home | Main Index | Thread Index | Old Index