blob: 8ebca19290d93aeac4fd8fa8d0cf42bb7ecd638a [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001$Id: README.audio,v 1.8 1999/07/11 17:17:29 armin Exp $
2
3ISDN subsystem for Linux.
4 Description of audio mode.
5
6When enabled during kernel configuration, the tty emulator of the ISDN
7subsystem is capable of a reduced set of commands to support audio.
8This document describes the commands supported and the format of
9audio data.
10
11Commands for enabling/disabling audio mode:
12
13 AT+FCLASS=8 Enable audio mode.
14 This affects the following registers:
15 S18: Bits 0 and 2 are set.
16 S16: Set to 48 and any further change to
17 larger values is blocked.
18 AT+FCLASS=0 Disable audio mode.
19 Register 18 is set to 4.
20 AT+FCLASS=? Show possible modes.
21 AT+FCLASS? Report current mode (0 or 8).
22
23Commands supported in audio mode:
24
25All audio mode commands have one of the following forms:
26
27 AT+Vxx? Show current setting.
28 AT+Vxx=? Show possible settings.
29 AT+Vxx=v Set simple parameter.
30 AT+Vxx=v,v ... Set complex parameter.
31
32where xx is a two-character code and v are alphanumerical parameters.
33The following commands are supported:
34
35 AT+VNH=x Auto hangup setting. NO EFFECT, supported
36 for compatibility only.
37 AT+VNH? Always reporting "1"
38 AT+VNH=? Always reporting "1"
39
40 AT+VIP Reset all audio parameters.
41
42 AT+VLS=x Line select. x is one of the following:
43 0 = No device.
44 2 = Phone line.
45 AT+VLS=? Always reporting "0,2"
46 AT+VLS? Show current line.
47
48 AT+VRX Start recording. Emulator responds with
49 CONNECT and starts sending audio data to
50 the application. See below for data format
51
52 AT+VSD=x,y Set silence-detection parameters.
53 Possible parameters:
54 x = 0 ... 31 sensitivity threshold level.
55 (default 0 , deactivated)
56 y = 0 ... 255 range of interval in units
57 of 0.1 second. (default 70)
58 AT+VSD=? Report possible parameters.
59 AT+VSD? Show current parameters.
60
61 AT+VDD=x,y Set DTMF-detection parameters.
62 Only possible if online and during this connection.
63 Possible parameters:
64 x = 0 ... 15 sensitivity threshold level.
65 (default 0 , I4L soft-decode)
66 (1-15 soft-decode off, hardware on)
67 y = 0 ... 255 tone duration in units of 5ms.
68 Not for I4L soft decode (default 8, 40ms)
69 AT+VDD=? Report possible parameters.
70 AT+VDD? Show current parameters.
71
72 AT+VSM=x Select audio data format.
73 Possible parameters:
74 2 = ADPCM-2
75 3 = ADPCM-3
76 4 = ADPCM-4
77 5 = aLAW
78 6 = uLAW
79 AT+VSM=? Show possible audio formats.
80
81 AT+VTX Start audio playback. Emulator responds
82 with CONNECT and starts sending audio data
83 received from the application via phone line.
84General behavior and description of data formats/protocol.
85 when a connection is made:
86
87 On incoming calls, if the application responds to a RING
88 with ATA, depending on the calling service, the emulator
89 responds with either CONNECT (data call) or VCON (voice call).
90
91 On outgoing voice calls, the emulator responds with VCON
92 upon connection setup.
93
94 Audio recording.
95
96 When receiving audio data, a kind of bisync protocol is used.
97 Upon AT+VRX command, the emulator responds with CONNECT, and
98 starts sending audio data to the application. There are several
99 escape sequences defined, all using DLE (0x10) as Escape char:
100
101 <DLE><ETX> End of audio data. (i.e. caused by a
102 hangup of the remote side) Emulator stops
103 recording, responding with VCON.
104 <DLE><DC4> Abort recording, (send by appl.) Emulator
105 stops recording, sends DLE,ETX.
106 <DLE><DLE> Escape sequence for DLE in data stream.
107 <DLE>0 Touchtone "0" received.
108 ...
109 <DLE>9 Touchtone "9" received.
110 <DLE># Touchtone "#" received.
111 <DLE>* Touchtone "*" received.
112 <DLE>A Touchtone "A" received.
113 <DLE>B Touchtone "B" received.
114 <DLE>C Touchtone "C" received.
115 <DLE>D Touchtone "D" received.
116
117 <DLE>q quiet. Silence detected after non-silence.
118 <DLE>s silence. Silence detected from the
119 start of recording.
120
121 Currently unsupported DLE sequences:
122
123 <DLE>c FAX calling tone received.
124 <DLE>b busy tone received.
125
126 Audio playback.
127
128 When sending audio data, upon AT+VTX command, emulator responds with
129 CONNECT, and starts transferring data from application to the phone line.
130 The same DLE sequences apply to this mode.
131
132 Full-Duplex-Audio:
133
134 When _both_ commands for recording and playback are given in _one_
135 AT-command-line (i.e.: "AT+VTX+VRX"), full-duplex-mode is selected.
136 In this mode, the only way to stop recording is sending <DLE><DC4>
137 and the only way to stop playback is to send <DLE><ETX>.
138