sbpro(7D) Devices sbpro(7D)NAMEsbpro - Sound Blaster Pro, Sound Blaster 16, and Sound Blaster AWE32
audio device driver
SYNOPSIS
sbpro:sound,sbpro
sbpro:sound,sbproctl
DESCRIPTION
The Creative Labs Sound Blaster family of audio cards comprises DMA-
capable ISA bus plug-in cards that provide 8 and 16 bit mono and stereo
digitized sound recording and playback over a wide range of sampling
rates. Each card includes a digital sound processor and mixing capabil‐
ity. Some of the cards also support more advanced audio features such
as FM synthesis, advanced signal processing, advanced wave effects,
and MIDI capability; however, the sbpro driver does not currently sup‐
port those advanced features. The features and interfaces supported by
the Solaris sbpro driver are described here and in audio(7I).
Some Sound Blaster cards support optional non-audio capabilities such
as SCSI interfaces and CD-ROM interfaces. These interfaces are not
supported by the sbpro driver.
The sbpro driver also supports certain Sound Blaster-compatible audio
devices, including some based on the ESS688 audio chip.
In addition, the driver supports some devices based on the Analog
Devices AD1847 and AD1848, and Crystal Semiconductor CS4231 chips. Any
CS4231-based devices supported by this driver are programmed in AD1848
compatibility mode. There is no special support in this driver for the
more advanced CS4231 features. This family of devices will be referred
to as the AD184x family.
API
The Sound Blaster device is treated as an exclusive resource, meaning
that only one process may open the device at a time. Since the Sound
Blaster hardware does not support simultaneous sound input and output,
the sbpro driver does not allow the simultaneous access of the device
by two processes, even if one tries to open it read-only and the other
write-only.
The sbpro driver will return "SUNW,sbpro" or "SUNW,sb16" in the name
field of the audio_device structure. The version field will contain the
version number of the card's DSP chip, and the config field will be
set to "SBPRO" or "SB16". The AWE32 is currently identified as an
SB16. In all subjects covered in this man page, the Sound Blaster
AWE32 behaves the same as the Sound Blaster 16.
Audio Data Formats
The Sound Blaster Pro handles 8-bit samples. In mono mode, audio data
may be sampled at rates from 4,000 to 44,100 samples per second. In
stereo mode, samples may be handled at the rates of 11,025 and 22,050
samples per second. The SB-16 can sample 8-bit or 16-bit mono or stereo
data in the range of 5,000 to 44,100 Hz. Devices in the AD184x family
can handle sample rates up to 48,000 Hz.
The Sound Blaster Pro hardware handles 8-bit linear samples in
excess-128 format. The Sound Blaster 16 handles that format as well as
16-bit linear samples in two's complement format. The sbpro driver will
generate and accept data in these formats if AUDIO_ENCODING_LINEAR is
selected in the encoding field of the audio information structure. 16
bit precision is not available on the Sound Blaster Pro. The sbpro
driver will also accept and generate mu−law format data (as in the
Greek letter mu) if the encoding field is set to AUDIO_ENCODING_ULAW.
In this case, driver software performs the translation between linear
and mu-law formats. mu-law encoding is designed to provide an improved
signal-to-noise ratio at low amplitude levels. To achieve best results
when using mu-law encoding, the audio record volume should be set so
that typical amplitude levels lie within approximately three-fourths of
the full dynamic range. Devices in the AD184x family support both mu-
law and A-law in hardware, and the driver allows either of those encod‐
ings to be selected.
Audio Ports
The Sound Blaster hardware does not support multiple output devices, so
the play.port field of the audio information structure only supports
AUDIO_HEADPHONE. Output volume is controlled by software. The volume
control thumbwheel on the back of the card should be turned all the way
up to maximum; otherwise no sound may be audible.
The record.port field of the audio information structure allows selec‐
tion of which audio source is used for recording, and may be set to one
of AUDIO_MICROPHONE, AUDIO_LINE_IN, or AUDIO_CD. These select input
from the microphone jack, line-level input jack, or internal CD input,
respectively. The microphone input is treated as a mono source by the
hardware, although the microphone jack is a stereo jack. If your
microphone has a mono plug, you should convert it to a stereo plug
using an appropriate adapter. Line and CD are stereo sources. When
recording in mono mode, both stereo channels are mixed before record‐
ing.
PRECONFIGURATION
Many audio devices come with a software utility that allows you to
select the IRQ and DMA settings. Often, this utility does not record
parameters in nonvolatile memory but in a configuration file used by
DOS to set the card's configuration at each reboot. This type of con‐
figuration file is not used by the Solaris software and does not affect
the operation of the card with the Solaris operating environment.
o Output volume is controlled by software. If you do not hear
sound, turn the volume thumbwheel on the back of the card to
the maximum volume setting.
o Line-in and aux jacks typically require line level voltages,
such as output from a tape or CD player line-out jack or
from a powered (battery-operated) microphone. Mic jacks typ‐
ically require lower voltages. Consult the manufacturer's
documentation for your device requirements.
o The Sound Blaster Pro card cannot share IRQ settings with
any other card installed in your system. If the hardware-
jumpered IRQ setting conflicts with any other device, change
the IRQ on the Sound Blaster card to one listed under Sup‐
ported Settings. The most common conflicts occur with the
LPT1 parallel port or a network card.
o For Sound Blaster 16 cards that have an on-board SCSI sub‐
system, the audio subsystem needs its own I/O (port) address
and an IRQ, distinct from those of the SCSI subsystem.
Supported Settings
Default settings differ slightly between the SB Pro, SB Pro-2 and SB
16, SB AWE32, SB Vibra 16 cards. Only the 0x220 and 0x240 settings are
supported for SB Pro and SB Pro-2 while additional addresses are sup‐
ported for the SB 16, SB AWE32, and SB Vibra 16 cards.
If your card supports Plug and Play, your device resources are config‐
ured automatically. Use the following settings for devices that don't
support Plug and Play. Defaults settings are shown in italics.
o IRQ Level: 2, 5, 7, 10
o I/O Address: 0x220, 0x240, 0x260, 0x280
o 8-bit DMA Channel: 0, 1, 3
o 16-bit DMA Channel: 5, 6, 7
Settings for the Compaq Deskpro XL and Turtle Beach Tropez Card are
provided below. For each device, the sbpro driver automatically chooses
an unused DMA channel and IRQ line.
o Compaq Deskpro XL Business Audio With Built-in AD1847 Chip —
I/O Address: 0x530, 0x604, 0xE80, 0xF40
The sbpro support for the AD1848 and compatibles uses one
DMA channel for both play and record; simultaneous
play/record is not supported.
o Turtle Beach Tropez Card With CS4231 Chip — I/O Address:
0x530 (The MWSS I/O address on the Turtle Beach Tropez card
is 0x530 at power-up. It can only be changed by software
after the system is booted, a function that the Solaris
operating environment does not perform. Therefore, the
Tropez card is only supported at I/O address 0x530.)
The Tropez card comes with a software utility for selecting
the IRQ, DMA, and MWSS compatibility I/O address settings
used by the card. However, that utility does not record
those parameters in nonvolatile memory, but in a configura‐
tion file used by DOS to set the card's configuration at
each reboot. This type of configuration file is not used by
the Solaris software and does not affect the operation of
the card with the Solaris operating environment.
Known Problems and Limitations
o Any Crystal Semiconductor CS4231-based devices supported by
this driver are programmed in AD1848-compatibility mode.
This driver does not include support for advanced CS4231
features; in particular, simultaneous play/record.
o The Sound Blaster card cannot share IRQ settings with any
other card installed in your system. The most common con‐
flicts occur with the LPT1 parallel port or a network card.
o Some devices can detect that the IRQ is in use by another
device in the system. If this occurs, the driver prints an
error message:
sbpro: MWSS_AD184x IRQ 7 is 'in use.'
To correct this, change the IRQ setting of either the audio
device or the conflicting device. (Some devices are not able
to detect such a conflict. The driver will try to use the
card, but that will likely result in the system hanging when
the card is first used. Thus, it is important to check that
the IRQ that does not conflict with another device.)
o Although the sbpro driver supports A-law encoding on AD1848
and compatible devices, audiotooldoes not and produces an
error message if you select A-law encoding. Use audioplay(1)
to play A-law encoded audio files, or use audioconvert(1) to
convert the A-law sample into a format that audiotool will
accept, such as 16-bit linear. User-written applications can
select A-law format using the sbpro driver on AD1848 and
compatible devices.
Some Compaq Deskpro XL Business Audio system units with built-in AD184x
chip have the headphone jack wired with its left and right channels
reversed. As a result, left and right output is reversed. The line-out
jack at the back of the unit works as expected. For optimum sound qual‐
ity, use external microphone and speakers and not the ones built into
the keyboard.
o Non-Plug and Play Sound Blaster 16, Sound Blaster Vibra 16,
and Sound Blaster AWE32 cards are recognized as Sound
Blaster 16 cards.
o The ISA version IBM Token Ring and compatible adapters will
not work in a system that contains a Sound Blaster card that
is configured at the default I/O port address (0x220). If
possible, move the Sound Blaster card to port address 0x240;
otherwise, remove the Sound Blaster device from the system.
FILES
/dev/audio Linked to s/dev/sound/0
/dev/audioctl Linked to /dev/sound/0ctl
/dev/sound/0 First audio device in the system
/dev/sound/0ctl Audio control for first audio device
/usr/share/audio Audio files
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
┌─────────────────────────────┬─────────────────────────────┐
│ ATTRIBUTE TYPE │ ATTRIBUTE VALUE │
├─────────────────────────────┼─────────────────────────────┤
│Architecture │x86 │
└─────────────────────────────┴─────────────────────────────┘
SEE ALSOaudioconvert(1), ioctl(2), attributes(5), audio(7I), streamio(7I)
Creative Labs, Inc. Sound Blaster Pro User Reference Manual
BUGS
The current driver implementation does not support the A-law encoding
mode for Sound Blaster and compatible devices.
The conversion of mu-law to 8-bit linear format for Sound Blaster and
compatible devices can cause a loss of precision, resulting in poor
sound quality in cases where the original recording level was well
below normal. If this occurs while using the Sound Blaster 16 card,
audioconvert(1) can be used to convert the original mu-law data to
16-bit linear format before play. This will preserve all the precision
from the original mu-law sample.
SunOS 5.10 17 May 2011 sbpro(7D)