查阅网上各种资料,发现live555作为服务器实现h264码流的rtsp传输的例子很多,但关于live555实现ts流的rtsp传输的资料很少。由于项目需要,我的客户端只能实现rtsp的TS流解码,故只能自己摸索。
以下参考h264相关资料和自己理解进行编写,不当之处请理解。本工程以ts文件为数据源,通过live555服务器推送ts流,从而实现rtsp传输。
1.概述
liveMedia 库中有一系列类,基类是Medium,这些类针对不同的流媒体类型和编码。 其中的StreamFrame类文件(如MPEG4VideoStreamFramer)为流传输关键。
重要概念:
StreamFrame类:该类继承FramedSource基类,实现数据流的控制和传输。
StreamFrame(ByteStreamLiveSource) -->FramedFilter--> FramedSource----> MediaSource
FramedSource 派继承MediaSource父类,一帧码流的实现。
注意:unsigned char* fTo; 为指向发送的码流的指针,采集到视频数据后填充到该指针中即可实现码流的传输。针对TS流,必选保证每次放入fTO的数据个数为