基于SIP的H.264视频电话终端设计

发布者:superstar10最新更新时间:2013-04-17 来源: eefocus关键字:SIP协议  H.264  视频电话 手机看文章 扫描二维码
随时随地手机看文章

    1引言

    视频电话终端系统的实现是个很复杂的过程,涉及多方面知识。

    其目的是利用互联网或固定电话网等为彼此通讯的双方不但能提供实时的语音交流而且可以实现视频信息的即时传输。由于丰富的视频数据和网络可用带宽的矛盾,视频电话的发展经历了漫长的发展过程,早在上世纪20年代就有人对他进行探索和研究。

    SIP(SessioninitiationProtocol)[1]协议是IETF于1999年提出的一种新的网络多媒体通信的交互信令,他相对于市场主体的H.323协议具有简单、扩展性好、便于实现等优点,但当构建电信级的大网时也相当复杂,此协议也在不断的补充和完善中[2]。目前市场上出现越来越多支持SIP的智能多媒体终端及相关软件和软交换设备,SIP将成为IP视频电话业务的主流协议之一。

    H.264视频编码标准[3]与其他视频编码标准如H.263,MPEG-4等相比,其更高的压缩效率和网络亲和性的优点正是视频电话及其各种应用所需要的。

    本文基于SIP协议、以H.264为视频编码标准、采用TI的高速数字信号处理芯片TMS320DM643和三星的ARM9芯片S3C2410为主体设计并实现了一款视频电话终端。

    2视频电话终端的硬件系统设计

    视频电话终端依据其使用方式的不同,大体上可分为"PC到PC"型和"电话到电话"型2大类。"PC到PC"型产品适合计算机用户,如MSN,QQ视频等,主要依赖用户双方的计算机加上合适的软件实现。"电话到电话"型产品两端都不需要计算机,电话终端本身包含音视频处理器及相应的软件完成音视频即时通讯功能。由于此类产品使用简单、安装方便、便于控制、性价比合珲等优点,市场前景广阔,是目前国内外研究的热点。他实现的方案有多种,如采用DSP,ARM芯片,专用的会议电视芯片等。考虑到生产成本、实现的难易程度、货源、市场推广、产品的升级更新等因素,本文确定的视频电话终端系统的硬件方案为:使用TI公司的通用DSP芯片TMS320DM643利用纯软件实现音视频编解码、用三星的ARM9芯片S3C2410实现各种接口、嵌入式操作系统和传输控制协议等。这样既不存在芯片多成本高的问题,又能保持很高的性能,可通过简单的程序下载实现软件升级或增加新的编解码标准。系统的硬件结构框图如图l所示。

    系统硬件主要由TI公司的TMS320DM643和三星公司的S3C2410组成。其中TMS320DM643完成音频压缩编解码G.711/G.729/G.723.1和视频压缩编解码H.264;S3C2410完成SIP协议和嵌入式OS及各种接口如RS232、复合视频输入/输出、数字CCD摄像头、LCD、RJ45、以太网、键盘等。音频信号的输入/输出通过TI公司的TLV320AIC23送入TMS320DM643进行压缩编码。

    3视频电话终端系统的软件设计

    3.1系统软件结构

    在系统硬件完成后,剩下的需要大量丁作来编写代码实现各个功能模块,最终实现整个系统。系统的软件结构如图2所示。嵌入式OS是采用ARM-Linux内核,硬件驱动模块主要是基于ARM9的介于硬件和Linux内核之间的软件接口,为特定的硬件响应定义好编程接口从而操作硬件,这2大模块的技术目前已相当成熟,相关的文献非常多;音频编码采用G.711/729/723.1,是为了让终端能适应音频编解码的非对称操作,有良好的兼容性,他可直接选用TI公司第三方提供的语音开发软件包。本文根据视频电话终端的特点和当前实现的技术难点主要讨论视频编码H.264和SIP协议栈2大核心技术的硬件实现。[page]

    3.2H.264的实现

    H.264视频编码标准虽然在设计时考虑到各种不同的应用和传输环境,其高的压缩效率和网络亲和性是以大的运算量为代价的,而在视频电话应用中虽然带宽有限却实时性要求高,所以考虑到实现的难易程度和技术本身必须对H.264编码方案进行精心选择(这里理所当然选用基本级),在利用DSP芯片实现时对程序要进行优化[4]。这里用C语音编程,利用TI公司的集成开发环境CCS2.2进行开发和调试,为了降低H.264编码算法的复杂性,适合视频电话的实时应用,主要从一下几个方面对其进行优化:

    (1)运动估计算法的简化

    在视频编码中,运动估计算法起着非常关键的作用,通常约占一个压缩方案总计算量的60%以上,所以这里采用一种快速的运动估计算法来降低运算复杂度[5]。在H.264编码标准中根据宏块(MB)的不同划分方式其对应的预测误差不同的特点,将编码模式简化为4组,先根据预测误差判断当前MB属于哪一组,然后在用拉格朗日率失真算法选取该组中最佳的编码模式,根据文献[5]的实验结果,这样做编码时间会缩短3倍左右而解码后图像的PSNR只有略微下降(最坏的情况不会超过0.5dB)。对于帧内预测,如从预测块P的9种可选预测模式选取使P块和当前编码块I之间最小的预测模式也太费时间。对I帧中每个4×4编码模式的概率进行计算,只选取其中出现概率最高的4种模式用于帧内预测[6]。

    (2)对程序结构进行优化

    首先对程序中的条件判断语句、循环语句和函数调用等进行优化调整减少这类耗费较多时钟周期的指令。对视频数据的变换和逆变换、SAD的计算、运动预测的计算等尽量使用软件流水线。其次利用CCS2.2中C编译器提供的优化选项对程序进行优化,并对程序中浪费时间较多的代码用汇编优化器来优化这些代码。

    (3)优化存储器由于视频数据量较大,对数据的存取浪费的时间较多。这里使用DMA方式进行数据的存取以减少存储器延时,即在CPU对数据处理前用DMA方式将所需数据传送到内部缓存中,这样不但节约处理时间还便于使用软件流水线。

    3.3SIP协议的实现

    基于SIP的通信协议有多个开源版本,本文采用OS-IP2(V2.2.2)[7]。OSIP2使按照RFC3261(SIP)和RFC2327(SDP)标准并使用标准C编写的一个公开源码的免费协议栈。其结构简单小巧,专注于底层解析,效率较高。Osip2协议栈大致可以分为3部分:SIP协议的语法分析、SIP协议的过程分析和协议栈框架。

    (1)SIP协议的语法分析

    支持RFC.3261和RFC3265定义的SIP协议消息,包括INVITE,ACK,OPTIONS,CANCEL,BYE,SUB-SCRIBE,NOTIFY,MESSAGE,REFER和INFO等。不支持RFC3262定义的PRACK。遵循RFC3264关于SDP的offer/answer模式。带有SDP的语法分析。支持MD5加解密算法,Authorization,www_authenticate和proxy-authenticate等。

    (2)SIP协议的过程分析

    基于RFC3261,RFC3264和RFC3265的SIP协议描述过程,围绕transaction这一层来实现SIP的解析。Transaction是指一个发送方和接收方的交互过程,由请求和应答组成。请求分为Invite类型和Non-Invite类型。应答分为响应型的应答和确认型的应答。响应型的直答是指这个应答仅代表对方收到请求。请求经过处理后都必须返回确认型的应答。响应型的应答有1xx,确认型的应答包括2xx,3xx,4xx,5xx和6xx。一个transaction由一个请求和一个或多个响应型应答、一个确认型应答组成。Transaction根据请求的不同和发送/接收的不同可以分为4类:ict(会话邀请的发起方)、nict(非邀请会话的发起方)、ist(会话邀请的接收方)和nist(非邀请会话的接收方)。

