论文部分内容阅读
近年来,随着移动多媒体和3G、4G技术的快速发展,基于智能手机的多媒体交互得到广泛关注。与传统的音视频通信相比,部署于智能系统的音视频软件将得到更大的应用,具有更高的实时性。但现有移动多媒体音视频通信系统操作界面不够人性化,操作太过繁琐。本文主要针对现有移动多媒体音视频通信系统中的不足,研究和设计了一款基于Android的实时音视频通信软件,其主要目的是实现实时的音视频通信,并且适合目前智慧社区中庞大的中老年人群的使用,界面可操作性强。本文的主要工作和成果如下: (1)分析了基于Android的实时音视频通信的主要技术和协议,并设计了基于Android的实时音视频通信系统的总体框架。针对流媒体的传输特点和Android NDK和Java JNI技术,移植FFmpeg多媒体库中的H.264技术到Android平台进行视频的编解码处理。 (2)移植开源库Jlibrtp和Mjsip,实现软件的信令交互和音视频的RTP实时传输,并研究了RTP协议、SIP协议在Android中的程序实现。根据功能需求对各个模块进行设计并实现。 (3)针对视频过程中出现的抖动现象,本文改进传统的单一的去抖动算法,结合RANSAC算法和SIFT算法。采用SIFT进行关键点的检测,生成特征描述子,进行SIFT特征点匹配;然后采取 RANSAC算法去除误匹配点,进行运动估计;并采用高斯滤波去除高频抖动;最后采用双线性插值法进行图像的补偿,提高视频的质量。在建立抖动模型过程中,针对传统建模时复杂度和精确性不能匹配的问题,本文建立了新的去抖动模型来平衡复杂度和精确性的要求。对本文改进的去抖动算法仿真后知道,本文算法能够完成预期的效果,并且在性能上具有更好的处理效果和更快的处理速度。 本文设计和实现了实时音视频通信软件,测试后发现,软件操作界面友好,能满足系统设计的需求,并且性能稳定,具有良好的用户体验。