1 |
1625 |
jcastillo |
$Id: README.audio,v 1.1 2005-12-20 10:06:00 jcastillo Exp $
|
2 |
|
|
|
3 |
|
|
ISDN subsystem for Linux.
|
4 |
|
|
Description of audio mode.
|
5 |
|
|
|
6 |
|
|
When enabled during kernel configuration, the tty emulator of the ISDN
|
7 |
|
|
subsystem is capable of a reduced set of commands to support audio.
|
8 |
|
|
This document describes the commands supported and the format of
|
9 |
|
|
audio data.
|
10 |
|
|
|
11 |
|
|
Commands 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 |
|
|
|
23 |
|
|
Commands supported in audio mode:
|
24 |
|
|
|
25 |
|
|
All audio mode commands have the one of the following form:
|
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 |
|
|
|
32 |
|
|
where xx is a two-character code and v are alphanumerical parameters.
|
33 |
|
|
The 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 |
|
|
|
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+VSM=x Select audio data format.
|
62 |
|
|
Possible parameters:
|
63 |
|
|
2 = ADPCM-2
|
64 |
|
|
3 = ADPCM-3
|
65 |
|
|
4 = ADPCM-4
|
66 |
|
|
5 = aLAW
|
67 |
|
|
6 = uLAW
|
68 |
|
|
AT+VSM=? Show possible audio formats.
|
69 |
|
|
|
70 |
|
|
AT+VTX Start audio playback. Emulator responds
|
71 |
|
|
with CONNECT and starts sending audio data
|
72 |
|
|
received from the application via phone line.
|
73 |
|
|
General behavior and description of data formats/protocol.
|
74 |
|
|
when a connection is made:
|
75 |
|
|
|
76 |
|
|
On incoming calls, if the application responds to a RING
|
77 |
|
|
with ATA, depending on the calling service, the emulator
|
78 |
|
|
responds with either CONNECT (data call) or VCON (voice call).
|
79 |
|
|
|
80 |
|
|
On outgoing voice calls, the emulator responds with VCON
|
81 |
|
|
upon connection setup.
|
82 |
|
|
|
83 |
|
|
Audio recording.
|
84 |
|
|
|
85 |
|
|
When receiving audio data, a kind of bisync protocol is used.
|
86 |
|
|
Upon AT+VRX command, the emulator responds with CONNECT, and
|
87 |
|
|
starts sending audio data to the application. There are several
|
88 |
|
|
escape sequences defined, all using DLE (0x10) as Escape char:
|
89 |
|
|
|
90 |
|
|
End of audio data. (i.e. caused by a
|
91 |
|
|
hangup of the remote side) Emulator stops
|
92 |
|
|
recording, responding with VCON.
|
93 |
|
|
Abort recording, (send by appl.) Emulator
|
94 |
|
|
stops recording, sends DLE,ETX.
|
95 |
|
|
Escape sequence for DLE in data stream.
|
96 |
|
|
0 Touchtone "0" received.
|
97 |
|
|
...
|
98 |
|
|
9 Touchtone "9" received.
|
99 |
|
|
# Touchtone "#" received.
|
100 |
|
|
* Touchtone "*" received.
|
101 |
|
|
A Touchtone "A" received.
|
102 |
|
|
B Touchtone "B" received.
|
103 |
|
|
C Touchtone "C" received.
|
104 |
|
|
D Touchtone "D" received.
|
105 |
|
|
|
106 |
|
|
q quiet. Silence detected after non-silence.
|
107 |
|
|
s silence. Silence detected from the
|
108 |
|
|
start of recording.
|
109 |
|
|
|
110 |
|
|
Currently unsupported DLE sequences:
|
111 |
|
|
|
112 |
|
|
c FAX calling tone received.
|
113 |
|
|
b busy tone received.
|
114 |
|
|
|
115 |
|
|
Audio playback.
|
116 |
|
|
|
117 |
|
|
When sending audio data, upon AT+VTX command, emulator responds with
|
118 |
|
|
CONNECT, and starts transferring data from application to the phone line.
|
119 |
|
|
The same DLE sequences apply to this mode.
|
120 |
|
|
|
121 |
|
|
Full-Duplex-Audio:
|
122 |
|
|
|
123 |
|
|
When _both_ commands for recording and playback are given in _one_
|
124 |
|
|
AT-command-line (i.e.: "AT+VTX+VRX"), full-duplex-mode is selected.
|
125 |
|
|
In this mode, the only way to stop recording is sending
|
126 |
|
|
and the only way to stop playback is to send .
|
127 |
|
|
|