71 lines
		
	
	
	
		
			2.3 KiB
			
		
	
	
	
		
			Text
		
	
	
	
	
	
		
		
			
		
	
	
			71 lines
		
	
	
	
		
			2.3 KiB
			
		
	
	
	
		
			Text
		
	
	
	
	
	
| 
								 | 
							
								/proc/sound, /dev/sndstat
							 | 
						||
| 
								 | 
							
								-------------------------
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								/proc/sound and /dev/sndstat is not supported by the
							 | 
						||
| 
								 | 
							
								driver. To find out whether the driver succeeded loading,
							 | 
						||
| 
								 | 
							
								check the kernel log (dmesg).
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								ALaw/uLaw sample formats
							 | 
						||
| 
								 | 
							
								------------------------
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								This driver does not support the ALaw/uLaw sample formats.
							 | 
						||
| 
								 | 
							
								ALaw is the default mode when opening a sound device
							 | 
						||
| 
								 | 
							
								using OSS/Free. The reason for the lack of support is
							 | 
						||
| 
								 | 
							
								that the hardware does not support these formats, and adding
							 | 
						||
| 
								 | 
							
								conversion routines to the kernel would lead to very ugly
							 | 
						||
| 
								 | 
							
								code in the presence of the mmap interface to the driver.
							 | 
						||
| 
								 | 
							
								And since xquake uses mmap, mmap is considered important :-)
							 | 
						||
| 
								 | 
							
								and no sane application uses ALaw/uLaw these days anyway.
							 | 
						||
| 
								 | 
							
								In short, playing a Sun .au file as follows:
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								cat my_file.au > /dev/dsp
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								does not work. Instead, you may use the play script from
							 | 
						||
| 
								 | 
							
								Chris Bagwell's sox-12.14 package (available from the URL
							 | 
						||
| 
								 | 
							
								below) to play many different audio file formats.
							 | 
						||
| 
								 | 
							
								The script automatically determines the audio format
							 | 
						||
| 
								 | 
							
								and does do audio conversions if necessary.
							 | 
						||
| 
								 | 
							
								http://home.sprynet.com/sprynet/cbagwell/projects.html
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								Blocking vs. nonblocking IO
							 | 
						||
| 
								 | 
							
								---------------------------
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								Unlike OSS/Free this driver honours the O_NONBLOCK file flag
							 | 
						||
| 
								 | 
							
								not only during open, but also during read and write.
							 | 
						||
| 
								 | 
							
								This is an effort to make the sound driver interface more
							 | 
						||
| 
								 | 
							
								regular. Timidity has problems with this; a patch
							 | 
						||
| 
								 | 
							
								is available from http://www.ife.ee.ethz.ch/~sailer/linux/pciaudio.html.
							 | 
						||
| 
								 | 
							
								(Timidity patched will also run on OSS/Free).
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								MIDI UART
							 | 
						||
| 
								 | 
							
								---------
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								The driver supports a simple MIDI UART interface, with
							 | 
						||
| 
								 | 
							
								no ioctl's supported.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								MIDI synthesizer
							 | 
						||
| 
								 | 
							
								----------------
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								This soundcard does not have any hardware MIDI synthesizer;
							 | 
						||
| 
								 | 
							
								MIDI synthesis has to be done in software. To allow this
							 | 
						||
| 
								 | 
							
								the driver/soundcard supports two PCM (/dev/dsp) interfaces.
							 | 
						||
| 
								 | 
							
								The second one goes to the mixer "synth" setting and supports
							 | 
						||
| 
								 | 
							
								only a limited set of sampling rates (44100, 22050, 11025, 5512).
							 | 
						||
| 
								 | 
							
								By setting lineout to 1 on the driver command line
							 | 
						||
| 
								 | 
							
								(eg. insmod es1370 lineout=1) it is even possible on some
							 | 
						||
| 
								 | 
							
								cards to convert the LINEIN jack into a second LINEOUT jack, thus
							 | 
						||
| 
								 | 
							
								making it possible to output four independent audio channels!
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								There is a freely available software package that allows
							 | 
						||
| 
								 | 
							
								MIDI file playback on this soundcard called Timidity.
							 | 
						||
| 
								 | 
							
								See http://www.cgs.fi/~tt/timidity/.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								Thomas Sailer
							 | 
						||
| 
								 | 
							
								t.sailer@alumni.ethz.ch
							 |