| 1 |
1275 |
phoenix |
/proc/sound, /dev/sndstat
|
| 2 |
|
|
-------------------------
|
| 3 |
|
|
|
| 4 |
|
|
/proc/sound and /dev/sndstat is not supported by the
|
| 5 |
|
|
driver. To find out whether the driver succeeded loading,
|
| 6 |
|
|
check the kernel log (dmesg).
|
| 7 |
|
|
|
| 8 |
|
|
|
| 9 |
|
|
ALaw/uLaw sample formats
|
| 10 |
|
|
------------------------
|
| 11 |
|
|
|
| 12 |
|
|
This driver does not support the ALaw/uLaw sample formats.
|
| 13 |
|
|
ALaw is the default mode when opening a sound device
|
| 14 |
|
|
using OSS/Free. The reason for the lack of support is
|
| 15 |
|
|
that the hardware does not support these formats, and adding
|
| 16 |
|
|
conversion routines to the kernel would lead to very ugly
|
| 17 |
|
|
code in the presence of the mmap interface to the driver.
|
| 18 |
|
|
And since xquake uses mmap, mmap is considered important :-)
|
| 19 |
|
|
and no sane application uses ALaw/uLaw these days anyway.
|
| 20 |
|
|
In short, playing a Sun .au file as follows:
|
| 21 |
|
|
|
| 22 |
|
|
cat my_file.au > /dev/dsp
|
| 23 |
|
|
|
| 24 |
|
|
does not work. Instead, you may use the play script from
|
| 25 |
|
|
Chris Bagwell's sox-12.14 package (available from the URL
|
| 26 |
|
|
below) to play many different audio file formats.
|
| 27 |
|
|
The script automatically determines the audio format
|
| 28 |
|
|
and does do audio conversions if necessary.
|
| 29 |
|
|
http://home.sprynet.com/sprynet/cbagwell/projects.html
|
| 30 |
|
|
|
| 31 |
|
|
|
| 32 |
|
|
Blocking vs. nonblocking IO
|
| 33 |
|
|
---------------------------
|
| 34 |
|
|
|
| 35 |
|
|
Unlike OSS/Free this driver honours the O_NONBLOCK file flag
|
| 36 |
|
|
not only during open, but also during read and write.
|
| 37 |
|
|
This is an effort to make the sound driver interface more
|
| 38 |
|
|
regular. Timidity has problems with this; a patch
|
| 39 |
|
|
is available from http://www.ife.ee.ethz.ch/~sailer/linux/pciaudio.html.
|
| 40 |
|
|
(Timidity patched will also run on OSS/Free).
|
| 41 |
|
|
|
| 42 |
|
|
|
| 43 |
|
|
MIDI UART
|
| 44 |
|
|
---------
|
| 45 |
|
|
|
| 46 |
|
|
The driver supports a simple MIDI UART interface, with
|
| 47 |
|
|
no ioctl's supported.
|
| 48 |
|
|
|
| 49 |
|
|
|
| 50 |
|
|
MIDI synthesizer
|
| 51 |
|
|
----------------
|
| 52 |
|
|
|
| 53 |
|
|
This soundcard does not have any hardware MIDI synthesizer;
|
| 54 |
|
|
MIDI synthesis has to be done in software. To allow this
|
| 55 |
|
|
the driver/soundcard supports two PCM (/dev/dsp) interfaces.
|
| 56 |
|
|
The second one goes to the mixer "synth" setting and supports
|
| 57 |
|
|
only a limited set of sampling rates (44100, 22050, 11025, 5512).
|
| 58 |
|
|
By setting lineout to 1 on the driver command line
|
| 59 |
|
|
(eg. insmod es1370 lineout=1) it is even possible on some
|
| 60 |
|
|
cards to convert the LINEIN jack into a second LINEOUT jack, thus
|
| 61 |
|
|
making it possible to output four independent audio channels!
|
| 62 |
|
|
|
| 63 |
|
|
There is a freely available software package that allows
|
| 64 |
|
|
MIDI file playback on this soundcard called Timidity.
|
| 65 |
|
|
See http://www.cgs.fi/~tt/timidity/.
|
| 66 |
|
|
|
| 67 |
|
|
|
| 68 |
|
|
|
| 69 |
|
|
Thomas Sailer
|
| 70 |
|
|
t.sailer@alumni.ethz.ch
|