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)是一种信令协议,用于初始.管理和终止网络中的语音和视频会话,具体地说就是用来生成.修改和终 ...
随机推荐
- word2vec:基本的安装及使用简介
官方word2vec的github下载地址:https://github.com/svn2github/word2vec 环境,linux-ubuntu-14.04LST,安装好git, gcc版本4 ...
- poj 1269
水题.判断两条直线位置关系. 考虑平行的情况,那么 四边形的面积会相等,重合的话,四边形的面积相等且为0. 除去这两种就一定有交点. #include <cstdio> #include ...
- 算法提高 金属采集_树形dp
算法提高 金属采集 时间限制:1.0s 内存限制:256.0MB 问题描述 人类在火星上发现了一种新的金属!这些金属分布在一些奇怪的地方,不妨叫它节点好了.一些节点之间有道路相连 ...
- Skip the Class
BestCoder Round #92 Skip the Class Accepts: 678 Submissions: 1285 Time Limit: 2000/1000 MS (Java/ ...
- Oracle数据库实例的启动及关闭
要启动和关闭数据库,必须要以具有Oracle 管理员权限的用户登陆,通常也就是以具有SYSDBA权限的用户登陆.一般我们常用SYS用户以SYSDBA连接来启动和关闭数据库.下面介绍Oracle数据库几 ...
- 30、git 使用
Git 一. 目标 (一) Git的操作 二. Git和SVN的区别 (一) SVN优缺点 1. 优点: (1) 管理方便,逻辑明确 (2) 易于管理,集中式服务器更能保证安全性 (3) 代码一致性非 ...
- 注意兼容浮点运算误差 0.7 + 0.1 ==0.8 为false
所以比较 汇总或者计算的时候注意确定精度0.7 + 0.1 ==0.8 换成 Math.abs(0.7 + 0.1 ==0.8)<0.0001参考下
- python全栈开发 * 26知识点汇总 * 180709
26 logging collections random 模块 一.logging低配:日志不能写入文件与显示同时进行 import logging logging.basicConfig(leve ...
- css学习_css文字阴影、盒子阴影
文字阴影和盒子阴影的用法: 多阴影
- Linux Shell编程中的几个特殊符号命令 & 、&& 、 ||
https://blog.csdn.net/hack8/article/details/39672145 Linux Shell编程中的几个特殊符号命令 & .&& . || ...