【问题标题】:How do I record streams in chunks on Flash Media Server如何在 Flash Media Server 上以块的形式录制流
【发布时间】:2009-06-24 11:50:23
【问题描述】:
我想录制使用 Flash Live Encoder 发布到 FMS 3.5 的流,但将录制拆分为具有预定义长度的文件。例如,如果发布了流“网络摄像头”,我想以 10 分钟为单位记录它:“webcam1.flv”、“webcam2.flv”...
据我所知,没有使用计时器的设施。我能想到的唯一解决方案是使用带有时间限制参数的 stream.record() ,但这似乎是一个 hack,因为当记录应该停止并开始记录另一个块时,它会触发流上的 NetStream.Record.DiskQuotaExceeded。
有没有人做过类似的事情?
【问题讨论】:
标签:
streaming
video-streaming
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();
}