论文部分内容阅读
计算机技术和互联网技术历经几十年的飞速发展,现在已经深入到了每一个普通民众的生活之中,使得人们逐步习惯用互联网进行彼此联络。在这样的大背景下,计算机和互联网技术交织而产生的流媒体技术也步入了人们的视野之中,并逐渐获得广泛的应用。流媒体服务器的优化和研究对流媒体技术发展起到至关重要的作用。与此同时,随着社会的进步,便携性也成为了服务器需要满足的要求。针对目前普通的流媒体服务器所存在的不足,本课题经过认真地研究和分析,设计并实现了一款基于RTMP协议的轻量级视频服务器。本文首先介绍了该课题目前的研究背景,阐述了该研究的必要性,介绍了当前国内外对该课题各种研究的现状和进度。接下来对流媒体服务器开发中要使用到的协议与技术进行了调研,其中包括TCP、RTMP协议,流媒体的传输方式和视频的压缩编码技术。根据以上重要的技术,本论文提出了一个系统设计方案。系统主要分为三个层次:数据层、控制层、处理层。在提出设计方案之后,按照既定方案,分模块、分步对系统中的三层进行了具体实现,同时对关键的实现部分进行了阐述:对关键部分的实现原理部分按照RTMP协议规范的内容进行了分析和说明。在论文的最后,对系统的功能进行了全面的测试,主要针对系统的功能测试和性能参数测试两个方面来进行。本论文经过对现行的主流的流媒体技术进行分析和比较,决定采用较为普遍的RTMP协议作为传输协议,并基于该协议的RTMP库,按照B/S模式设计了系统。视频采集运用了ffmpeg程序,客户端登录使用了MVC模式进行开发,登录认证中运用到了SHA1技术对密码进行单向散列处理之后进行保存,解码播放使用了jwplayer。该系统的主要功能是进行小范围的流媒体分享,以及利用浏览器进行即时的在线播放。在视频采集模块的加入下,还可以应用于家庭安全监控,实时图像直播。经过多次全面的测试,该系统的传输码率在可以接受的范围中较为稳定,服务器的CPU占用率在为其设计的运用场景中也能够令人满意,可以保证系统的稳定运行。