|
NAMEsnd_emu10kx —
Creative SoundBlaster Live! and Audigy sound cards device
driver
SYNOPSISTo compile this driver into the kernel, place the following lines in your kernel configuration file:device sound
device snd_emu10kx Alternatively, to load the driver as a module at boot time, place the following line in loader.conf(5): snd_emu10kx_load="YES" DESCRIPTIONThesnd_emu10kx bridge driver allows the generic audio
driver
sound(4)
to attach to Creative sound cards based on the EMU10K1, CA0100, CA0101, CA0102
and CA0108 DSPs.
The HARDWAREThesnd_emu10kx driver supports the following sound
cards:
The
MULTICHANNEL PLAYBACKBy default thesnd_emu10kx driver is loaded with
multichannel playback capabilities enabled. If you do not set the
hint.emu10kx.0.multichannel_disabled option in your
loader.conf(5)
configuration file you will get up to five DSP devices, one for each sound
card output. You can use additional software (like
audio/pulseaudio from The Ports
Collection) to do sound stream demultiplexing. Only “FRONT”
output can play and record sound from external sources (like line or S/PDIF
inputs).
MULTICHANNEL RECORDINGBy default multichannel recording capabilities are not enabled when you load thesnd_emu10kx driver. If you enable the
hint.emu10kx.0.multichannel_recording option in
loader.conf(5)
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.
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. SB Live! substream map (in byte offsets, each substream is 2 bytes LE)
Audigy substream map (in byte offsets, each substream is 2 bytes LE)
OSS MIXER CONTROLSThese are the controls available through the standard OSS programming interface. You can use mixer(8) to change them.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.
Other OSS mixer controls control the inputs of the AC97 codec. PRIVATE DEVICE CONTROLSYou can control some of EMU10Kx's operation and configuration parameters through dev.emu10kx.⟨X⟩ sysctls. These sysctl(8) values are temporary and should not be relied upon.DRIVER CONFIGURATIONLoader tunables are used to set driver configuration. Tunables can be set at the loader(8) prompt before booting the kernel or they can be stored in /boot/loader.conf. These tunables cannot be changed from a machine sysctl(8) entry after boot, but you can change them using kenv(1) before loading thesnd_emu10kx driver.
FILES
SEE ALSOsound(4)HISTORYThesnd_emu10kx device driver first appeared in
FreeBSD 7.0.
AUTHORSThe PCM part of the driver is based on the snd_emu10k1(4) SB Live! driver by Cameron Grant <cg@FreeBSD.org>. The MIDI interface is based on the snd_emu10k1(4) MIDI interface code by Mathew Kanner <matk@FreeBSD.org>. Thesnd_emu10kx device driver and this manual page were
written by Yuriy Tsibizov.
BUGSThe driver does not detect lost S/PDIF signals and produces noise when S/PDIF is not connected and S/PDIF volume is not zero.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). The MIDI driver cannot detect the presence of Live!Drive or AudigyDrive breakout boxes and tries to enable the IR receiver on them anyway.
Visit the GSP FreeBSD Man Page Interface. |