您当前的位置:五五电子网电子知识单片机-工控设备DSP/FPGA技术基于Blackfin 533的SIP网络电话 正文
基于Blackfin 533的SIP网络电话

基于Blackfin 533的SIP网络电话

点击数:7677 次   录入时间:03-04 11:35:59   整理:http://www.55dianzi.com   DSP/FPGA技术

    ② 运行X—Lite的主机,用来作为远端客户机,和网络电话处于对等的状态,用来进行呼叫、接受呼叫等功能性实验;

    ③ Blackfin网络电话,以下简称为“BF533网络电话”。

    它们都以以太网的方式接入同一个局域网中。实验环境的示意图如图5所示。Ethereal是本次实验中用到的监听工具。

4.2 界面简介
    用户界面如图6所示。

    靠近显示区的顶端是音量显示区。小图标指明了显示音量的种类;音量显示采用递增柱体,分为6级。紧挨着音量显示区的是状态显示区。这部分包括Server状态信息显示区、Call状态信息显示区、当前通话状态信息显示区和号码输入显示区。底部是菜单显示区。从左到右分别为:选择上一通话、选择下一通话、呼叫转接、呼叫保持、增大麦克音量、减小麦克音量、增大扬声器音量、减小扬声器音量、电话会议。

4.3 功能测试
    (1)注册

    注册过程如图7所示。BF533网络电话和SER服务器共 交换 了两条消息:一条是目标系统向服务器发送的REGISTER请求消息,另一条是服务器发送的200 OK消息。

    (2) 呼叫过程

    呼叫过程如图8所示。BF533网络电话(BP)先是向SER服务器发送了一条INⅥTE消息(M1),要求与远端客户机(RC)进行对话。SER马上回复一条100 Trying消息(M2)表示正在尝试连接。然后SER将INⅥTE消息加入相关的Record—Route和Via头部域以后成为消息M3,发送给RC。RC回复一个100 Trying消息(M4)给SER,然后再发送180Ringing(M5)给SER,表示正在响铃中。SER将M5中它的Via和Record—R0ute头部域去掉以后,成为消息M6发送给BP。在RC接受本次呼叫以后,它发送一个200 OK(M7)给SER。SER去掉Via以后,发送M8给BP。收到M8以后,BP发送ACK(M9)给RC。之后,双方之间的通话就建立了起来。当会话结束时,



www.55dianzi.com

BP发送BYE(M11)给RC,之后,RC返回200 OK(M14),这次通话就结束了。(被叫过程和呼叫过程相似。)

    (3)呼叫转接

    该过程是通过扩展的SIP信令REFER来完成的,交互过程如图9所示。当BF533网络电话要将它和远端客户机1(RCl)的通话转接到远端客户机2(RC2)时,BF发送REFER(M1)给RCl,该信息中Refer—To字头标明了RC2的URL,之后RCl回复202 ACCepted(M2)给BP表明接受转接。随后,RCl和RC2之间会有类似于通话建立过程的信令交互INVITE(M3),100 Trying(M4),180Ringing(M7)、200 OK(M10),RCl会通过NOTIFY将转接状态告知BP,最后RCl回复ACK(M13)给RC2建立通话,同时其与BP的通话就断开了。

    (4)呼叫保持/恢复

    呼叫保持并没有专门的信令,而是将INVITE信令体SDP中的Connection Information(c)参数设为空(即(IPV4)0.O.O.0)来实现的。 BF533网络电话远端客户机远端各尸机回复200 0K接受保持,如图10所示。同理,呼叫恢复就是将c参数恢复原值,过程与呼叫保持相同。

    (5)电话会议

    会议功能是在Blackfin 533上实现的,将不同Port的语音数据混合并发送给目的Port,即可让参与者听到多方的声音。通过测试,各项功能均已实现,而且通话质量良好。

结 语

    本文提出并实现了一种基于Blackfin的SIP网络电话解决方案,介绍了整个系统的构成,包括硬件方案和软件方案,并展示了相关的功能。由于采用层次化设计,并提供了丰富的API接口,因此该方案有较强的可拓展性。



上一页  [1] [2] 


本文关键字:网络电话  DSP/FPGA技术单片机-工控设备 - DSP/FPGA技术