139 lines
		
	
	
	
		
			5.8 KiB
			
		
	
	
	
		
			Text
		
	
	
	
	
	
		
		
			
		
	
	
			139 lines
		
	
	
	
		
			5.8 KiB
			
		
	
	
	
		
			Text
		
	
	
	
	
	
|   | $Id: README.audio,v 1.8 1999/07/11 17:17:29 armin Exp $ | ||
|  | 
 | ||
|  | ISDN subsystem for Linux. | ||
|  |   Description of audio mode. | ||
|  | 
 | ||
|  | When enabled during kernel configuration, the tty emulator of the ISDN | ||
|  | subsystem is capable of a reduced set of commands to support audio. | ||
|  | This document describes the commands supported and the format of | ||
|  | audio data. | ||
|  | 
 | ||
|  | Commands for enabling/disabling audio mode: | ||
|  | 
 | ||
|  |         AT+FCLASS=8      Enable audio mode. | ||
|  |                          This affects the following registers: | ||
|  |                            S18: Bits 0 and 2 are set. | ||
|  |                            S16: Set to 48 and any further change to | ||
|  |                                 larger values is blocked. | ||
|  |         AT+FCLASS=0      Disable audio mode. | ||
|  |                          Register 18 is set to 4. | ||
|  |         AT+FCLASS=?      Show possible modes. | ||
|  |         AT+FCLASS?       Report current mode (0 or 8). | ||
|  | 
 | ||
|  | Commands supported in audio mode: | ||
|  | 
 | ||
|  | All audio mode commands have one of the following forms: | ||
|  | 
 | ||
|  |         AT+Vxx?          Show current setting. | ||
|  |         AT+Vxx=?         Show possible settings. | ||
|  |         AT+Vxx=v         Set simple parameter. | ||
|  |         AT+Vxx=v,v ...   Set complex parameter. | ||
|  | 
 | ||
|  | where xx is a two-character code and v are alphanumerical parameters. | ||
|  | The following commands are supported: | ||
|  | 
 | ||
|  |         AT+VNH=x         Auto hangup setting. NO EFFECT, supported | ||
|  |                          for compatibility only. | ||
|  |         AT+VNH?          Always reporting "1" | ||
|  |         AT+VNH=?         Always reporting "1" | ||
|  | 
 | ||
|  |         AT+VIP           Reset all audio parameters. | ||
|  | 
 | ||
|  |         AT+VLS=x         Line select. x is one of the following: | ||
|  |                            0 = No device. | ||
|  |                            2 = Phone line. | ||
|  |         AT+VLS=?         Always reporting "0,2" | ||
|  |         AT+VLS?          Show current line. | ||
|  | 
 | ||
|  |         AT+VRX           Start recording. Emulator responds with | ||
|  |                          CONNECT and starts sending audio data to | ||
|  |                          the application. See below for data format | ||
|  | 
 | ||
|  |         AT+VSD=x,y       Set silence-detection parameters. | ||
|  |                          Possible parameters: | ||
|  |                            x = 0 ... 31  sensitivity threshold level. | ||
|  |                                          (default 0 , deactivated) | ||
|  |                            y = 0 ... 255 range of interval in units | ||
|  |                                          of 0.1 second. (default 70) | ||
|  |         AT+VSD=?         Report possible parameters. | ||
|  |         AT+VSD?          Show current parameters. | ||
|  | 
 | ||
|  |         AT+VDD=x,y       Set DTMF-detection parameters. | ||
|  |                          Only possible if online and during this connection. | ||
|  |                          Possible parameters: | ||
|  |                            x = 0 ... 15  sensitivity threshold level. | ||
|  |                                          (default 0 , I4L soft-decode) | ||
|  |                                          (1-15 soft-decode off, hardware on) | ||
|  |                            y = 0 ... 255 tone duration in units of 5ms. | ||
|  |                                          Not for I4L soft decode (default 8, 40ms) | ||
|  |         AT+VDD=?         Report possible parameters. | ||
|  |         AT+VDD?          Show current parameters. | ||
|  | 
 | ||
|  |         AT+VSM=x         Select audio data format. | ||
|  |                          Possible parameters: | ||
|  |                            2 = ADPCM-2 | ||
|  |                            3 = ADPCM-3 | ||
|  |                            4 = ADPCM-4 | ||
|  |                            5 = aLAW | ||
|  |                            6 = uLAW | ||
|  |         AT+VSM=?         Show possible audio formats. | ||
|  | 
 | ||
|  |         AT+VTX           Start audio playback. Emulator responds | ||
|  |                          with CONNECT and starts sending audio data | ||
|  |                          received from the application via phone line. | ||
|  | General behavior and description of data formats/protocol. | ||
|  |     when a connection is made: | ||
|  | 
 | ||
|  |       On incoming calls, if the application responds to a RING | ||
|  |       with ATA, depending on the calling service, the emulator | ||
|  |       responds with either CONNECT (data call) or VCON (voice call). | ||
|  |        | ||
|  |       On outgoing voice calls, the emulator responds with VCON | ||
|  |       upon connection setup. | ||
|  | 
 | ||
|  |   Audio recording. | ||
|  | 
 | ||
|  |     When receiving audio data, a kind of bisync protocol is used. | ||
|  |     Upon AT+VRX command, the emulator responds with CONNECT, and | ||
|  |     starts sending audio data to the application. There are several | ||
|  |     escape sequences defined, all using DLE (0x10) as Escape char: | ||
|  | 
 | ||
|  |     <DLE><ETX>              End of audio data. (i.e. caused by a | ||
|  |                             hangup of the remote side) Emulator stops | ||
|  |                             recording, responding with VCON. | ||
|  |     <DLE><DC4>		    Abort recording, (send by appl.) Emulator | ||
|  | 			    stops recording, sends DLE,ETX. | ||
|  |     <DLE><DLE>              Escape sequence for DLE in data stream. | ||
|  |     <DLE>0                  Touchtone "0" received. | ||
|  |          ... | ||
|  |     <DLE>9                  Touchtone "9" received. | ||
|  |     <DLE>#                  Touchtone "#" received. | ||
|  |     <DLE>*                  Touchtone "*" received. | ||
|  |     <DLE>A                  Touchtone "A" received. | ||
|  |     <DLE>B                  Touchtone "B" received. | ||
|  |     <DLE>C                  Touchtone "C" received. | ||
|  |     <DLE>D                  Touchtone "D" received. | ||
|  | 
 | ||
|  |     <DLE>q                  quiet. Silence detected after non-silence. | ||
|  |     <DLE>s                  silence. Silence detected from the | ||
|  |                             start of recording. | ||
|  | 
 | ||
|  |     Currently unsupported DLE sequences: | ||
|  | 
 | ||
|  |     <DLE>c                  FAX calling tone received. | ||
|  |     <DLE>b                  busy tone received. | ||
|  | 
 | ||
|  |   Audio playback. | ||
|  | 
 | ||
|  |     When sending audio data, upon AT+VTX command, emulator responds with | ||
|  |     CONNECT, and starts transferring data from application to the phone line. | ||
|  |     The same DLE sequences apply to this mode. | ||
|  | 
 | ||
|  |   Full-Duplex-Audio: | ||
|  | 
 | ||
|  |     When _both_ commands for recording and playback are given in _one_ | ||
|  |     AT-command-line (i.e.: "AT+VTX+VRX"), full-duplex-mode is selected. | ||
|  | 	In this mode, the only way to stop recording is sending <DLE><DC4> | ||
|  |     and the only way to stop playback is to send <DLE><ETX>. | ||
|  | 
 |