【问题标题】:Do I have to use Flash Media Encoder?我必须使用 Flash 媒体编码器吗?
【发布时间】:2012-02-12 19:46:31
【问题描述】:

我需要使用浏览器中的 Flash 对象从麦克风捕获音频并将其实时流式传输到 Flash Media Server。 Flash Media Server 将依次将音频流式传输给用户。

我必须使用 Flash Media Encoder 来捕获音频吗?是否可以在无需安装 Flash Media Encoder 的情况下捕获音频并以某种方式将其流式传输到 Flash Media Server?

我对 Flash 完全陌生,所以欢迎任何答案!

我看到了这个链接: http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/net/NetStream.html

•Call NetStream.play() to play a media file from a local disk, a web server, or Flash Media Server.
•Call NetStream.publish() to publish a video, audio, and data stream to Flash Media Server.
•Call NetStream.send() to send data messages to all subscribed clients.
•Call NetStream.send() to add metadata to a live stream.
•Call NetStream.appendBytes() to pass ByteArray data into the NetStream.

这些功能是什么?我可以从 SWF 中调用这些,还是需要 Flash Media Encoder?

【问题讨论】:

    标签: flash flash-media-server


    【解决方案1】:

    Flash Media Encoder 是一种“资产编译器”或“转码器”,换句话说,是将 SWF 与 SWF 使用的媒体资源打包所需的程序。例如,它将多种视频格式转换为 FLV(以后可以被 SWF 使用)。

    您可能根本不需要它,或者,根据您选择编译 SWF 的工具,您可能需要它来进行开发(例如,将媒体资产嵌入到您创建的程序中)。

    通常使用其他库进行编码/解码。例如,要将大量视频格式编码为 FLV,您可以使用 ffmpeg。

    Flash 播放器附带一组编码器,可让您捕获和编码视频,以便您以后发送它,以及一组解码器,可以读取某些格式的视频或音频,以便您能够在播放器。

    您发布的链接来自 ActionScript 3 语言参考。 ActionScript 是一种主要用于在 Flash Player 环境中操作的编程语言。 Flash Player 环境(也称为虚拟机,或 AVM)是一组库,当 SWF 文件加载到播放器中时,您可以通过从 SWF 文件调用其 API 来访问该库。没有关于 AVM API 的单独文档,但 AS3 和 AVM 紧密相连,您可以认为语言 API 与 AVM API 相同。因此,回答您的问题:这些函数是在 AVM 中公开的 API,可以通过创建 NetStream 类型的对象来访问它们(这只是在 AVM 中公开的另一个 API)。您不需要 Flash Media Encoder 来调用这些 API。但是,您需要一个编译器来创建 SWF 文件(存在多个选项,来自不同开发人员在不同许可下)。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-10-25
    • 1970-01-01
    • 2016-09-05
    • 2023-03-10
    • 2016-04-01
    • 2013-10-05
    • 1970-01-01
    相关资源
    最近更新 更多