Provided by: alsa-firmware-loaders_1.2.11-1build2_amd64 bug

NAME

       cspctl - Sound Blaster 16 ASP/CSP control program

SYNOPSIS

       cspctl command [-options] <filename>

DESCRIPTION

       cspctl  is  a  simple  CSP microcode loader for Creative Sound Blaster 16ASP and some Sound Blaster AWE32
       sound cards with Creative Signal Processor (CSP) chip (CT1748A) installed.  cspctl can also be used as  a
       post-install function to snd-sb16-csp module to load default codec at module installation. If CSP chip is
       successfully  detected  and  initialized, it will be installed as a hardware dependent device hwC0D2 into
       /dev/snd directory. Currently, following codecs can be loaded to CSP device:

           wfm0001a.csp  QSound decoder
           wfm0006a.csp  A-law codec
           wfm0007a.csp  u-law codec
           wfm0011a.csp  IMA ADPCM codec (distorted output for IMA test files)
           wfm0200a.csp  Creative ADPCM codec (sounds like Intel/DVI IMA ADPCM compatible)
           wfm0202a.csp  Fast Speech 8 codec
           wfm0203a.csp  Fast Speech 10 codec

       These codecs are not yet supported by ALSA:

           wfm0201a.csp  Text2Speech decoder

       Qsound microcode file has four functions, each function is a decoder for different sample rate. Rates for
       QSound functions #1, #2, #3 and #4 are 44100,  22050,  11025  and  8000Hz  respectively.  IMA  ADPCM  and
       FastSpeech  codecs  are  formed  of two functions, the first one is for capture and the second one is for
       playback. A-law and u-law codecs have only one function.  To load for example  function  #2  from  QSound
       microcode file (decoder for 22050Hz), run as follows:

           % cspctl load -f 2 -d QSound wfm0001a.csp

       After successful loading, /proc/asound/SB16/cspD2 will show:

           Creative Signal Processor [v1.0]
           State: -x--L
           Codec: QSound [func #2]
           Sample rates: 22050Hz
           QSound decoder disabled

       With  QSound  decoder  microcode loaded, all simple PCM file formats can be played with QSound 180 degree
       positioning applied. QSound element is dynamically added into mixer structure as 3DEffect1-space element.
       It will only show if support for CSP has been compiled into ALSA drivers, CSP chip has  been  found,  and
       QSound  codec  is  loaded  into  CSP.  When  enabled, QSound position can be dynamically changed by mixer
       slider, and proc interface should follow the state of CSP chip and its current QSound position:

           Creative Signal Processor [v1.0]
           State: Qx-RL
           Codec: QSound [func #2]
           Sample rates: 22050Hz
           QSound decoder enabled
           Processing 16bit mono PCM samples
           Qsound position: left = 0x9, right = 0x9

       Driver supports autoloading of u-Law, A-Law and Ima-ADPCM hardware codecs.  Autoloading  is  active  only
       when  there  is  no  microcode loaded to CSP, and there is no need to preload appropriate *.csp files. To
       unload manually loaded microcode, you should run

           % cspctl unload

       If hardware codec microcode has been manually loaded, then CSP will support only loaded  PCM  format  and
       autoloading will be disabled. In such case, proc interface will show loaded codec properties:

           Creative Signal Processor [v1.0]
           State: -x--L
           Codec: IMA-ADPCM [func #2]
           Sample rates: All
           PCM format ID: 0x400000 (16bit/-) [mono/stereo] [playback/-]

COMMANDS

       load   Load microcode from filename to CSP.

       unload Unload microcode from CSP.

OPTIONS

       -h, --help
              Display a short help.

       -c card
              Select a card number. Option defaults to 0.

       -f function
              Select a function from microcode file. Option defaults to 1.

       -d description
              Optional microcode description string.

AUTHOR

       Uros Bizjak <uros@kss-loka.si>.

                                                 April 27, 2000                                        cspctl(1)