isdn_audio man page

isdn_audio — audio extension of ttyI ISDN character devices

Description

This document describes the audio related extensions of the modem emulation, provided by /dev/ttyIx.

The ISDN tty devices are equipped with a modem emulation implementing a set of traditional and some special AT commands. This provides easy use together with almost all communication software that uses modem commands: minicom(1), seyon(1), XCept(1), uucico(8), mgetty(8), dip(8), pppd(8) and more. When enabled during kernel configuration, the emulator is capable of a reduced set of commands to support audio. To use audio features, an ISDN card with a audio-capable low-level driver is needed. Currently the only audio-capable drivers are the teles and HiSax driver.

The port speed of the ISDN tty devices is always 64000 bps.

General Behaviour

On incoming calls, if the application responds to a RING by sending ATA, depending on the calling service, the emulator responds with either CONNECT (data call) or VCON (voice call).

When starting audio playback or recording, the emulator responds with CONNECT. After that, the data transfer protocol described below is used. It is possible to initiate full duplex data transfer by issuing AT+VRX+VTX in a single command. In this case, no CONNECT message is sent to the application and the protocol described below is started immediately.

When stopping audio playback or recording, the message returned by the emulator depends on how the data transfer is stopped. If the data transfer is stopped by a remote hangup, NO CARRIER is sent to the application, while stopping data transfer with one of the DLE sequences, VCON is sent. In any case, the message is preceded by the appropriate DLE sequence for end of audio data and/or abort respectively.

On outgoing voice calls, the emulator responds with VCON upon connection setup.

Audio Data Format

When recording or playing back audio data, a kind of modified bisync protocol is used. When recording audio data, the modem emulator is considered to be the sender, while the application is the receiver. When playing back, this relationship is reversed: The modem emulator acts as receiver, while the application is the sender. With the bisync protocol the character DLE (0x10) has a special meaning and is used like an escape character. It is always followed by a second character which has the following meanings defined:

ETX (0x03)
End of audio data. This code has to be sent by the sender, indicating end of audio data.
DC4 (0x14)
Abort sending. This code has to be sent by the receiver, when it wishes to abort receiving data. The sender has to reply by stop sending data and finally indicating end of audio data.
DLE (0x10)
a single byte with value 0x10 in the data stream.
0
Touch-tone "0" received. Valid only in direction from emulator to application.
1
Touch-tone "1" received. Valid only in direction from emulator to application.
2
Touch-tone "2" received. Valid only in direction from emulator to application.
3
Touch-tone "3" received. Valid only in direction from emulator to application.
4
Touch-tone "4" received. Valid only in direction from emulator to application.
5
Touch-tone "5" received. Valid only in direction from emulator to application.
6
Touch-tone "6" received. Valid only in direction from emulator to application.
7
Touch-tone "7" received. Valid only in direction from emulator to application.
8
Touch-tone "8" received. Valid only in direction from emulator to application.
9
Touch-tone "9" received. Valid only in direction from emulator to application.
#
Touch-tone "#" received. Valid only in direction from emulator to application.
*
Touch-tone "*" received. Valid only in direction from emulator to application.
A
Touch-tone "A" received. Valid only in direction from emulator to application.
B
Touch-tone "B" received. Valid only in direction from emulator to application.
C
Touch-tone "C" received. Valid only in direction from emulator to application.
D
Touch-tone "D" received. Valid only in direction from emulator to application.

Author

Fritz Elfert <fritz@isdn4linux.de>

See Also

ttyI(4).

Referenced By

isdnctrl(8), ttyI(4).

1999/09/06 ISDN 4 Linux 3.27 Special files