diff options
Diffstat (limited to 'static/freebsd/man4/snd_emu10kx.4 3.html')
| -rw-r--r-- | static/freebsd/man4/snd_emu10kx.4 3.html | 267 |
1 files changed, 267 insertions, 0 deletions
diff --git a/static/freebsd/man4/snd_emu10kx.4 3.html b/static/freebsd/man4/snd_emu10kx.4 3.html new file mode 100644 index 00000000..20f9eb64 --- /dev/null +++ b/static/freebsd/man4/snd_emu10kx.4 3.html @@ -0,0 +1,267 @@ +<table class="head"> + <tr> + <td class="head-ltitle">SND_EMU10KX(4)</td> + <td class="head-vol">Device Drivers Manual</td> + <td class="head-rtitle">SND_EMU10KX(4)</td> + </tr> +</table> +<div class="manual-text"> +<section class="Sh"> +<h1 class="Sh" id="NAME"><a class="permalink" href="#NAME">NAME</a></h1> +<p class="Pp"><code class="Nm">snd_emu10kx</code> — + <span class="Nd">Creative SoundBlaster Live! and Audigy sound cards device + driver</span></p> +</section> +<section class="Sh"> +<h1 class="Sh" id="SYNOPSIS"><a class="permalink" href="#SYNOPSIS">SYNOPSIS</a></h1> +<p class="Pp">To compile this driver into the kernel, place the following lines + in your kernel configuration file:</p> +<div class="Bd Pp Bd-indent"><code class="Cd">device sound</code> +<br/> +<code class="Cd">device snd_emu10kx</code></div> +<p class="Pp">Alternatively, to load the driver as a module at boot time, place + the following line in <a class="Xr">loader.conf(5)</a>:</p> +<div class="Bd Pp Bd-indent Li"> +<pre>snd_emu10kx_load="YES"</pre> +</div> +</section> +<section class="Sh"> +<h1 class="Sh" id="DESCRIPTION"><a class="permalink" href="#DESCRIPTION">DESCRIPTION</a></h1> +<p class="Pp">The <code class="Nm">snd_emu10kx</code> bridge driver allows the + generic audio driver <a class="Xr">sound(4)</a> to attach to Creative sound + cards based on the EMU10K1, CA0100, CA0101, CA0102 and CA0108 DSPs.</p> +<p class="Pp">The <code class="Nm">snd_emu10kx</code> sound cards have a PCM + part, which is accessible through one to five <a class="Xr">pcm(4)</a> + devices (see <a class="Sx" href="#MULTICHANNEL_PLAYBACK">MULTICHANNEL + PLAYBACK</a> for details), and MPU401-compatible MIDI I/O controller, which + is accessible through the midi device. Wave table synthesizer support is not + available.</p> +</section> +<section class="Sh"> +<h1 class="Sh" id="HARDWARE"><a class="permalink" href="#HARDWARE">HARDWARE</a></h1> +<p class="Pp">The <code class="Nm">snd_emu10kx</code> driver supports the + following sound cards:</p> +<p class="Pp"></p> +<ul class="Bl-bullet Bl-compact"> + <li>Creative Sound Blaster Live! (EMU10K1 Chipset). Both PCM and MIDI + interfaces are available.</li> + <li>Creative Sound Blaster Audigy (CA0100 and CA0101 Chipset). PCM and two + MIDI interfaces available.</li> + <li>Creative Sound Blaster Audigy 2 and Creative Sound Blaster Audigy 4 + (CA0102 Chipset). PCM support is limited to 48kHz/16 bit stereo (192kHz/24 + bit part of this chipset is not supported).</li> + <li>Creative Sound Blaster Audigy 2 Value (CA0108 Chipset). PCM support is + limited to 48kHz/16 bit stereo (192kHz/24 bit part of this chipset is not + supported). There is no MIDI support for this card.</li> +</ul> +<p class="Pp" id="not">The <code class="Nm">snd_emu10kx</code> driver does + <a class="permalink" href="#not"><i class="Em">not</i></a> support the + following sound cards (although they have names similar to some supported + ones):</p> +<p class="Pp"></p> +<ul class="Bl-bullet Bl-compact"> + <li>Creative Sound Blaster Live! 24-Bit, identified by + <span class="Ux">FreeBSD</span> as "<code class="Li">emu10k1x + Soundblaster Live! 5.1</code>".</li> + <li>Creative Sound Blaster Audigy LS / ES, identified by + <span class="Ux">FreeBSD</span> as "<code class="Li">CA0106-DAT + Audigy LS</code>".</li> + <li>All other Creative sound cards with -DAT chipsets.</li> + <li>All Creative X-Fi series sound cards.</li> +</ul> +</section> +<section class="Sh"> +<h1 class="Sh" id="MULTICHANNEL_PLAYBACK"><a class="permalink" href="#MULTICHANNEL_PLAYBACK">MULTICHANNEL + PLAYBACK</a></h1> +<p class="Pp">By default the <code class="Nm">snd_emu10kx</code> driver is + loaded with multichannel playback capabilities enabled. If you do not set + the <code class="Dv">hint.emu10kx.0.multichannel_disabled</code> option in + your <a class="Xr">loader.conf(5)</a> configuration file you will get up to + five DSP devices, one for each sound card output. You can use additional + software (like + <a class="permalink" href="#audio/pulseaudio"><i class="Em" id="audio/pulseaudio">audio/pulseaudio</i></a> + from <a class="permalink" href="#The"><i class="Em" id="The">The Ports + Collection</i></a>) to do sound stream demultiplexing. Only + “FRONT” output can play and record sound from external sources + (like line or S/PDIF inputs).</p> +</section> +<section class="Sh"> +<h1 class="Sh" id="MULTICHANNEL_RECORDING"><a class="permalink" href="#MULTICHANNEL_RECORDING">MULTICHANNEL + RECORDING</a></h1> +<p class="Pp">By default multichannel recording capabilities are not enabled + when you load the <code class="Nm">snd_emu10kx</code> driver. If you enable + the <code class="Dv">hint.emu10kx.0.multichannel_recording</code> option in + <a class="Xr">loader.conf(5)</a> you will get one more DSP device that is + rate-locked to 48kHz/16bit/mono. This is actually 48kHz/16bit/32 channels on + SB Live! cards and 48kHz/16bit/64channels on Audigy cards, but the current + implementation of the sound subsystem does not support such an amount of PCM + channels. This device can not be opened for read, thus confusing many + applications.</p> +<p class="Pp">Within a multichannel stream, the first half (0-15 or 0-31) is a + copy of all DSP outputs, the second half (15-30 or 32-63) is a copy of some + DSP inputs. On Live! cards the last substream (31) is used as a sync stream + and is always set to 0xc0de. Audigy cards do not need such sync data, + because a stream always starts with substream 0.</p> +<section class="Ss"> +<h2 class="Ss" id="SB_Live!_substream_map_(in_byte_offsets,_each_substream_is_2_bytes_LE)"><a class="permalink" href="#SB_Live!_substream_map_(in_byte_offsets,_each_substream_is_2_bytes_LE)">SB + Live! substream map (in byte offsets, each substream is 2 bytes LE)</a></h2> +<dl class="Bl-tag"> + <dt id="Offset"><a class="permalink" href="#Offset"><code class="Dv">Offset</code></a></dt> + <dd>Substream</dd> + <dt>+0x00..+0x1E</dt> + <dd>PCM streams 0..15</dd> + <dt>+0x20, +0x22</dt> + <dd>Empty</dd> + <dt>+0x24..+0x2A</dt> + <dd>PCM inputs: front left, front right, rear left, rear right, center, + sub</dd> + <dt>+0x2C..+0x3C</dt> + <dd>DSP inputs 0..8:</dd> + <dt>+0x3E</dt> + <dd>sync substream (0xc0de)</dd> +</dl> +</section> +<section class="Ss"> +<h2 class="Ss" id="Audigy_substream_map_(in_byte_offsets,_each_substream_is_2_bytes_LE)"><a class="permalink" href="#Audigy_substream_map_(in_byte_offsets,_each_substream_is_2_bytes_LE)">Audigy + substream map (in byte offsets, each substream is 2 bytes LE)</a></h2> +<dl class="Bl-tag"> + <dt id="Offset~2"><a class="permalink" href="#Offset~2"><code class="Dv">Offset</code></a></dt> + <dd>Substream</dd> + <dt>+0x00..+0x3E</dt> + <dd>PCM streams 0..31</dd> + <dt>+0x40..+0x5E</dt> + <dd>PCM inputs: front LR, rear LR, center, sub, ...</dd> + <dt>+0x60..+0x7E</dt> + <dd>DSP inputs 0..16</dd> +</dl> +</section> +</section> +<section class="Sh"> +<h1 class="Sh" id="OSS_MIXER_CONTROLS"><a class="permalink" href="#OSS_MIXER_CONTROLS">OSS + MIXER CONTROLS</a></h1> +<p class="Pp">These are the controls available through the standard OSS + programming interface. You can use <a class="Xr">mixer(8)</a> to change + them.</p> +<p class="Pp">On EMU10K1-based cards the OSS mixer directly controls the AC97 + codec. On newer cards the OSS mixer controls some parameters of the AC97 + codec and some DSP-based mixer controls.</p> +<dl class="Bl-inset"> + <dt>"vol"</dt> + <dd>mixer control for the overall sound volume.</dd> + <dt>"pcm"</dt> + <dd>mixer control for the PCM playback volume. It controls only front output + volume in multichannel mode and all output volume in single channel + mode.</dd> + <dt>"rec"</dt> + <dd>mixer control acts very differently on EMU10K1 and other cards. On EMU10K1 + cards it controls the AC97 codec recording level. On non-EMU10K1 cards it + controls the amount of AC97 “stereo mix” + <br/> + entering the DSP. AC97 recording level and AC97 recording source are fixed + on CA0100, CA0101, CA0102 and CA0108 cards. The AC97 recording levels are + always set to maximum and recording source is always + “<code class="Li">stereo mix</code>”.</dd> + <dt>"dig1"</dt> + <dd>is a CD S/PDIF (on-card) volume control</dd> + <dt>"dig2"</dt> + <dd>is an AudigyDrive S/PDIF (Audigy series) or TOSLink (SB Live! series) + volume control</dd> + <dt>"dig3"</dt> + <dd>is an on-card S/PDIF volume control</dd> + <dt>"line2"</dt> + <dd>is AudigyDrive "Line In 2" volume control</dd> + <dt>"line3"</dt> + <dd>is AudigyDrive "AUX In 2" volume control</dd> +</dl> +<p class="Pp">Other OSS mixer controls control the inputs of the AC97 codec.</p> +</section> +<section class="Sh"> +<h1 class="Sh" id="PRIVATE_DEVICE_CONTROLS"><a class="permalink" href="#PRIVATE_DEVICE_CONTROLS">PRIVATE + DEVICE CONTROLS</a></h1> +<p class="Pp">You can control some of EMU10Kx's operation and configuration + parameters through + <var class="Va">dev.emu10kx.</var>⟨<var class="Ar">X</var>⟩ + sysctls. These <a class="Xr">sysctl(8)</a> values are temporary and should + not be relied upon.</p> +</section> +<section class="Sh"> +<h1 class="Sh" id="DRIVER_CONFIGURATION"><a class="permalink" href="#DRIVER_CONFIGURATION">DRIVER + CONFIGURATION</a></h1> +<p class="Pp">Loader tunables are used to set driver configuration. Tunables can + be set at the <a class="Xr">loader(8)</a> prompt before booting the kernel + or they can be stored in <span class="Pa">/boot/loader.conf</span>. These + tunables cannot be changed from a machine <a class="Xr">sysctl(8)</a> entry + after boot, but you can change them using <a class="Xr">kenv(1)</a> before + loading the <code class="Nm">snd_emu10kx</code> driver.</p> +<dl class="Bl-tag"> + <dt id="hint.emu10kx."><var class="Va">hint.emu10kx.</var>⟨<var class="Ar">X</var>⟩<var class="Va">.disabled</var></dt> + <dd>Disables loading a driver instance.</dd> + <dt id="hint.emu10kx.~2"><var class="Va">hint.emu10kx.</var>⟨<var class="Ar">X</var>⟩<var class="Va">.multichannel_disabled</var></dt> + <dd>Disables multichannel playback support, when one card is represented as + several PCM devices.</dd> + <dt id="hint.emu10kx.~3"><var class="Va">hint.emu10kx.</var>⟨<var class="Ar">X</var>⟩<var class="Va">.multichannel_recording</var></dt> + <dd>Enables experimental multichannel recording support.</dd> + <dt id="hint.emu10kx.~4"><var class="Va">hint.emu10kx.</var>⟨<var class="Ar">X</var>⟩<var class="Va">.debug</var></dt> + <dd>Set debug output level. + <dl class="Bl-tag"> + <dt>0</dt> + <dd>No additional debug options enabled</dd> + <dt>1</dt> + <dd>Enables all DSP outputs to be connected, even those that are known to + be unused on a particular card.</dd> + <dt>2</dt> + <dd>Additional debug messages about in-driver events will be printed.</dd> + <dt>2</dt> + <dd>Additional debug messages will be printed when memory allocation + fails.</dd> + </dl> + </dd> +</dl> +</section> +<section class="Sh"> +<h1 class="Sh" id="FILES"><a class="permalink" href="#FILES">FILES</a></h1> +<dl class="Bl-tag Bl-compact"> + <dt><span class="Pa">/dev/emu10kx?</span></dt> + <dd><code class="Nm">snd_emu10kx</code> management interface</dd> +</dl> +</section> +<section class="Sh"> +<h1 class="Sh" id="SEE_ALSO"><a class="permalink" href="#SEE_ALSO">SEE + ALSO</a></h1> +<p class="Pp"><a class="Xr">sound(4)</a></p> +</section> +<section class="Sh"> +<h1 class="Sh" id="HISTORY"><a class="permalink" href="#HISTORY">HISTORY</a></h1> +<p class="Pp">The <code class="Nm">snd_emu10kx</code> device driver first + appeared in <span class="Ux">FreeBSD 7.0</span>.</p> +</section> +<section class="Sh"> +<h1 class="Sh" id="AUTHORS"><a class="permalink" href="#AUTHORS">AUTHORS</a></h1> +<p class="Pp">The PCM part of the driver is based on the + <a class="Xr">snd_emu10k1(4)</a> SB Live! driver by <span class="An">Cameron + Grant</span> + <<a class="Mt" href="mailto:cg@FreeBSD.org">cg@FreeBSD.org</a>>. The + MIDI interface is based on the <a class="Xr">snd_emu10k1(4)</a> MIDI + interface code by <span class="An">Mathew Kanner</span> + <<a class="Mt" href="mailto:matk@FreeBSD.org">matk@FreeBSD.org</a>>. + The <code class="Nm">snd_emu10kx</code> device driver and this manual page + were written by <span class="An">Yuriy Tsibizov</span>.</p> +</section> +<section class="Sh"> +<h1 class="Sh" id="BUGS"><a class="permalink" href="#BUGS">BUGS</a></h1> +<p class="Pp">The driver does not detect lost S/PDIF signals and produces noise + when S/PDIF is not connected and S/PDIF volume is not zero.</p> +<p class="Pp">The PCM driver cannot detect the presence of Live!Drive or + AudigyDrive breakout boxes and tries to use them (and list their connectors + in the mixer).</p> +<p class="Pp">The MIDI driver cannot detect the presence of Live!Drive or + AudigyDrive breakout boxes and tries to enable the IR receiver on them + anyway.</p> +</section> +</div> +<table class="foot"> + <tr> + <td class="foot-date">May 28, 2008</td> + <td class="foot-os">FreeBSD 15.0</td> + </tr> +</table> |
