我想将使用 Flash Live Encoder 发布的流录制到 FMS 3.5,但将录制拆分为具有预定义长度的文件。例如,如果发布了流“网络摄像头”,我想以 10 分钟为单位记录它:“webcam1.flv”、“webcam2.flv”……据我所知,没有使用计时器的工具。我能想到的唯一解决方案是使用带有时间限制参数的 stream.record() ,但这似乎是一个 hack,因为当记录应该停止并开始记录另一个块时,它会触发流上的 NetStream.Record.DiskQuotaExceeded。有没有人做过类似的事情?
问问题
807 次
1 回答
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();
}
于 2010-03-11T05:51:06.353 回答