svn commit: r425860 - in branches/2016Q4/audio/pulseaudio: . files
Jan Beich
jbeich at FreeBSD.org
Fri Nov 11 05:19:21 UTC 2016
Author: jbeich
Date: Fri Nov 11 05:19:19 2016
New Revision: 425860
URL: https://svnweb.freebsd.org/changeset/ports/425860
Log:
MFH: r425809 r425812
audio/pulseaudio: respect hw.snd.default_unit
PR: 211684
Submitted by: lightside <lightside at gmx.com>
Reviewed by: Tobias Kortkamp <t at tobik.me>
Approved by: maintainer timeout (3 months)
Approved by: ports-secteam (junovitch)
Modified:
branches/2016Q4/audio/pulseaudio/Makefile
branches/2016Q4/audio/pulseaudio/files/patch-src_modules_module-detect.c
branches/2016Q4/audio/pulseaudio/files/pkg-message.in
Directory Properties:
branches/2016Q4/ (props changed)
Modified: branches/2016Q4/audio/pulseaudio/Makefile
==============================================================================
--- branches/2016Q4/audio/pulseaudio/Makefile Fri Nov 11 03:42:50 2016 (r425859)
+++ branches/2016Q4/audio/pulseaudio/Makefile Fri Nov 11 05:19:19 2016 (r425860)
@@ -6,6 +6,7 @@
PORTNAME= pulseaudio
PORTVERSION= 8.0
+PORTREVISION= 2
CATEGORIES= audio
MASTER_SITES= http://freedesktop.org/software/pulseaudio/releases/
Modified: branches/2016Q4/audio/pulseaudio/files/patch-src_modules_module-detect.c
==============================================================================
--- branches/2016Q4/audio/pulseaudio/files/patch-src_modules_module-detect.c Fri Nov 11 03:42:50 2016 (r425859)
+++ branches/2016Q4/audio/pulseaudio/files/patch-src_modules_module-detect.c Fri Nov 11 05:19:19 2016 (r425860)
@@ -10,13 +10,52 @@
static const char* const valid_modargs[] = {
"just-one",
-@@ -157,8 +159,7 @@ static int detect_oss(pa_core *c, int ju
+@@ -157,11 +159,45 @@ static int detect_oss(pa_core *c, int ju
continue;
} else if (sscanf(line, "pcm%u: ", &device) == 1) {
- /* FreeBSD support, the devices are named /dev/dsp0.0, dsp0.1 and so on */
- pa_snprintf(args, sizeof(args), "device=/dev/dsp%u.0", device);
+ pa_snprintf(args, sizeof(args), "device=/dev/dsp%u", device);
++ pa_module *m = pa_module_load(c, "module-oss", args);
- if (!pa_module_load(c, "module-oss", args))
+- if (!pa_module_load(c, "module-oss", args))
++ if (!m)
++ continue;
++
++ if (!pa_endswith(line, "default"))
continue;
++
++ const char *p = strrchr(line, '(');
++
++ if (!p)
++ continue;
++
++ if (!c->default_sink && (strstr(p, "play") || (strstr(p, "p:") && !strstr(p, "(0p:")))) {
++ uint32_t idx = PA_IDXSET_INVALID;
++ pa_sink *s;
++ PA_IDXSET_FOREACH(s, c->sinks, idx) {
++ if (s->module == m) {
++ if (!pa_namereg_set_default_sink(c, s))
++ pa_log_error("failed to set default sink for device: /dev/dsp%u", device);
++
++ break;
++ }
++ }
++ }
++
++ if (!c->default_source && (strstr(p, "rec") || (strstr(p, "r:") && !strstr(p, "/0r:")))) {
++ uint32_t idx = PA_IDXSET_INVALID;
++ pa_source *s;
++ PA_IDXSET_FOREACH(s, c->sources, idx) {
++ if (s->module == m) {
++ if (!pa_namereg_set_default_source(c, s))
++ pa_log_error("failed to set default source for device: /dev/dsp%u", device);
++
++ break;
++ }
++ }
++ }
+ }
+
+ n++;
Modified: branches/2016Q4/audio/pulseaudio/files/pkg-message.in
==============================================================================
--- branches/2016Q4/audio/pulseaudio/files/pkg-message.in Fri Nov 11 03:42:50 2016 (r425859)
+++ branches/2016Q4/audio/pulseaudio/files/pkg-message.in Fri Nov 11 05:19:19 2016 (r425860)
@@ -1,8 +1,10 @@
+Pulseaudio tries to determine default values for FreeBSD OSS driver at first
+start, based on /dev/sndstat output. The hw.snd.default_unit sysctl may affect
+these values, but restart of the Pulseaudio might be needed to rescan it again,
+e.g. `pacmd exit`.
-Pulseaudio doesn't know about the hw.snd.default_unit=3 sysctl for the
-FreeBSD OSS driver that is used to select the active input/output. So
-for Pulseaudio we also need to tell it which input/output to use. The
-difference is that Pulseaudio has separate input and output configure lines.
+Pulseaudio has separate input and output configure lines. You can change them
+with using following commands:
To change the default sink (output):
# pacmd set-default-sink 3
@@ -11,7 +13,7 @@ To change the default source (input):
This can also be set in %%PREFIX%%/etc/pulse/default.pa
-Replace the number '3' with the new default your want to set.
+Replace the number '3' with the new default you want to set.
The audio/freedesktop-sound-theme is needed if the default sound files
More information about the svn-ports-all
mailing list