最近工作中需要一些關於多媒體會議相關協議的知識,這裏作一個筆記,以便以後查看。下面的知識來於網絡,本人做了一個整理。原文請參考 文獻鏈接。
Q. What is DTMF ?
A. 雙音多頻信號(Dual-Tone Multi-Frequency, DTMF),電話系統中電話機與交換機之間的一種用戶信令,通常用於發送被叫號碼。在使用雙音多頻信號之前,電話系統中使用一連串的斷續脈衝來傳送被叫號碼,稱爲脈衝撥號。脈衝撥號需要電信局中的操作員手工完成長途接續。雙音多頻信號是貝爾實驗室發明的,其目的是爲了自動完成長途呼叫。
雙音多頻的撥號鍵盤是4×4的矩陣,每一行代表一個低頻,每一列代表一個高頻。每按一個鍵就發送一個高頻和低頻的正弦信號組合,比如'1'相當於697和1209赫茲(Hz)。交換機可以解碼這些頻率組合並確定所對應的按鍵。
1209 Hz | 1336 Hz | 1477 Hz | 1633 Hz | |
---|---|---|---|---|
697 Hz | 1 | 2 | 3 | A |
770 Hz | 4 | 5 | 6 | B |
852 Hz | 7 | 8 | 9 | C |
941 Hz | * | 0 | # | D |
注意:ABCD四個字母於現代電話已不用。
特殊音頻
事件 | 低頻 | 高頻 |
---|---|---|
忙音 | 480 Hz | 620 Hz |
回鈴音(美及英式) | 440 Hz | 480 Hz |
撥號音(美及英式) | 350 Hz | 440 Hz |
Q. 當程序需要產生一個DTMF音頻數字信號時,可以讀取已經錄製好的文件,但如何動態生成DTMF音頻信號?
A. DTMF信號的原理是兩個不同頻率的正弦波疊加。
Q. DTMF的傳輸方式:Info, In Band, Out of Band(RFC2833) ?
A.
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | event |E|R| volume | duration | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+與DTMF相關的在telephone-event負載格式中的命名事件包括:
Event encoding (decimal) _________________________ 0--9 0--9 * 10 # 11 A--D 12--15 Flash 16 Table 1: DTMF named events撥打911後的RTP數據包爲:
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |V=2|P|X| CC |M| PT | sequence number | | 2 |0|0| 0 |0| 96 | 28 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | timestamp | | 11200 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | synchronization source (SSRC) identifier | | 0x5234a8 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |F| block PT | timestamp offset | block length | |1| 97 | 11200 | 4 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |F| block PT | timestamp offset | block length | |1| 97 | 11200 - 6400 = 4800 | 4 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |F| Block PT | |0| 97 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | digit |E R| volume | duration | | 9 |1 0| 7 | 1600 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | digit |E R| volume | duration | | 1 |1 0| 10 | 2000 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | digit |E R| volume | duration | | 1 |0 0| 20 | 400 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 2: Example RTP packet after dialing "911"
A. 在很久很久以前(long long ago),那時候人們還處於模擬通信和機械式交換機的時代(縱橫或者步進),那時候不存在獨立的信令網,交換機之間的“語言交流(信令)”和語音信號在一條傳輸通道上跑。這就是帶內信令。後來發展了,交換機之間的“語言交流(信令)”和語音信號的傳輸分別走不同的傳輸通道,建立起獨立的信令網,這樣信令信號走信令網,語音走語音的傳輸通道,兩者分道揚鑣,這就是帶外信令!
帶內信令是指信號的頻率在話音頻率範圍之內(0.3~3.4kHz)。帶內信號是在話音通道內傳遞的。
帶外信令,又叫共路信令,是一種採用在信息傳輸頻率/信道之外的頻率/信道傳輸信令技術。在帶內信令可能受到各種網絡問題影響的情況下,帶外信令經常被用於傳輸控制命令以報告相關的錯誤信息。
參考文獻:
1, http://zh.wikipedia.org/wiki/DTMF
2, http://blog.csdn.net/kukumouse/article/details/2270279
3, http://www.ietf.org/rfc/rfc2833.txt