[page]

    (3)协议栈框架

    主要有3部分:底层套接字接收/发送,模块问通信管道,上层调用api接口。OSIP2并不实现底层套接字的接收俊送,其由eXOSIP实现,现在只支持UDP的链路连接。

    本文利用下载的用C语言编写()SIP2源码在LINUX环境下编译后下载到ARM9芯片S3C2410中。

    4结语

    根据以上的设计,研制了一套视频电话终端样机,完成的功能有:具有以太网,RJ45,JTAG,数字CCD摄像头、键盘和复合视频输入/输出、以语音输入/输出接口,支持音视频双向同步传送,在固话网和Internet网上测试,CIF格式视频传送率25帧/s,支持G.711/G.729/G.723.1语音编码。

    本文设计的视频电话终端就目前来说市场化每台成本能控制在1500元以下,因采用通用的DSP芯片和ARM芯片,对产品的进一步神经非常方便,只需更改相关软件即可。

    通过Internet或固话网实现语音和视频传输的应用需求越来越多,技术应用也将趋于成熟,视频电话机随着费用的降低也将走入千家万户,具有广阔的市场前景。

关键字:SIP协议  H.264  视频电话 引用地址:基于SIP的H.264视频电话终端设计

上一篇:面向LCD-TV系统的自适应调光和自适应背光增强技术
下一篇:一种叠加于TD-SCDMA 3G网络的PTT手机方案

