diff options
Diffstat (limited to 'Documentation/sound/oss/sonicvibes')
-rw-r--r-- | Documentation/sound/oss/sonicvibes | 81 |
1 files changed, 81 insertions, 0 deletions
diff --git a/Documentation/sound/oss/sonicvibes b/Documentation/sound/oss/sonicvibes new file mode 100644 index 000000000000..84dee2e0b37d --- /dev/null +++ b/Documentation/sound/oss/sonicvibes | |||
@@ -0,0 +1,81 @@ | |||
1 | /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 | The card both has an OPL compatible FM synthesizer as well as | ||
54 | a wavetable synthesizer. | ||
55 | |||
56 | I haven't managed so far to get the OPL synth running. | ||
57 | |||
58 | Using the wavetable synthesizer requires allocating | ||
59 | 1-4MB of physically contiguous memory, which isn't possible | ||
60 | currently on Linux without ugly hacks like the bigphysarea | ||
61 | patch. Therefore, the driver doesn't support wavetable | ||
62 | synthesis. | ||
63 | |||
64 | |||
65 | No support from S3 | ||
66 | ------------------ | ||
67 | |||
68 | I do not get any support from S3. Therefore, the driver | ||
69 | still has many problems. For example, although the manual | ||
70 | states that the chip should be able to access the sample | ||
71 | buffer anywhere in 32bit address space, I haven't managed to | ||
72 | get it working with buffers above 16M. Therefore, the card | ||
73 | has the same disadvantages as ISA soundcards. | ||
74 | |||
75 | Given that the card is also very noisy, and if you haven't | ||
76 | already bought it, you should strongly opt for one of the | ||
77 | comparatively priced Ensoniq products. | ||
78 | |||
79 | |||
80 | Thomas Sailer | ||
81 | t.sailer@alumni.ethz.ch | ||