音视频学习–DTMF介绍

前两天有个同学咨询DTMF相关的问题,还是在5年前有接触过,后来就没有怎么碰了,肝了三天整理一下相关基础知识,期望能够帮助到其他有需要的小伙伴。

双音多频 (DTMF)

双音多频 (DTMF) 是一种电信信令系统,在电话设备与其他通信设备和交换中心之间使用电话线上的语音频带。DTMF 是一种用于拨打电话号码或向交换系统发出命令的方法。

每个 DTMF 数字由两个频率表示,一高一低。选择的频率应使人耳和电话设备能够轻松区分。数字 0 到 9 的频率如下表所示:

音视频学习--DTMF介绍

我们以数字6为例,相关波形如下如下:

音视频学习--DTMF介绍

下载了相关文件,通过Audacity查看,DTMF6的波形图如下:

音视频学习--DTMF介绍

放大后波形就比较明了了,和上述合成的基本一致

音视频学习--DTMF介绍

工作原理

DTMF 技术的工作原理是让手机生成特定频率的音调,并在按下键盘上的按钮时通过电话线播放这些音调。电话线另一端的设备监听特定的声音并将其解码为命令。

这些命令通常用于拨打电话号码进行呼叫,但也可用于发送电话控制命令或控制远程设备,因为控制音与语音信号在同一通道上播放。它是一个Inband信令系统;这与Outband系统不同,例如信令系统。

DTMF 指定八种不同的音调。他们分为高组和低组。每次按键对应两种音调,因此称为双音调,一种来自高音组,另一种来自低音组。这总共允许 16 个键。

这些键被指定为数字 0 到 9、*(星号或星号)、#(井号、散列或 octothorpe)以及字母 A 到 D。字母键通常不使用,并且在绝大多数消费者电话中被省略。。电信行业为每个按键选择了两种同步音调,以消除人声触发系统的可能性。

产生背景

在 DTMF 出现之前,电话系统使用脉冲拨号来发送号码。在脉冲拨号中,听筒与中央交换机之间的连接快速断开并重新连接。这是通过旋转拨号器完成的,旋转拨号器会在旋转时中断连接。也称为循环断开。这类似于通过建立和断开电气连接来通过电报发送莫尔斯电码。脉冲拨号有许多缺点,导致了 DTMF 的发展:

  • 脉冲拨号是一个缓慢的过程,因为建立和断开连接需要时间。
  • 使用旋转电话拨打更大的号码需要更长的时间;这就是为什么大城市中更有声望的区号数字较小,而许多人口较少的郊区的区号数字较大。
  • 脉冲拨号限制了手机到总机的最大距离,不能用于长途拨号。
  • 它还需要从听筒到总机的直接电气连接。
  • 对于许多银行或磁继电器和计数器来说,脉冲拨号控制系统的构建和维护也很复杂。

电信行业开发了多频信号 (MF) 作为 DTMF 的先驱。它使用与 DTMF 相同的原理,但仅由长途操作员用来向其他切换台发送信号。MF证明了底层技术的可靠性和易用性,因此DTMF被开发出来供消费者使用。

DTMF 由 Bell System 开发,于 1963 年 11 月 18 日推出供公众使用。它以 Touch-Tone 商标而闻名,并很快被接受为标准并在全球范围内采用。

DTMF 最初是使用模拟电子技术开发的。最初的系统将使用在适当位置带有抽头的调谐线圈来产生正确的音调。现代电话使用单芯片集成电路来产生音调。

纯互联网协议语音 ( VoIP ) 系统本身并不使用 DTMF 进行信令。VoIP 系统使用会话启动协议来发出信号和拨号。为了与传统系统集成并实现广泛的互操作性,大多数 VoIP 系统还包括通过控制干线或拨入系统等的 DTMF 功能。如果使用无损编码器,它们还可以接收入流式DTMF 。

现代手机也不使用 DTMF 拨号,因为它们是纯数字系统。作为拨号过程的一部分,要呼叫的整个电话号码都会被存储并发送到蜂窝塔基站,因此不使用 DTMF 音。连接后,手机可以为传统电话系统生成 DTMF 音调。

DTMF类型

DTMF(双音多频音)是通过语音频率发送的带内电信信号。DTMF 音通常通过电话线使用,也通常称为按键音。

RFC 2833

RFC 2833(DTMF 数字、电话音和电话信号的 RTP 有效负载)指定了用于承载双音多频 (DTMF) 数字以及其他线路和中继信号的 RTP 有效负载格式。RFC 2833 指定了 DTMF 数字、线路事件和中继事件的数据包格式。

RFC 2833 指定了在 RTP 数据包内携带 DTMF 信令信息的有效负载格式。遵守 RFC 2833 标准具有以下优点:

  • 降低低比特率声码器(例如 G.723.1)使接收网关无法理解 DTMF 音调的风险。
  • 使得 VoIP 网关无需对传入语音流执行 DTMF 检测。相反,应用程序可以通过等待特殊格式的带内 DTMF 数据包来检测 DTMF 音调。
音视频学习--DTMF介绍

SIP INFO

SIP INFO 是一种 SIP 消息,用于在 SIP 端点之间传送控制信息。它可用于承载 DTMF 音调,但并非专门为此目的而设计。

音视频学习--DTMF介绍
音视频学习--DTMF介绍
音视频学习--DTMF介绍

Inband DTMF

Inband DTMF 是一种通过与语音信号相同的音频通道发送 DTMF 音调的方法。这是发送 DTMF 音调的最常见方法,但它可能容易受到语音信号的干扰。

音视频学习--DTMF介绍

Outband DTMF

Outband DTMF 是一种通过与语音信号不同的通道发送 DTMF 音调的方法。这不太容易受到干扰,但需要额外的信令来设置带外信道。

带内管理和带外管理有什么区别?

带内管理是通过 LAN 管理网络的能力,而带外管理是一种解决方案,它为 IT 网络基础设施提供安全的专用备用访问方法,以便在不使用企业 LAN 的情况下管理连接的设备和 IT 资产。

DTMF传输

如果有效负载格式使用有效负载类型号 100,并且实现可以处理 DTMF 音(Event 0 到 15)以及拨号音和振铃音(假设这些被定义为代码为 66 和 70 的Event),其 SDP 消息中包含以下描述:

音视频学习--DTMF介绍

DTMF发送的格式如下:

音视频学习--DTMF介绍
音视频学习--DTMF介绍

在RFC4733中有明确定义Event和Code的关系,如下图所示:

音视频学习--DTMF介绍

DTMF demo

大家看访问如下链接进行DTMF的tone体验

https://webrtc.github.io/samples/src/content/peerconnection/dtmf/

音视频学习--DTMF介绍

DTMF的基础知识就分享到这里,下一篇计划完成DTMF如何在代码中生成和接收到如何解码的,敬请期待。

作者信息:我是一枚爱跑步的程序猿,维护公众号和知乎专栏《MediaStack》,有兴趣可以关注,一起学习音视频知识,时不时分享实战经验。

版权声明:本文内容转自互联网,本文观点仅代表作者本人。本站仅提供信息存储空间服务,所有权归原作者所有。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至1393616908@qq.com 举报,一经查实,本站将立刻删除。

(0)

相关推荐

发表回复

登录后才能评论