通用计算机流媒体服务器的顺序与实时传输模式研究

需积分: 10 3 下载量 175 浏览量 更新于2024-07-24 收藏 3.16MB PDF 举报
随着互联网的迅猛发展,流媒体应用如网络电台、视频点播和直播(Ilrrv)的需求日益增长,服务质量的要求也在不断提升。本文着重研究了在通用计算机上运行的流媒体服务器体系结构,探讨了两种主要的流媒体传输模式:顺序流式传输和实时流式传输。 顺序流式传输是基于HTTP/TCP协议栈的典型C/S架构应用,其特点是以固定的文件格式封装形式传输媒体流数据包。这种模式可以看作是对本地文件播放功能的扩展,允许多个远程播放器同时访问同一源文件。本文以OGG Vorbis/Icecast为例,详细研究了媒体流数据包在顺序流式服务中的组织流程,特别关注了OGG Page的固定长度包在Icecast服务中的应用。 实时流式传输则代表了流媒体应用的更高级需求,它强调低延迟、高效利用网络带宽和高并发处理能力,能够根据网络状况动态调整数据包发送速率。为了实现这一目标,实时流式传输采用交互控制信息和数据承载传输分离的网络编程架构。在媒体流传输过程中,关键步骤包括数据源对媒体数据的切割和RTP封装,确保数据包的实时到达。例如,针对Theora开源视频压缩编码的特点,本文提出了一种固定的RTP包封装算法,并构建了一个基于组播传输的实时流式传输原型,通过数据输出测试验证了算法的正确性。 在服务器层面,为了满足高性能实时流式服务的需求,本文深入分析了OMs(Open Media Server)开源流媒体平台,特别是其服务器Fenice的设计和实现。Fenice流服务器采用了RTSP/SDP/TCP作为控制协议,用于管理连接和会话,而RTP/RTCP/UDP协议栈则负责实际的数据传输,确保了实时性和稳定性。 总结来说,本文通过对流媒体传输服务的这两种模式进行深入探讨,不仅涵盖了从编码、传输到服务端处理的全过程,还展示了如何结合特定的技术如OGG Theora和OMs Fenice来优化实时流媒体体验。这对于理解现代流媒体技术的发展趋势以及优化实际应用具有重要的参考价值。