2009-06-24 63 views
1

我想将使用Flash Live Encoder发布的流记录到FMS 3.5,但将记录拆分为预定义长度的文件。例如,如果一个流'网络摄像头'发布,我想记录它在10分钟的块:'webcam1.flv','webcam2.flv'...从我所知道的是没有设施与定时器一起工作。我能想到的唯一解决方案是使用带时间限制参数的stream.record(),但这看起来像一个黑客,因为当recordin应该停止并开始录制另一个块时,它会在流上触发NetStream.Record.DiskQuotaExceeded。 有没有人做过类似的事情?如何在Flash Media Server上以块的形式记录流

回答

1

在服务器端,为什么不重新发布并记录带有时间戳名称的流。然后运行一个定时器,该定时器每隔十分钟(或其他)启动,以停止该流的记录,并创建一个播放客户端流的新服务器端流。

setInterval("setNewStream", 600000); 

function setNewStream() { 
var now = new Date(); 
serverStream.record(false); 
var filename = "recording-"+ now.getHours() + "-" + now.getMinutes(); 
serverStream = Stream.get(filename); 
serverStream.play("clientStream"); 
serverStream.record(); 
} 
:沿线的

东西

相关问题