SIP 编解码器
编解码器,编码器 - 解码器的简称,做两个基本操作 -
首先,它将模拟语音信号转换为其等效数字形式,以便可以容易地发送。
此后,它将压缩的数字信号转换回其原始模拟形式,以便可以重放。
市场上有许多编解码器 - 有些是免费的,有些则需要许可。编解码器在声音质量上不同,并且带宽相应地变化。
硬件设备如电话和网关支持几种不同的编解码器。当彼此交谈时,他们谈判使用哪个编解码器。
在本章中,我们将讨论一些流行的SIP音频编解码器,被广泛使用。
G.711
G.711是国际电联在1972年引入的用于数字电话的编解码器。编解码器有两种变体: A-Law 正在欧洲和国际电话链接中使用, uLaw 用于美国和日本。
G.711使用对数压缩。它将每个16位样本压缩为8位,从而实现1:2的压缩比。
一个方向的比特率为64 kbit / s,因此一个呼叫消耗128 kbit / s。
G.711是与PSTN网络使用的相同的编解码器,因此它提供最好的语音质量。然而,它消耗比其他编解码器更多的带宽。
它在我们有很多带宽的局域网中工作的最好。
G.729
G.729是一种具有低带宽要求的编解码器; 它提供良好的音频质量。
编解码器以10毫秒长的帧编码音频。给定8kHz的采样频率,10ms帧包含80个音频样本。
编解码算法将每个帧编码为10个字节,因此在一个方向上产生的比特率为8 kbit / s。
G.729是许可编解码器。想要使用此编解码器的最终用户应购买实现它的硬件(无论是VoIP电话还是网关)。
G.729的常用变体是G.729a。它与原始编解码器线路兼容,但具有较低的CPU要求。
G.723.1
G.723.1是国际电联宣布的竞争的结果,目的是设计一个编解码器,允许呼叫超过28.8和33 kbit / s调制解调器链路。
我们有两个G.723.1的变体。它们都在30ms的音频帧(即240个采样)上操作,但算法不同。
第一变体的比特率是6.4kbit / s,而对于第二变体,它是5.3kbit / s。
两个变体的编码帧分别为24和20字节长。
GSM 06.10
GSM 06.10是为GSM移动网络设计的编解码器。它也称为GSM全速率。
这种GSM编解码器的变体可以自由使用,所以你经常会在开源VoIP应用中找到它。
编解码器对20ms长(即160个样本)的音频帧进行操作,并且将每个帧压缩为33字节,因此所得的比特率为13kbit /。
SIP 编解码器的更多相关文章
- SIP (Session Initiation Protocol) 协议
Session Initiation Protocol 介绍 SIP是VoIP技术最常使用的协议,它是一种应用程序层协议,可与其他应用程序层协议配合使用,以控制Internet上的多媒体通信会话. V ...
- 流媒体学习二-------SIP协议学习(基本场景分析 )
作者:gnuhpc 出处:http://www.cnblogs.com/gnuhpc/ 1.SIP业务基本知识 1.1 业务介绍 会话初始协议(Session Initiation Protocol) ...
- SIP SDP RTSP RTP RTCP webrtc
rfc1889 rfc2326 rfc3261 rfc3550 rfc3856 rfc6120. SIP SDP RTSP RTP RTCP,就像他们出现的顺序一样,他们在实际应用中的启用 ...
- doubango(5)--SIP协议栈传输层的启动
SIP协议的INVITE消息发起流程 当通过sip协议发起一个会话时,需要通过invite消息实现该流程.而SIP协议是一个基于事务的协议,每一个sip会话的都是通过sip部件间的一系列消息来完成的. ...
- 使用SIP Servlet为Java EE添加语音功能
会话发起协议(Session Initiation Protocol,SIP)是一种信号传输协议,用于建立.修改和终止两个端点之间的会话.SIP 可用于建立 两方呼叫.多方呼叫,或者甚至 Intern ...
- 阐述:SIP协议是什么
sip协议是什么?可能刚刚接触这个协议的朋友会掌握不好它的定义.那么首先我们要了解一下,目前企业中大多数VoIP应用都使用H.323协议,但是,随着越来越多的企业研究SIP协议,不久的将来基于SIP协 ...
- 【协议学习】SIP基本场景分析
1.SIP业务基本知识 1.1 业务介绍 会话初始协议(Session Initiation Protocol)是一种信令协议,用于初始.管理和终止网络中的语音和视频会话,具体地说就是用来生成.修改和 ...
- SIP业务基本知识
1.SIP业务基本知识 1.1 业务介绍会话初始协议(Session Initiation Protocol)是一种信令协议,用于初始.管理和终止网络中的语音和视频会话,具体地说就是用来生成.修改和终 ...
- sip协议呼叫流程详解
1.SIP业务基本知识 1.1 业务介绍会话初始协议(Session Initiation Protocol)是一种信令协议,用于初始.管理和终止网络中的语音和视频会话,具体地说就是用来生成.修改和终 ...
随机推荐
- python开发工具
要用到爬虫,网上推荐crapy,自己在pycharm上没有安装成功,于是使用anaconda,但是在gui界面安装crapy总是失败,且没有提示信息.于是使用命令行的方式,提示PermissionEr ...
- 理解vue之element-ui中的 <template slot-scope="scope">
https://blog.csdn.net/tg928600774/article/details/81945140?utm_source=blogxgwz1
- 项目中的java文件没有在WEB-INF\classes中生成class文件
https://blog.csdn.net/u011008029/article/details/49303723 病因: 我在eclipse 上面 编的web 项目 并没有错 但是 一直出现 5 ...
- mybatis11--多对多关联查询
多对多关联! 其实就是两个一对多的关联! 比如说 一个学生可以有多个老师!一个老师可以有多个学生! 那么 学生和老师之间的关系 可以理解为 多对多的关联关系! 关键是怎么建立数据库中两个表之间的关系 ...
- Lucene入门学习二
接上篇:增删改查 增加:这里不做过多阐述. 删除:删除全部,根据条件删除 修该:先删除,后添加 查询(*):查询所有,精确查询,根据数值范围查询,组合查询,解析查询. package com.ithe ...
- hive reduce 阶段GC Exception
某个reduce中的value堆积的对象过多,导致jvm频繁GC. 解决办法: 1. 增加reduce个数,set mapred.reduce.tasks=300,. 2. 在hive-site.xm ...
- python学习之旅(二)
Python基础知识(1) 一.变量 变量名可以由字母.数字.下划线任意组合而成. 注意:1.变量名不能以数字开头: 2.变量名不能为关键字: 3.变量名尽量起有意义的,能够通过变量名知道代表的是什么 ...
- 洛谷P3808 【模板】AC自动机(简单版)
题目背景 这是一道简单的AC自动机模板题. 用于检测正确性以及算法常数. 为了防止卡OJ,在保证正确的基础上只有两组数据,请不要恶意提交. 管理员提示:本题数据内有重复的单词,且重复单词应该计算多次, ...
- 浅谈Java对象的equals方法
相等与同一: 如果两个对象具有相同的类型以及相同的属性值,则称这两个对象相等. 如果两个引用对象指的是同一个对象,则称这两个变量同一. ==是一个比较运算符,基本数据类型比较的是值,引用数据类型比较的 ...
- C++ 在继承中虚函数、纯虚函数、普通函数,三者的区别
1.虚函数(impure virtual) C++的虚函数主要作用是“运行时多态”,父类中提供虚函数的实现,为子类提供默认的函数实现. 子类可以重写父类的虚函数实现子类的特殊化. 如下就是一个父类中的 ...