linux/Documentation/sound/alsa/Audigy-mixer.txt
<<
>>
Prefs
   1
   2                Sound Blaster Audigy mixer / default DSP code
   3                ===========================================
   4
   5This is based on SB-Live-mixer.txt.
   6
   7The EMU10K2 chips have a DSP part which can be programmed to support 
   8various ways of sample processing, which is described here.
   9(This article does not deal with the overall functionality of the 
  10EMU10K2 chips. See the manuals section for further details.)
  11
  12The ALSA driver programs this portion of chip by default code
  13(can be altered later) which offers the following functionality:
  14
  15
  161) Digital mixer controls
  17-------------------------
  18
  19These controls are built using the DSP instructions. They offer extended
  20functionality. Only the default build-in code in the ALSA driver is described
  21here. Note that the controls work as attenuators: the maximum value is the 
  22neutral position leaving the signal unchanged. Note that if the  same destination 
  23is mentioned in multiple controls, the signal is accumulated and can be wrapped 
  24(set to maximal or minimal value without checking of overflow).
  25
  26
  27Explanation of used abbreviations:
  28
  29DAC    - digital to analog converter
  30ADC    - analog to digital converter
  31I2S    - one-way three wire serial bus for digital sound by Philips Semiconductors
  32         (this standard is used for connecting standalone DAC and ADC converters)
  33LFE    - low frequency effects (subwoofer signal)
  34AC97   - a chip containing an analog mixer, DAC and ADC converters
  35IEC958 - S/PDIF
  36FX-bus - the EMU10K2 chip has an effect bus containing 64 accumulators.
  37         Each of the synthesizer voices can feed its output to these accumulators
  38         and the DSP microcontroller can operate with the resulting sum.
  39
  40name='PCM Front Playback Volume',index=0
  41
  42This control is used to attenuate samples for left and right front PCM FX-bus
  43accumulators. ALSA uses accumulators 8 and 9 for left and right front PCM 
  44samples for 5.1 playback. The result samples are forwarded to the front DAC PCM 
  45slots of the Philips DAC.
  46
  47name='PCM Surround Playback Volume',index=0
  48
  49This control is used to attenuate samples for left and right surround PCM FX-bus
  50accumulators. ALSA uses accumulators 2 and 3 for left and right surround PCM 
  51samples for 5.1 playback. The result samples are forwarded to the surround DAC PCM 
  52slots of the Philips DAC.
  53
  54name='PCM Center Playback Volume',index=0
  55
  56This control is used to attenuate samples for center PCM FX-bus accumulator.
  57ALSA uses accumulator 6 for center PCM sample for 5.1 playback. The result sample
  58is forwarded to the center DAC PCM slot of the Philips DAC.
  59
  60name='PCM LFE Playback Volume',index=0
  61
  62This control is used to attenuate sample for LFE PCM FX-bus accumulator. 
  63ALSA uses accumulator 7 for LFE PCM sample for 5.1 playback. The result sample 
  64is forwarded to the LFE DAC PCM slot of the Philips DAC.
  65
  66name='PCM Playback Volume',index=0
  67
  68This control is used to attenuate samples for left and right PCM FX-bus
  69accumulators. ALSA uses accumulators 0 and 1 for left and right PCM samples for
  70stereo playback. The result samples are forwarded to the front DAC PCM slots 
  71of the Philips DAC.
  72
  73name='PCM Capture Volume',index=0
  74
  75This control is used to attenuate samples for left and right PCM FX-bus
  76accumulator. ALSA uses accumulators 0 and 1 for left and right PCM.
  77The result is forwarded to the ADC capture FIFO (thus to the standard capture
  78PCM device).
  79
  80name='Music Playback Volume',index=0
  81
  82This control is used to attenuate samples for left and right MIDI FX-bus
  83accumulators. ALSA uses accumulators 4 and 5 for left and right MIDI samples.
  84The result samples are forwarded to the front DAC PCM slots of the AC97 codec.
  85
  86name='Music Capture Volume',index=0
  87
  88These controls are used to attenuate samples for left and right MIDI FX-bus
  89accumulator. ALSA uses accumulators 4 and 5 for left and right PCM.
  90The result is forwarded to the ADC capture FIFO (thus to the standard capture
  91PCM device).
  92
  93name='Mic Playback Volume',index=0
  94
  95This control is used to attenuate samples for left and right Mic input.
  96For Mic input is used AC97 codec. The result samples are forwarded to 
  97the front DAC PCM slots of the Philips DAC. Samples are forwarded to Mic
  98capture FIFO (device 1 - 16bit/8KHz mono) too without volume control.
  99
 100name='Mic Capture Volume',index=0
 101
 102This control is used to attenuate samples for left and right Mic input.
 103The result is forwarded to the ADC capture FIFO (thus to the standard capture
 104PCM device).
 105
 106name='Audigy CD Playback Volume',index=0
 107
 108This control is used to attenuate samples from left and right IEC958 TTL
 109digital inputs (usually used by a CDROM drive). The result samples are
 110forwarded to the front DAC PCM slots of the Philips DAC.
 111
 112name='Audigy CD Capture Volume',index=0
 113
 114This control is used to attenuate samples from left and right IEC958 TTL
 115digital inputs (usually used by a CDROM drive). The result samples are
 116forwarded to the ADC capture FIFO (thus to the standard capture PCM device).
 117
 118name='IEC958 Optical Playback Volume',index=0
 119
 120This control is used to attenuate samples from left and right IEC958 optical
 121digital input. The result samples are forwarded to the front DAC PCM slots
 122of the Philips DAC.
 123
 124name='IEC958 Optical Capture Volume',index=0
 125
 126This control is used to attenuate samples from left and right IEC958 optical
 127digital inputs. The result samples are forwarded to the ADC capture FIFO
 128(thus to the standard capture PCM device).
 129
 130name='Line2 Playback Volume',index=0
 131
 132This control is used to attenuate samples from left and right I2S ADC
 133inputs (on the AudigyDrive). The result samples are forwarded to the front
 134DAC PCM slots of the Philips DAC.
 135
 136name='Line2 Capture Volume',index=1
 137
 138This control is used to attenuate samples from left and right I2S ADC
 139inputs (on the AudigyDrive). The result samples are forwarded to the ADC
 140capture FIFO (thus to the standard capture PCM device).
 141
 142name='Analog Mix Playback Volume',index=0
 143
 144This control is used to attenuate samples from left and right I2S ADC
 145inputs from Philips ADC. The result samples are forwarded to the front
 146DAC PCM slots of the Philips DAC. This contains mix from analog sources
 147like CD, Line In, Aux, ....
 148
 149name='Analog Mix Capture Volume',index=1
 150
 151This control is used to attenuate samples from left and right I2S ADC
 152inputs Philips ADC. The result samples are forwarded to the ADC
 153capture FIFO (thus to the standard capture PCM device).
 154
 155name='Aux2 Playback Volume',index=0
 156
 157This control is used to attenuate samples from left and right I2S ADC
 158inputs (on the AudigyDrive). The result samples are forwarded to the front
 159DAC PCM slots of the Philips DAC.
 160
 161name='Aux2 Capture Volume',index=1
 162
 163This control is used to attenuate samples from left and right I2S ADC
 164inputs (on the AudigyDrive). The result samples are forwarded to the ADC
 165capture FIFO (thus to the standard capture PCM device).
 166
 167name='Front Playback Volume',index=0
 168
 169All stereo signals are mixed together and mirrored to surround, center and LFE.
 170This control is used to attenuate samples for left and right front speakers of
 171this mix.
 172
 173name='Surround Playback Volume',index=0
 174
 175All stereo signals are mixed together and mirrored to surround, center and LFE.
 176This control is used to attenuate samples for left and right surround speakers of
 177this mix.
 178
 179name='Center Playback Volume',index=0
 180
 181All stereo signals are mixed together and mirrored to surround, center and LFE.
 182This control is used to attenuate sample for center speaker of this mix.
 183
 184name='LFE Playback Volume',index=0
 185
 186All stereo signals are mixed together and mirrored to surround, center and LFE.
 187This control is used to attenuate sample for LFE speaker of this mix.
 188
 189name='Tone Control - Switch',index=0
 190
 191This control turns the tone control on or off. The samples for front, rear
 192and center / LFE outputs are affected.
 193
 194name='Tone Control - Bass',index=0
 195
 196This control sets the bass intensity. There is no neutral value!!
 197When the tone control code is activated, the samples are always modified.
 198The closest value to pure signal is 20.
 199
 200name='Tone Control - Treble',index=0
 201
 202This control sets the treble intensity. There is no neutral value!!
 203When the tone control code is activated, the samples are always modified.
 204The closest value to pure signal is 20.
 205
 206name='Master Playback Volume',index=0
 207
 208This control is used to attenuate samples for front, surround, center and 
 209LFE outputs.
 210
 211name='IEC958 Optical Raw Playback Switch',index=0
 212
 213If this switch is on, then the samples for the IEC958 (S/PDIF) digital
 214output are taken only from the raw FX8010 PCM, otherwise standard front
 215PCM samples are taken.
 216
 217
 2182) PCM stream related controls
 219------------------------------
 220
 221name='EMU10K1 PCM Volume',index 0-31
 222
 223Channel volume attenuation in range 0-0xffff. The maximum value (no
 224attenuation) is default. The channel mapping for three values is
 225as follows:
 226
 227        0 - mono, default 0xffff (no attenuation)
 228        1 - left, default 0xffff (no attenuation)
 229        2 - right, default 0xffff (no attenuation)
 230
 231name='EMU10K1 PCM Send Routing',index 0-31
 232
 233This control specifies the destination - FX-bus accumulators. There 24
 234values with this mapping:
 235
 236         0 -  mono, A destination (FX-bus 0-63), default 0
 237         1 -  mono, B destination (FX-bus 0-63), default 1
 238         2 -  mono, C destination (FX-bus 0-63), default 2
 239         3 -  mono, D destination (FX-bus 0-63), default 3
 240         4 -  mono, E destination (FX-bus 0-63), default 0
 241         5 -  mono, F destination (FX-bus 0-63), default 0
 242         6 -  mono, G destination (FX-bus 0-63), default 0
 243         7 -  mono, H destination (FX-bus 0-63), default 0
 244         8 -  left, A destination (FX-bus 0-63), default 0
 245         9 -  left, B destination (FX-bus 0-63), default 1
 246        10 -  left, C destination (FX-bus 0-63), default 2
 247        11 -  left, D destination (FX-bus 0-63), default 3
 248        12 -  left, E destination (FX-bus 0-63), default 0
 249        13 -  left, F destination (FX-bus 0-63), default 0
 250        14 -  left, G destination (FX-bus 0-63), default 0
 251        15 -  left, H destination (FX-bus 0-63), default 0
 252        16 - right, A destination (FX-bus 0-63), default 0
 253        17 - right, B destination (FX-bus 0-63), default 1
 254        18 - right, C destination (FX-bus 0-63), default 2
 255        19 - right, D destination (FX-bus 0-63), default 3
 256        20 - right, E destination (FX-bus 0-63), default 0
 257        21 - right, F destination (FX-bus 0-63), default 0
 258        22 - right, G destination (FX-bus 0-63), default 0
 259        23 - right, H destination (FX-bus 0-63), default 0
 260
 261Don't forget that it's illegal to assign a channel to the same FX-bus accumulator 
 262more than once (it means 0=0 && 1=0 is an invalid combination).
 263 
 264name='EMU10K1 PCM Send Volume',index 0-31
 265
 266It specifies the attenuation (amount) for given destination in range 0-255.
 267The channel mapping is following:
 268
 269         0 -  mono, A destination attn, default 255 (no attenuation)
 270         1 -  mono, B destination attn, default 255 (no attenuation)
 271         2 -  mono, C destination attn, default 0 (mute)
 272         3 -  mono, D destination attn, default 0 (mute)
 273         4 -  mono, E destination attn, default 0 (mute)
 274         5 -  mono, F destination attn, default 0 (mute)
 275         6 -  mono, G destination attn, default 0 (mute)
 276         7 -  mono, H destination attn, default 0 (mute)
 277         8 -  left, A destination attn, default 255 (no attenuation)
 278         9 -  left, B destination attn, default 0 (mute)
 279        10 -  left, C destination attn, default 0 (mute)
 280        11 -  left, D destination attn, default 0 (mute)
 281        12 -  left, E destination attn, default 0 (mute)
 282        13 -  left, F destination attn, default 0 (mute)
 283        14 -  left, G destination attn, default 0 (mute)
 284        15 -  left, H destination attn, default 0 (mute)
 285        16 - right, A destination attn, default 0 (mute)
 286        17 - right, B destination attn, default 255 (no attenuation)
 287        18 - right, C destination attn, default 0 (mute)
 288        19 - right, D destination attn, default 0 (mute)
 289        20 - right, E destination attn, default 0 (mute)
 290        21 - right, F destination attn, default 0 (mute)
 291        22 - right, G destination attn, default 0 (mute)
 292        23 - right, H destination attn, default 0 (mute)
 293
 294
 295
 2964) MANUALS/PATENTS:
 297-------------------
 298
 299ftp://opensource.creative.com/pub/doc
 300-------------------------------------
 301
 302        Files:
 303        LM4545.pdf      AC97 Codec
 304
 305        m2049.pdf       The EMU10K1 Digital Audio Processor
 306
 307        hog63.ps        FX8010 - A DSP Chip Architecture for Audio Effects
 308
 309
 310WIPO Patents
 311------------
 312        Patent numbers:
 313        WO 9901813 (A1) Audio Effects Processor with multiple asynchronous (Jan. 14, 1999)
 314                        streams
 315
 316        WO 9901814 (A1) Processor with Instruction Set for Audio Effects (Jan. 14, 1999)
 317
 318        WO 9901953 (A1) Audio Effects Processor having Decoupled Instruction
 319                        Execution and Audio Data Sequencing (Jan. 14, 1999)
 320
 321
 322US Patents (http://www.uspto.gov/)
 323----------------------------------
 324
 325        US 5925841      Digital Sampling Instrument employing cache memory (Jul. 20, 1999)
 326
 327        US 5928342      Audio Effects Processor integrated on a single chip (Jul. 27, 1999)
 328                        with a multiport memory onto which multiple asynchronous
 329                        digital sound samples can be concurrently loaded
 330
 331        US 5930158      Processor with Instruction Set for Audio Effects (Jul. 27, 1999)
 332
 333        US 6032235      Memory initialization circuit (Tram) (Feb. 29, 2000)
 334
 335        US 6138207      Interpolation looping of audio samples in cache connected to    (Oct. 24, 2000)
 336                        system bus with prioritization and modification of bus transfers
 337                        in accordance with loop ends and minimum block sizes
 338
 339        US 6151670      Method for conserving memory storage using a (Nov. 21, 2000)
 340                        pool of  short term memory registers
 341
 342        US 6195715      Interrupt control for multiple programs communicating with      (Feb. 27, 2001)
 343                        a common interrupt by associating programs to GP registers,
 344                        defining interrupt register, polling GP registers, and invoking
 345                        callback routine associated with defined interrupt register
 346
lxr.linux.no kindly hosted by Redpill Linpro AS, provider of Linux consulting and operations services since 1995.