论文部分内容阅读
随着流媒体传输技术和数字图像处理技术的发展,人们期待信息交互的多元化。近年来,移动互联网和智能手机发展迅速,使得基于智能手机开发多媒体交互应用成为可能。本文设计并实现了基于Android的多媒体信息交互软件,可以通过软件进行即时消息通信、语音电话和视频聊天等操作。多媒体信息交互软件包括服务器和客户端两部分。客户端和服务器之间采用SIP(会话初始化协议)实现信令交互,通过RTP(实时传输协议)实现音频和视频数据的传输。视频编码采用H.264标准,语音编码采用G711标准。本文主要工作和创新点如下:(1)研究了软件开发中涉及的关键技术,包括音视频同步、SIP协议、XML解析、Android NDK开发和H.264帧内预测编码技术,为下一步开发打下基础。(2)设计了多媒体信息交互软件的总体框架,根据软件的功能需求对软件进行模块化设计,并介绍了各个模块的功能。(3)移植开源库Mjsip和Jlibrtp,实现软件SIP信令交互和音视频RTP数据传输。(4)针对网络传输数据丢包和乱序引起媒体播放时抖动和不同步现象。本文设计了二级缓存机制消除抖动,并提出了一种音视频同步方法。通过设置缓存区实现媒体内同步,在时间戳和音频作为参考流连续播放的音视频同步控制方式基础上,当检测到音频丢包时插入舒适噪声。在对音频影响较小的情况下,实现较好的音视频同步效果。(5)为了提高视频编码效率,本文对OpenCore开源库中的视频编码算法进行优化,根据图像平坦度进行宏块预测模式选择。修改帧内4×4预测流程,减少了计算量,加快了预测模式选择速度。然后采用Android NDK技术移植开源库,实现视频编解码。在不影响观看的基础上降低了编码计算复杂度,提高了视频编码效率。对设计的多媒体交互软件进行测试,测试结果表明软件运行稳定,操作友好,能够完成预期的功能。