RFC 978
Voice File Interchange Protocol (VFIP)
VOICE FILE INTERCHANGE PROTOCOL (VFIP) π
RFC 978 πΈ February 1986
Network Working Group π
Authors: J. K. Reynolds (ISI), R. Gillmann (Inner Loop), W. A. Brackenridge (Alembic), A. Witkowski (Inner Loop), and J. Postel (ISI) π
Okay bestie, this is a whole squad of authors! π«Ά The title block doesn't list a category or say what it obsoletes or updates, so there's nothing more to add up there.
Status of This Memo β¨
This memo describes a proposed voice file interchange format for use in the ARPA-Internet community. Suggestions for improvement are encouraged, so send them in! π Distribution of this memo is unlimited π
1. Introduction π¦
Okay so VFIP is all about letting different systems swap different kinds of speech files with each other, no drama π Right now there are tons of different voice implementations out there, but nobody has set a real standard that's built for them to be compatible with each other π And voice is blowing up, especially in Multimedia Mail, so we really need standardized speech living in one common data structure. It's giving organized β¨
VFIP defines a header that describes the voice data. The 18-byte header holds:
- the identifier π
- the header version number π’
- the header length π
- a DTMF mask for Touch-Tones βοΈ
- the recording rate in bits per second π§
- the total time in deci-seconds (tenths of a second) β±οΈ
- the encoding/recording method (see Figure 1) ποΈ
2. The Voice File Interchange Protocol Header π
The Voice File Interchange Protocol header is organized like this, bestie π
2.1. The Header Version Number
The version number is 1-byte. This first version is number one π₯°
2.2. The Header Length
The length is a 1-byte field that tells you the length of the entire header in bytes. For this first version, the length is 18 (bytes) π
2.3. The DTMF Mask
This field describes what is known about DTMF Touch-Tones in the data. It's made of 16 flag bits that show what's known about particular DTMF tones. The 16 possible DTMF tones, in order, are: 0 1 2 3 4 5 6 7 8 9 # * A B C D. The low order bit of the field is tone 0 π’
A 1-bit means the matching tone is guaranteed NOT to be in the speech file π ββοΈ A 0-bit means it may or may not be in there. So a field of 16 zeros means nothing is known about the tones, and a field of 16 ones means there are no tones in the file at all π«
2.4. Recording Rate
The recording rate is a 32-bit field. It's the approximate rate in bits/second of the method used to record the speech. For variable rate methods, this may be very approximate π΅
2.5. Total Time
This is a 32-bit number that shows the total time of the recording in deci-seconds. For example, 600 means 1 minute of speech β°
2.6. Methods of Encoding/Recording
This 6-byte ASCII field tells you the method of encoding/recording. Names shorter than six characters get padded out to the right with blanks (the ASCII space character, code 32 decimal). When comparing names, they're case insensitive, so no stress π·
Some known methods of Encoding/Recording are:
TI- The Texas Instruments card for the IBM PC [5]. π€IBM- PC Voice Communications Options. π»NVP-1andNVP-2- Network Voice Protocol [1,2]. πCOMPUT- Computalker card for the IBM PC [4]. π§Έ
3. Summary π¦
This 18-byte header lets speech files get swapped between different systems, and it helps make automatic conversion between formats way easier π₯ The header doesn't have to be stuck onto the speech file itself. It can also be a separate associated file, if that's more convenient π
<------------16-bits------------>
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Version | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| -DTMF- |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| -Recording- |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| -Rate- |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| -Total- |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| -Time- |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| M | E |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| T | H |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| O | D |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 1 πΈ
4. Examples π§
Example 1 is for one minute of 2400 bps NVP-2 speech. Nothing is known about DTMF tones in the data π§
<------------16-bits------------>
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 1 | 18 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 0 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 2400 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 600 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| N | V |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| P | - |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 2 | <sp> |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Example 1 β¨
Example 2 shows the header for 10 seconds of 1200 bps TI speech. None of the DTMF tones 0-9 show up in the data, but we have no info about the tones *, #, and A-D π
<------------16-bits------------>
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 1 | 18 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 1023 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 1200 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 100 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| T | I |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| <sp> | <sp> |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| <sp> | <sp> |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Example 2 π
References π
- [1] Cohen, Danny, "Specifications for the Network Voice Protocol (NVP)", RFC 741 (NIC 42444), USC/Information Sciences Institute, January 1976. π¦
- [2] Cohen, Danny, "A Network Voice Protocol (NVP-II)", USC/Information Sciences Institute, April 1981. πΈ
- [3] O'Leary, G. C., "Local Access Area Facilities for Packet Voice", MIT/LL, October 1980. π
- [4] Computalker, "Compu Phone for the IBM PC/XT", Santa Monica, California, August 1985. π
- [5] Texas Instruments, Inc., "The TI Speech Application Tool Kit Guide", TI Part #2232384-1, May 1985. π€
π¦ where this page comes from
- ietf: rfc978 1986-02
- π girlified by claude-haiku-5-5 on : a language model's rewrite of the original, under its terms