Documentation/sound/cards/sb-live-mixer.rst

Source file repositories/reference/linux-study-clean/Documentation/sound/cards/sb-live-mixer.rst

File Facts

System
Linux kernel
Corpus path
Documentation/sound/cards/sb-live-mixer.rst
Extension
.rst
Size
15806 bytes
Lines
377
Domain
Support Tooling And Documentation
Bucket
Documentation
Inferred role
Support Tooling And Documentation: documentation
Status
atlas-only

Why This File Exists

Repository support layer: documentation, build tooling, samples, user-space helper tools, generated initramfs support, licenses, and validation utilities.

Dependency Surface

Detected Declarations

Annotated Snippet

===========================================
Sound Blaster Live mixer / default DSP code
===========================================


The EMU10K1 chips have a DSP part which can be programmed to support
various ways of sample processing, which is described here.
(This article does not deal with the overall functionality of the 
EMU10K1 chips. See the manuals section for further details.)

The ALSA driver programs this portion of chip by default code
(can be altered later) which offers the following functionality:


IEC958 (S/PDIF) raw PCM
=======================

This PCM device (it's the 3rd PCM device (index 2!) and first subdevice
(index 0) for a given card) allows to forward 48kHz, stereo, 16-bit
little endian streams without any modifications to the digital output
(coaxial or optical). The universal interface allows the creation of up
to 8 raw PCM devices operating at 48kHz, 16-bit little endian. It would
be easy to add support for multichannel devices to the current code,
but the conversion routines exist only for stereo (2-channel streams)
at the time. 

Look to tram_poke routines in lowlevel/emu10k1/emufx.c for more details.


Digital mixer controls
======================

These controls are built using the DSP instructions. They offer extended
functionality. Only the default built-in code in the ALSA driver is described
here. Note that the controls work as attenuators: the maximum value is the 
neutral position leaving the signal unchanged. Note that if the same destination
is mentioned in multiple controls, the signal is accumulated and can be clipped
(set to maximal or minimal value without checking for overflow).


Explanation of used abbreviations:

DAC
	digital to analog converter
ADC
	analog to digital converter
I2S
	one-way three wire serial bus for digital sound by Philips Semiconductors
	(this standard is used for connecting standalone D/A and A/D converters)
LFE
	low frequency effects (used as subwoofer signal)
AC97
	a chip containing an analog mixer, D/A and A/D converters
IEC958
	S/PDIF
FX-bus
	the EMU10K1 chip has an effect bus containing 16 accumulators.
	Each of the synthesizer voices can feed its output to these accumulators
	and the DSP microcontroller can operate with the resulting sum.


``name='Wave Playback Volume',index=0``
---------------------------------------
This control is used to attenuate samples from left and right PCM FX-bus
accumulators. ALSA uses accumulators 0 and 1 for left and right PCM samples.
The result samples are forwarded to the front DAC PCM slots of the AC97 codec.

``name='Wave Surround Playback Volume',index=0``
------------------------------------------------
This control is used to attenuate samples from left and right PCM FX-bus

Annotation

Implementation Notes