RTSP流媒体服务器的搭建与测试《带源码》

总结有福利C++实现RTSP/RTP流媒体服务器,同时支持linux和windows编译环境 。使用VLC客户端测试通过 。实现RTSP的OPTIONS、DESCRIBE、SETUP、PLAY、PAUSE、TEARDOWN,实现SDP生成,实现RTP打包,实现TS文件解析 。有相应的源码分析文档 。
新增功能
一别名
别名主要是替换URL中真实的文件名和路径 。使用别名,Helix Universal Server管理员可以伪装真实的资源在发布的URL中,这样做可以使URL更友好,更短 。
 
二内容缓存
内容缓存可以使两台以上的Helix Universal Server传输多媒体文件,这样做有两个好处:
第一:缓存改进了客户播放内容的品质
第二:内容缓存节约了传送成本,直接将内容缓存至离客户最近的网络 。
 
三定制日志
定制日志是系统生成报告的一个灵活功能 。这里使用了模板功能,它定义了哪些信息被捕捉,什么时候去捕捉 。你可以使用默认的模板也可以创建你自己的模板 。
 
四模仿直播传输代理 SLTA (Simulated Live Transfer Agent )
SLTA可以像直播那样传输一个流媒体片度,它使RealNetworks下一代的工具 。SLTA像上一代技术G2SLTA一样支持很多的流媒体格式,它提供了一种发布流媒体的更强劲的方式,像一台直播机一样,将一个流媒体发布到接受者那里 。
 
五RTSP 缓存指示
在默认的情况下,一个代理可能缓存所有的点播内容和直播内容在一台Helix Universal Server上 。但是可能你不想缓存其中的一些内容 。RTSP缓存指示可以告诉那些缓存的 Helix Universal Server 应该缓存什么内容,不应该缓存什么内容 。RTSP所赋予你更大的灵活性 。
 
六冗余服务
本功能可以使你为内容发布添加等级 。默认的情况下,RealOne Player在中断后,将向Helix Universal Server重新申请连接 。不论如何,你可以指定另外一个服务器来让RealOne Player连接 。
七Windows Media 流媒体支持
Helix Universal Server可以使用MMS协议或者HTTP协议向Windows Media Player传输Windows Media格式的流媒体 。它也可以通过HTTP方式与Windows Media Encoder连接,允许传输Windows Media 的广播到其他的Helix Unviersal Servers.因此,你可以使用一个统一的流媒体网络来发布多种格式的流媒体,例如:RealMedia,Windows Media 以及QuickTime 。
 
八MPEG 流媒体支持
Helix Universal Server可以发布MPEG-1,MPEG-2,MP3,以及MPEG-4格式的内容 。详细内容参见“MPEG音频与视频”
 
九智能流
Helix Universal Serve可以帮助在保证带宽的情况下进行Real音频或者Real视频的广播 。使用智能流你可以先从服务器端发送测试包到接受者那里,不管客户端使用什么样的流媒体码率,在智能流的控制下,只有一个适合客户端的码率可以被接受 。
 
十RealOne Player 的统计
新的客户统计状态类型4,可以更好的返回RealOne Player的信息,包含每一个流信息包,带宽等信息,以便可以更好的根据返回结果使用TurboPlay功能.
架设网络直播电视

RTSP流媒体服务器的搭建与测试《带源码》

文章插图
 
支持多种流媒体文件:
音频文件:RealAudio.Wav.Au.MPEG-1.MPEG-2.MP3
视频文件:RealVideo.AVI.QuickTime.
其他类型:RealPix.RealText.GIF.JPEG.SMIL.Real G2 with Flash
等等.
但Helix SERver不支持所有的流媒体文件,所以还要一些软件支持,因此Helix Universal Platform提供了一功能强大的工具---Helix Producer.它可以将Helix Server 不支持的流媒体文件转换成它支持的流媒体文件.
Helix Server提供了多种类型服务:
1).点播(On-Demand)
任何时候,用户都可以通过单击Helix Server管理员公布的web连接,向Helix Server提出播放流媒体文件的要求,服务器再按照用户的要求,以"流"的方式不断地把数据传给用户.用户就可以像播放本地流媒体文件一样,随意控制文件播放.
2).直播(Live)
网络直播和现实生活中的电视直播方式是类似的.直播的过程大致如下:
1.在现场使用摄像机,话筒等媒体采集工具采集实况信号.
2.用数/模转换设备如视频采集卡将采集的模拟信号转换成数字信号.
3.数字信号经压缩编码软件如Helix Producer转换成流媒体数据流,并送往Helix Server/
4.用户单击web连接时,Helix Server将接收到的数据流发送给用户.和点播不同的是,用户收看的是实时信号,用户不能控制快进,暂停.
3).模拟直播(Simulated Live)
模拟直播的过程如下:
1.流媒体文件储存在服务器或其他PC机上.


推荐阅读