Also:
* refresh patches;
* change maintainer from ports@ to rodrigo@ - maintainer other alsa
ports: audio/alsa-lib audio/alsa-utils (if he is against changing the
maintainer, then I will return the old value ports@).
PR: 280144
Approved by: rodrigo (maintainer, timeout > 2 weeks)
- Reduce heavy dependencies for consumers e.g., wine, pipewire, qt?-webengine
- "pulse" plugin was partially broken until 5131751558
- All plugins with extra dependencies (like "pulse") to be subpackaged later
PR: 245321
For some reason, /usr/local/share/alsa/alsa.conf.d is no longer searched.
$ sed -i '' '/pulse/s/# //' /usr/local/etc/asound.conf
$ daemon -f pulseaudio
$ aplay foo.wav
ALSA lib pcm.c:2675:(snd_pcm_open_noupdate) Unknown PCM pcm.pulse
aplay: main:839: audio open error: No such file or directory
PR: 245321
Dates back to 4070922aac but the submitted patches unconditionally
passed --disable-samplerate, so SAMPLERATE option was added by fluffy@.
According to v1.0.23 vendor sources there was no such dependency.
Drop as JACK=on SAMPLERATE=off builds fine, and neither 50-jack.conf
nor alsa-lib/files/asound.conf.sample use samplerate.
- BLKCNT_P2 and VERBOSE exposed compile knobs from
https://people.freebsd.org/~ariff/libasound/20090928_00-alsa-plugins-1.0.21.diff
- BUFSZ_P2 worked around crashes and high CPU usage in Firefox until
native OSS support phased out ALSA
- hselasky@ fixed many ALSA issues over the years
- users can still adjust compile knobs via make.conf(5) or Makefile.local
PR: 274047
checking for LIBAV... no
checking for avcodec_open in -lavcodec... no
[...]
configure:13617: checking for LIBAV
configure:13624: $PKG_CONFIG --exists --print-errors "libavcodec libavutil libavresample"
Package libavresample was not found in the pkg-config search path.
Perhaps you should add the directory containing `libavresample.pc'
to the PKG_CONFIG_PATH environment variable
Package 'libavresample', required by 'virtual:world', not found
configure:13627: $? = 1
[...]
====> Checking for pkg-plist issues (check-plist)
===> Parsing plist
===> Checking for items in STAGEDIR missing from pkg-plist
===> Checking for items in pkg-plist which are not in STAGEDIR
Error: Missing: etc/alsa/conf.d/10-rate-lav.conf
Error: Missing: etc/alsa/conf.d/60-a52-encoder.conf
Error: Missing: lib/alsa-lib/libasound_module_pcm_a52.la
Error: Missing: lib/alsa-lib/libasound_module_pcm_a52.so
Error: Missing: lib/alsa-lib/libasound_module_rate_lavrate.la
Error: Missing: lib/alsa-lib/libasound_module_rate_lavrate.so
Error: Missing: lib/alsa-lib/libasound_module_rate_lavrate_fast.so
Error: Missing: lib/alsa-lib/libasound_module_rate_lavrate_faster.so
Error: Missing: lib/alsa-lib/libasound_module_rate_lavrate_high.so
Error: Missing: lib/alsa-lib/libasound_module_rate_lavrate_higher.so
Error: Missing: share/alsa/alsa.conf.d/10-rate-lav.conf
Error: Missing: share/alsa/alsa.conf.d/60-a52-encoder.conf
===> Error: Plist issues found.
*** Error code 1
PR: 271641 272337
After the update to ffmpeg 6 the configure script failed to recognise the
components needed, causing packaging errors later on. Changing the dependency to
the new ffmpeg4 port fixes this.
PR: 271641
Reported by: m.ne@gmx.net
Commit b7f05445c0 has added WWW entries to port Makefiles based on
WWW: lines in pkg-descr files.
This commit removes the WWW: lines of moved-over URLs from these
pkg-descr files.
Approved by: portmgr (tcberner)
It has been common practice to have one or more URLs at the end of the
ports' pkg-descr files, one per line and prefixed with "WWW:". These
URLs should point at a project website or other relevant resources.
Access to these URLs required processing of the pkg-descr files, and
they have often become stale over time. If more than one such URL was
present in a pkg-descr file, only the first one was tarnsfered into
the port INDEX, but for many ports only the last line did contain the
port specific URL to further information.
There have been several proposals to make a project URL available as
a macro in the ports' Makefiles, over time.
This commit implements such a proposal and moves one of the WWW: entries
of each pkg-descr file into the respective port's Makefile. A heuristic
attempts to identify the most relevant URL in case there is more than
one WWW: entry in some pkg-descr file. URLs that are not moved into the
Makefile are prefixed with "See also:" instead of "WWW:" in the pkg-descr
files in order to preserve them.
There are 1256 ports that had no WWW: entries in pkg-descr files. These
ports will not be touched in this commit.
The portlint port has been adjusted to expect a WWW entry in each port
Makefile, and to flag any remaining "WWW:" lines in pkg-descr files as
deprecated.
Approved by: portmgr (tcberner)
Fixes these errors:
Error: /usr/local/lib/alsa-lib/libasound_module_pcm_speex.so is linked
to /usr/local/lib/libspeexdsp.so.1 from audio/speexdsp but it is not
declared as a dependency
Error: Orphaned: etc/alsa/conf.d/60-speex.conf
Error: Orphaned: share/alsa/alsa.conf.d/60-speex.conf
Also makes symlinks from etc/alsa/conf.d to share/alsa/alsa.conf.d/
relative to fix stage-qa warnings.
Correctly set the water level based on min_avail to avoid infinite
polling loops.
Applications tested: chrome, musescore, aplay and arecord .
PR: 261767
Approved by: pi (implicit)
When computing the oss_pointer() return value, use the application
pointer value as reference, so that ALSA audio applications at any
time don't read/write more audio data than is possible. Following the
cyclic DMA pointer is not a good idea, because it doesn't account for
under- or overruns and this quickly leads to a situation where some
applications may want to write more data, ending in infinite loops.
The SNDCTL_DSP_GET space ioctls operate on buffer fragments. Any
size less than bi.fragsize is reported as zero bytes. Don't set the
water level less than bi.fragsize, because it leads to infinite
polling the way ALSA PCM is working.
Approved by: pi (implicit)
The original distfiles are getting hard to come by for some reason, so
switch to pulling source tarballs directly from GitHub. Replace
patches that apply to generated files with patches that apply to their
sources.
Big thank you to Florian Walpen <dev@submerge.ch> and
Goran Mekić <meka@tilda.center> for working on Jack2.
PR: 251125
Submitted by: Florian Walpen <dev@submerge.ch> (original version)
files/alsa-plugins.patch contains an assortment of FreeBSD-specific
improvements that may not work on alternative OSS implementations.
So, restore the ability to exclude the patch for debugging.
- Wasn't approved i.e., explicitly requested to not add it
- portlint style frequently changes and isn't mandatory to follow
- Newline here is dubious compared to putting USE/USES at the top
of the section for better visibility
1) When read() or write() fails due to EAGAIN because no buffer is available or
buffer is full, return 0 instead of failure. Else clients may simply close
the device and re-open it instantly chopping the audio.
2) Implement OSS delay function to fix an issue with negative delays.
3) Use at least 16ms of HW buffer by default to avoid jitter.
Approved by: pi, jbeich