是否可以在编译时从嵌入swf的数据中播放视频(使用[Embed]元标记)?
Flash CS3等提供的“导入视频 – >嵌入”功能是不可接受的,因为它有许多严重的限制(包括声音同步问题,最大帧数和其他警告)
我有兴趣将swv视频数据捆绑在swf(以及其他资产)中,这些数据将由AIR应用程序播放.
我不认为可以做到.有人不同意吗?
解决方法
只要您的视频是FLV,那么答案是肯定的 – 您可以使用NetStream.appendBytes()来播放嵌入的ByteArray:
public class Main extends MovieClip
{
[Embed(source="sample.flv",mimeType="application/octet-stream")]
private var SampleVideo:Class;
public function Main():void
{
var video:Video = new Video(320,240);
addChild(video);
var netConnection:NetConnection = new NetConnection();
netConnection.connect(null);
var netStream:NetStream = new NetStream(netConnection);
netStream.client = {};
video.attachNetStream(netStream);
var byteArray:ByteArray = new SampleVideo();
netStream.play(null);
netStream.appendBytes(byteArray);
}
}