推荐阅读最新更新时间:2024-05-02 22:38

基于MIMO技术与H.264码的无线视频通信方案
针对传统视频传输重建图像质量低的问题,提出了一种H.264码流传输的新方案。在信源端,根据H.264码流重要性差异,将其分为两部分。采用MIMO信道传输视频信号,在保持总发射功率恒定的情况下,在两根天线上动态分配发射功率。仿真结果表明,在同等信道条件下,提出的方案有效提高了接收端的重建图像质量。   0 引言   近年来,随着高速宽带无线技术的发展与应用,无线视频通信正成为人们广泛关注的领域。如何显著提高无线通信系统中的频谱效率,以满足日益增长的通信容量的需求,成了世界范围内广泛关注和急需解决的问题。多输入多输出( MIMO )技术通过增加发射端和接收端的天线数量,可以有效缓和上述矛盾,该系统在发送端和接收端同时采用多元天线阵
[模拟电子]
基于MIMO技术与<font color='red'>H.264</font>码的无线<font color='red'>视频</font>通信方案
H.264解码器中CABAC硬件加速器的实现
引言 H.264是由国际电信联盟(ITU)和国际标准化组织(ISO)共同制定的新一代视频编码标准,该标准采用一系列先进的编码技术,在编码效率、网络适应性等诸多方面都超越了以往的视频标准。H.264有两种熵编码方案:一种是从可变长编码方案发展而来的基于上下文的自适应可变长编码CAVLC;另一种是从算术编码发展而来的基于上下文的自适应二进制算术编码CABAC。与CAVLC相比,CABAC可以节省约7%的码流,但增加了10%的计算时间。在解高清码流时,用软件来做CABAC这样复杂的熵解码,无法完成实时解码的任务,因此,设计硬件加速器是非常必要的。 CABAC解码算法 在H.264解码器的输入码流中,数据的基本单位是句法元素(Syn
[半导体设计/制造]
S2C推出ALLEGRO第四代H.264 High Profile编码器
其广播级H.264编码器IP已授权给世界十大IC供应商之一 中国,上海 — 2011年7月19日 — S2C在中国推出ALLEGRO公司的广播级、第四代H.264 High Profile编码器。相对于前面三代,第四代的特点是支持MVC(3D)、支持低延迟、支持低比特率、支持蓝光和B帧。该产品由法国Allegro公司开发,针对移动电话、便携式摄像机、机顶盒、网络摄像机和视频监控等应用相关SoC设计公司设计,采用Allegro的H.264压缩算法,最初设计用于高质量的广播级应用,具备画面精致、流畅和尽可能小的设计代价(内存带宽消耗、面积、功耗、集成难度等)等特点,并可同时对数个通道进行编码。 该IP产品不久前又与另一
[半导体设计/制造]
贸泽电子与Insight SiP 签署全球分销协议 开售整套交付BLE模块
2018年1月31日 – 半导体和电子元件的全球授权分销商贸泽电子 ( Mouser Electronics ) 宣布与 Insight SiP 签订了全球分销协议,即日起备货可立即使用的Insight SiP射频 (RF) 模块。Insight SiP的蓝牙低功耗模块专为 低功耗 无线连接应用而设计,如电信和移动计算、便携式消费类设备、 医疗保健 、联网 汽车 、 工业 和 物联网 (IoT) 等应用。 贸泽电子供应的 Insight SiP产品线 包含三个微型蓝牙模块,以及相关的评估和测试板。 ISP1507 是一款先进的微型蓝牙低功耗模块,搭载最新的Nordic Semiconductor nRF52 片上系统 (SoC
[嵌入式]
H.264编码技术发展状况及与MPEG-4的比较分析
1、H.264视频编码标准状况     H.264是由ITU-T的VCEG(视频编码专家组)和ISO/IEC的MPEG(活动图像编码专家组)联合组建的联合视频组(JVT:jointvideoteam)提出的一个新的数字视频编码标准,它既是ITU-T的H.264,又是ISO/IEC的MPEG-4的第10部分。     而国内业界通常所说的MPEG-4是MPEG-4的第2部分。H.264标准从1998年1月份开始草案征集,到2003年7月,整套H.264(ISO/IEC14496-10)规范定稿。2005年1月,MPEG组织正式发布了H.264验证报告,从各个方面论证了H.264的可用性以及各种工具集的效果,从标准的角度,印证H.2
[嵌入式]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved