2011-01-26 40 views
0

我们正在流式传输.flv文件并使用流时间触发利用Caurina转换的动画。对于任何事情,少数参数根本不起作用或不完全;例如延迟功能和一些转换被忽略。 所以我的问题是,流时间可以用作触发器还是流时间导致冲突? 的,我们在做什么,下面是一个例子:Caurina Tweener转换和视频流时间(AS3)

conn= new NetConnection(); 
conn.connect(null); 
stream=new NetStream(conn); 

framesCurrent=(stream.time)*1000; 

if (framesCurrent>=15400) 
{ 
    Tweener.addTween(bullet01, {alpha:1, time:.35, transition:"easeInOutSine"}); 
    Tweener.addTween(text01, {alpha:1, time:.35, transition:"easeInOutSine"}); 
} 

回答

2

我看不出在这样调用中间人应该无法正常工作,但是:

  1. 你对事件实际上环路.ENTER_FRAME还是你有一个计时器来调用framesCurrent=stream.time*1000;以下的所有内容?如果你的代码正是你在上面发布的内容,那么补间没有被执行也就不足为奇了 - if语句在你启动NetStream时被调用,所以它不会在15.4秒播放时间。

  2. 而不是使用这样的循环,你有没有考虑过在你的FLV中使用事件提示点来触发补间?您可以在stream.onCuePoint中放置一个switch语句,并让您的补间在命名事件上执行,并在恰当的时间点触发。查看video tutorial关于如何设置事件提示点并作出反应(注意:本教程使用AfterEffects标记,但您可以在Adobe Media Encoder中轻松设置和/或向FLV添加事件。用来看看它是如何完成的。)