多协议、性能稳定、丰富API的流媒体服务器软件
如何使用MediaCaster AP来启动Native RTP 和MPEG-TS流?

当你使用rtp-livertp-live-record 的stream type时,Native RTP 和 MPEG-TS 流跟随用户播放端的启动而启动,跟随用户播放端的停止而停止(当然会有一个TimeOut时间)。 当用户播放端第一次请求播放时,流启动发布;当最后一个用户播放端停止播放60秒后,这个流停止发布。 如果你想控制什么时候启动发布流,并让它保持运行状态,那么你可以用MediaCaster API来启动(acquire)和释放(release)这个流。


参考代码如下:

启动发布流:
MediaCasterStreamMap mediaCasterMap = appInstance.getMediaCasterStreams();
MediaCasterStreamItem mediaCasterItem = mediaCasterMap.acquire(streamName);
		

释放发布流(其实不是停止,只是对持续发布流的状态做解锁,也就是说只要有连接的客户端,www.ttstream.com,即使调用了这个方法,这个流依然会保持发布状态):
mediaCasterItem.release();
		

注:以上这两个方法也适用于streamType为live的场景。但是注意一点,如果streamType是live,那么不通过管理界面或这个代码来启动流,那么客户端播放请求是无法自动让流启动的


acquire方法将会把还没有启动的流启动起来并保持运行状态,即使没有任何客户端来请求了。release方法将解除这种锁定状态,如果没有客户端请求了,这个流就会停止发布。 如果有客户端还在请求,那么会依照正常情况继续发布流。另外,你必须要注意的是acquire方法和release方法必须成对出现。