论文部分内容阅读
近几年,随着互联网技术的迅猛发展,智能硬件的快速普及,多媒体应用变得越来越多样化、智能化。同时,国内外的互联网普及率及网民数量逐年攀升,网民年龄结构偏向年轻化,这就对Web服务器的性能要求提出了极大的挑战。而传统Web服务器存在占用大量系统资源、系统架构庞大、应对高并发能力不强等问题。因此,选用轻量级、高性能的Nginx服务器与当下的流媒体技术相结合,设计一款基于Nginx的智能多媒体传输系统,在传道授业、会议讨论等领域具有重要的应用价值。在对Web服务器基本框架及多媒体传输相关技术研究的基础上,根据智能多媒体传输系统的需求及特点,本文提出了一种基于Nginx的智能多媒体传输系统的设计方案。系统性能稳定、可扩展性强,具有支持高并发处理、操作简单、组建方便、传输稳定等优点,符合在教室教学、重要会议、现场直播等领域的应用要求。本文的主要研究工作为:首先,提出了一种基于DirectShow框架的屏幕抓取方法,即通过封装屏幕抓取Filter直接抓取计算机底层屏幕信息,提升了原始屏幕信息抓取的图像质量;其次,对屏幕信息采集、数据编解码、SDL显示部分程序设计进行多线程优化,通过设计数据缓冲区,实现多线程间的数据同步,提高了系统资源利用率及编解码过程中的系统流畅程度。最后,以树莓派为硬件平台,采用Nginx部署RTMP流媒体服务器,实现了多用户请求下的数据稳定转发,降低了系统传输延时;并提出了一种基于LVS和Keepalived的Nginx流媒体负载均衡方案,实现对系统内的每个节点进行心跳检测、故障转移,提升了系统服务质量及稳定性。为了验证本文提出的基于Nginx的智能多媒体传输系统的性能,本文分别在实验室、会议室、教室等不同环境下对系统的基本功能、稳定性、延时性、兼容性等方面进行了实地测试及系统质量评估。测试结果表明,系统的客户端软件及流媒体服务器可以在不同场景下稳定工作,系统整体延时较小,符合不同场景下对于屏幕信息实时共享的要求,是一个可行的屏幕共享应用案例。