【问题标题】:Use NetStream with MediaPlayerSprite in OSMF在 OSMF 中使用 NetStream 和 MediaPlayerSprite
【发布时间】:2012-11-13 22:37:50
【问题描述】:

也许我正在尝试的东西是不可能的,或者没有意义,但这是一个要求。

事情很简单。

我使用 OSMF 编写视频播放器。如果我创建一个 MediaPlayerSprite 并使用 URLResource 设置它的资源,那么一切正常。我可以播放任何受支持的 http 或 rtmp 流媒体视频(flv、mp4、mpeg 等...)。

但是现在我需要使用 NetStream 类来使用它的一些方法。

我使用 NetStream 类的时间是使用 flash Video 对象流式传输视频,但现在我想将它与 OSMF 一起使用。

所以我的问题是,是否可以使用 MediaPlayerSprite(以及所有 OSMF 功能)但也可以使用 NetStream 方法(特别是 attachNetStream)来控制在 MediaPlayerSprite 对象中播放的视频?

是的,就是这样...使用 attachNetStream 和 MediaPlayerSprite 来处理视频。

为什么?我正在使用客户端提供的 NetStream 的子类,该子类可与 flash Video 对象一起使用,当然不能与 MediaPlayerSprite 一起使用,如果我使用任何客户端的类方法,显然我会崩溃。

那么你们将如何实现这一目标?扩展任何课程?修改 OSMF 构建?

非常感谢。

【问题讨论】:

标签: actionscript-3 flash flash-builder osmf


【解决方案1】:

终于开始工作了。 我发布分析器以防有人需要这样做。

我假设您将使用 MediaPlayer 或 MediaPlayerSprite 来加载视频。 所以我们在舞台上创建我们的视频对象,然后使用 VideoElement 加载数据。

var mps:MediaPlayerSprite = new MediaPlayerSrpite();
var resource:URLResource = new URLResource("http://example.com");
mps.media = new VideoElement(resource, new NetLoader());

但是要在 OSMF fwk 中使用您的自定义 NetStream 和 NetConnection,您显然需要重写 NetLoader 类的 createNetStream 方法和 NetConnectionFactoryBase 的 create 方法。

  • NetConnectionFactoryBase 将创建 NetConnection 对象并将其作为参数传递给 createNetStream。
  • NetLoader 将创建 NetStream 对象并将其返回给播放器。

然后您可以使用任何 MediaPlayer 事件或方法来控制播放,例如

mps.mediaPlayer.play();

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-08-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多