论文部分内容阅读
实时音视频对等网络(Peer-to-Peer,P2P)传输技术已经广泛应用于网络视频聊天、远程监控等领域。由于P2P传输借助基于用户数据报(User Datagram Protocol, UDP)协议的NAT穿越技术实现跨越网络地址转换(Network Address Translation, NAT)设备的连接,这导致在传输无灵活宏块次序模式的H.264编码视频流时,可能丢包,引起解码错误。本文针对该问题研究P2P可靠传输系统的设计方法,以保证音视频实时流畅播放。本文所设计的P2P可靠传输系统包括用以发送音视频的主机端、接收音视频的客户端,以及引导P2P连接的服务器端。该传输系统采用UDP穿越NAT的P2P技术,支持的NAT穿透类型与主流P2P平台相同。由于H.264编码视频流中不同帧、不同数据位置的可靠性需求不同,该系统实时分析视频码流的帧类型和数据块位置来设置数据包的重要等级,不同的重要等级对应不同的重发次数。本文参照传输控制协议数据包重传的方法,通过控制重发次数,实现了一种可变重发次数的数据包维护方法以满足不同数据包的可靠性需要。不仅如此,该系统还能够根据传输时的重发次数,实时调节摄像头输出码率,从而使系统可以适应更大的带宽波动。经过测试,本文设计的实时音视频P2P可靠传输系统,能自适应不低于500kbps的带宽,根据带宽匹配传输VGA400kbps~720P 1600kbps的H.264视频码流和44.1Hhz双声道8位ADPCM音频。在最低500kbps带宽时仍可以达到10fps平均有效帧率,相比于TUTK的P2P平台,平均有效帧率高30%。本文所设计的实时音视频P2P可靠传输系统适用于各种采用H.264视频编码、ADPCM音频编码的实时音视频传输场景,例如网络摄像头、遥控可视小车、航拍飞行器等。