2.6 音视频数据传输的实现
利用RTP/RTCP实现语音视频流的实时传输。RTP负责数据发送和接收,RTCP负责网络丢包、误码情况的反馈等。通过调用JRTPLIB提供的库函数就可以开发出高质量的音/视频传输程序。
发送端调用JRTPLIB提供的库函数实现语音视频等的实时发送过程为:(1)通过调用RTPSession类的构造函数创建一个RTP会话实例,然后调用RTPSession类的方法对其初始化,设置负载类型、标识和时戳增量,以及指定流媒体的目标地址;(2)设置RTP会话参数,通过调用RTPSessionParams类的SetOwnTimeStampUnit()方法设置时间戳和RTP传输参数;(3)通过调用SendPACket()方法向目标地址发送采集编码后的音视频数据。接收端的创建RTP会话实例和RTP会话参数设置与发送端的设置相同。
本文设计和实现了一个基于SIP的嵌入式网络无线可视电话终端模型。该终端支持音频和视频的实时通信。终端之间采用开放的SIP进行通信,SIP的应用避免了采用私有协议所带来的封闭性,提高了同其他设备的互通性;同时利用WiFi技术提高了视频电话终端的便携性。SIP协议具有简单、可扩展的特性,将会在下一代网络中占有重要地位。目前对SIP在视频电话系统中的应用还处于试验阶段,能与之通信的SIP设备还不多,但随着NGN平台的建立和SIP设备的不断增多,其灵活性和互通性的优点会逐渐体现出来。支持多人的可视电话终端将是进一步要研究的课题,前景一片光明。
上一篇:嵌入式系统的VGA接口设计