外部FLV影片的控制
2010年08月02日
有两种方式可以知道一个FLV文件的长度
1:结合FMS服务器 在FCS服务器端有个Stream对象,其中有一个length方法,可以获取一个流式播放的FLV文件长度,然后在结合NetConntion.call方法将服务器端这个长度返回给客户端:
在main.asc里添加下列代码:
function getStreamLength(name) {
return Stream.length(name);;
}
设置Client.prototype:
Client.prototype.getStreamLength = getStreamLength;
2:利用onMetaData来获取FLV文件的总时间长度
nc = new NetConnection();
nc.connect(null);
ns = new NetStream(nc);
video.attachVideo(ns);
ns.play("sample.flv");
ns["onMetaData"] = function (MetaObject)
{
for (var i in MetaObject)
{
trace ( i+":"+MetaObject);
}
};
在使用此方式之前,必须确保你的FLV已注入MetaData,否则也是无效的。
注入MetaData信息可以使用FLV MetaData Injector
下载地址: http://www.buraks.com/flvmdi ;
FLV元数据注射器,顾名思义,它可以给FLV(flash视频)文件注入元数据.
元数据记载了FLV文件高,宽,影片长度等信息.
3.删除FMS的FLV文件
在main.asc里添加下列代码:
function clearStream(name) {
trace("clearStream("+name+");");
var stream = Stream.get(name);
return stream.clear();
}
设置Client.prototype:
Client.prototype.clearStream = clearStream;
2010年08月02日
有两种方式可以知道一个FLV文件的长度
1:结合FMS服务器 在FCS服务器端有个Stream对象,其中有一个length方法,可以获取一个流式播放的FLV文件长度,然后在结合NetConntion.call方法将服务器端这个长度返回给客户端:
在main.asc里添加下列代码:
function getStreamLength(name) {
return Stream.length(name);;
}
设置Client.prototype:
Client.prototype.getStreamLength = getStreamLength;
2:利用onMetaData来获取FLV文件的总时间长度
nc = new NetConnection();
nc.connect(null);
ns = new NetStream(nc);
video.attachVideo(ns);
ns.play("sample.flv");
ns["onMetaData"] = function (MetaObject)
{
for (var i in MetaObject)
{
trace ( i+":"+MetaObject);
}
};
在使用此方式之前,必须确保你的FLV已注入MetaData,否则也是无效的。
注入MetaData信息可以使用FLV MetaData Injector
下载地址: http://www.buraks.com/flvmdi ;
FLV元数据注射器,顾名思义,它可以给FLV(flash视频)文件注入元数据.
元数据记载了FLV文件高,宽,影片长度等信息.
3.删除FMS的FLV文件
在main.asc里添加下列代码:
function clearStream(name) {
trace("clearStream("+name+");");
var stream = Stream.get(name);
return stream.clear();
}
设置Client.prototype:
Client.prototype.clearStream = clearStream;