aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristos Margiolis <christos@FreeBSD.org>2024-02-26 23:28:53 +0000
committerChristos Margiolis <christos@FreeBSD.org>2024-02-26 23:28:53 +0000
commit8bfb23abf882afdca0a0530ef1231ac59963bc4a (patch)
treef7b21b912093b40aa09e06e17666e9f0c125c4cb
parenta9341f0f0ae01b4d249dbf3bacfa420152c46aef (diff)
downloadsrc-8bfb23abf882afdca0a0530ef1231ac59963bc4a.tar.gz
src-8bfb23abf882afdca0a0530ef1231ac59963bc4a.zip
pcm.4: Fix lint warnings
Ignore the "manual not found" warnings for snd_ai2s(4) and snd_davbus(4). Sponsored by: The FreeBSD Foundation MFC after: 2 weeks Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D43996
-rw-r--r--share/man/man4/pcm.497
1 files changed, 33 insertions, 64 deletions
diff --git a/share/man/man4/pcm.4 b/share/man/man4/pcm.4
index 54efd86a2b52..cd0d29519f0c 100644
--- a/share/man/man4/pcm.4
+++ b/share/man/man4/pcm.4
@@ -167,16 +167,16 @@ This will mute the input channel per default.
Multichannel audio, popularly referred to as
.Dq surround sound
is supported and enabled by default.
-The FreeBSD multichannel matrix processor supports up to 18 interleaved
-channels, but the limit is currently set to 8 channels (as commonly used
-for 7.1 surround sound).
+The
+.Fx
+multichannel matrix processor supports up to 18 interleaved channels, but the
+limit is currently set to 8 channels (as commonly used for 7.1 surround sound).
The internal matrix mapping can handle reduction, expansion or
re-routing of channels.
This provides a base interface for related multichannel
.Fn ioctl
support.
-Multichannel audio works both with and without
-.Tn VCHANs .
+Multichannel audio works both with and without VCHANs.
.Pp
Most bridge device drivers are still missing multichannel matrixing
support, but in most cases this should be trivial to implement.
@@ -202,21 +202,18 @@ tunable.
Each device can optionally support more playback and recording channels
than physical hardware provides by using
.Dq virtual channels
-or
-.Tn VCHANs .
-.Tn VCHAN
-options can be configured via the
+or VCHANs.
+VCHAN options can be configured via the
.Xr sysctl 8
interface but can only be manipulated while the device is inactive.
.Ss VPC
-FreeBSD supports independent and individual volume controls for each active
+.Fx
+supports independent and individual volume controls for each active
application, without touching the master
.Nm
volume.
This is sometimes referred to as Volume Per Channel (VPC).
-The
-.Tn VPC
-feature is enabled by default.
+The VPC feature is enabled by default.
.Ss Loader Tunables
The following loader tunables are used to set driver configuration at the
.Xr loader 8
@@ -238,12 +235,9 @@ Enabling this will make bass and treble controls appear in mixer applications.
This tunable is undefined by default.
Equalizing is disabled by default.
.It Va hint.pcm.%d.vpc
-Set to 1 or 0 to explicitly enable (1) or disable (0) the
-.Tn VPC
-feature.
+Set to 1 or 0 to explicitly enable (1) or disable (0) the VPC feature.
This tunable is undefined by default.
-.Tn VPC
-is however enabled by default.
+VPC is however enabled by default.
.El
.Ss Runtime Configuration
There are a number of
@@ -365,16 +359,12 @@ in possible underruns if the application cannot keep up with a rapid irq
rate, especially during high workload.
The default value is 1, which is considered a moderate/safe latency profile.
.It Va hw.snd.maxautovchans
-Global
-.Tn VCHAN
-setting that only affects devices with at least one playback or recording channel available.
-The sound system will dynamically create up to this many
-.Tn VCHANs .
+Global VCHAN setting that only affects devices with at least one playback or
+recording channel available.
+The sound system will dynamically create up to this many VCHANs.
Set to
.Dq 0
-if no
-.Tn VCHANs
-are desired.
+if no VCHANs are desired.
Maximum value is 256.
.It Va hw.snd.report_soft_formats
Controls the internal format conversion if it is
@@ -419,13 +409,11 @@ This means that any changes to the volume will be lost.
Enabling this will preserve the volume, at the cost of possible confusion
when applications tries to re-open the same device.
.It Va hw.snd.vpc_mixer_bypass
-The recommended way to use the
-.Tn VPC
-feature is to teach applications to use
-the correct
+The recommended way to use the VPC feature is to teach applications to use the
+correct
.Fn ioctl :
-.Dv SNDCTL_DSP_GETPLAYVOL, SNDCTL_DSP_SETPLAYVOL,
-.Dv SNDCTL_DSP_SETRECVOL, SNDCTL_DSP_SETRECVOL.
+.Dv SNDCTL_DSP_GETPLAYVOL , SNDCTL_DSP_SETPLAYVOL ,
+.Dv SNDCTL_DSP_SETRECVOL , SNDCTL_DSP_SETRECVOL .
This is however not always possible.
Enable this to allow applications to use their own existing mixer logic
to control their own channel volume.
@@ -438,30 +426,19 @@ matrixing, rate converting and equalizing.
The pure
.Nm
stream will be fed directly to the hardware.
-If
-.Tn VCHANs
-are enabled, the bitperfect mode will use the
-.Tn VCHAN
-format/rate as the definitive format/rate target.
-The recommended way to use bitperfect mode is to disable
-.Tn VCHANs
-and enable this sysctl.
+If VCHANs are enabled, the bitperfect mode will use the VCHAN format/rate as
+the definitive format/rate target.
+The recommended way to use bitperfect mode is to disable VCHANs and enable this
+sysctl.
Default is disabled.
.It Va dev.pcm.%d.[play|rec].vchans
-The current number of
-.Tn VCHANs
-allocated per device.
-This can be set to preallocate a certain number of
-.Tn VCHANs .
+The current number of VCHANs allocated per device.
+This can be set to preallocate a certain number of VCHANs.
Setting this value to
.Dq 0
-will disable
-.Tn VCHANs
-for this device.
+will disable VCHANs for this device.
.It Va dev.pcm.%d.[play|rec].vchanformat
-Format for
-.Tn VCHAN
-mixing.
+Format for VCHAN mixing.
All playback paths will be converted to this format before the mixing
process begins.
By default only 2 channels are enabled.
@@ -491,8 +468,7 @@ Quadraphonic, 4 channels (front/rear left and right).
8 channels (4.0 + center + LFE + left and right side).
.El
.It Va dev.pcm.%d.[play|rec].vchanmode
-.Tn VCHAN
-format/rate selection.
+VCHAN format/rate selection.
Available options include:
.Bl -tag -width 2n
.It fixed
@@ -527,9 +503,7 @@ The downside is that the hardware DMA mode needs to be restarted, which may
cause annoying pops or clicks.
.El
.It Va dev.pcm.%d.[play|rec].vchanrate
-Sample rate speed for
-.Tn VCHAN
-mixing.
+Sample rate speed for VCHAN mixing.
All playback paths will be converted to this sample rate before the mixing
process begins.
.It Va dev.pcm.%d.polling
@@ -552,17 +526,12 @@ Channel statistics are only kept while the device is open.
So with situations involving overruns and underruns, consider the output
while the errant application is open and running.
.Ss IOCTL Support
-The driver supports most of the
-.Tn OSS
+The driver supports most of the OSS
.Fn ioctl
functions, and most applications work unmodified.
A few differences exist, while memory mapped playback is
-supported natively and in
-.Tn Linux
-emulation, memory mapped recording is
-not due to
-.Tn VM
-system design.
+supported natively and in Linux emulation, memory mapped recording is not due
+to VM system design.
As a consequence, some applications may need to be recompiled
with a slightly modified audio module.
See