flash - 在 swf 文件中嵌入二进制视频数据

标签 flash actionscript-3 air flv embedding

是否可以在编译时从嵌入到 swf 的数据中播放视频(使用 [Embed] 元标记)?

Flash CS3 等提供的“导入视频->嵌入”功能是 Not Acceptable ,因为它有许多严重的限制(包括声音同步问题、最大帧数和其他警告)

我对能够将 flv 视频数据捆绑到 swf(以及其他 Assets )中感兴趣,这将由 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);
    }
}

关于flash - 在 swf 文件中嵌入二进制视频数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/199068/

相关文章:

java - 无法在三星智能电视上使用 Flash 加载 HTTPS 验证码

ajax - Flash - AJAX 调用

arrays - AS3 合并多个数组的最快方法

android - Facebook通知重定向到外部URL

actionscript-3 - AS3 - 如何复制 Sprite / Sprite 图形?

JavaScript 到 Flash 并返回?

actionscript-3 - 如何使用 Adob​​e Air 下载和解压 .ZIP 文件夹?

javascript - 在从 Chrome 中的 javascript 卸载之前,Flash 无法发送 HTTP 请求

apache-flex - ActionScript 中的绑定(bind)如何工作?

actionscript-3 - 使用 Adob​​e Air 生成无声音频文件