Flash(Actionscript 3):从1个NetStream播放2个视频?

时间:2012-09-11 18:42:34

标签: actionscript-3 flash video rtmp amazon-cloudfront

我正在使用

从Amazon CloudFront RTMP源流式传输视频
video.attachNetStream(myNetStream);
myNetStream.play(myVideoFileName,0,-1);

并且它运作良好。现在,我想做的是这样的事情:

video1.attachNetStream(myNetStream);
video2.attachNetStream(myNetStream);
myNetStream.play(myVideoFileName,0,-1);

这不起作用,因为两个视频中只有一个会出于某种未知原因一次播放。我希望video1和video2能够从单个NetStream播放相同的视频(以节省带宽)并保持彼此完全同步。我怎么能做到这一点?

2 个答案:

答案 0 :(得分:0)

如果您正在直接播放FLV文件(不是从FMS流式传输),您应该能够:

  1. 使用URLStream
  2. 加载文件
  3. 等待足够的数据开始将数据复制到ByteArray对象
  4. 根据需要创建尽可能多的NetStream个对象,并使用appendBytes(bytes)方法
  5. 我实际上没有测试它,需要查看appendBytes()的逻辑,但理论上它应该可以工作。

    此外,它值得一个基准。但它可能比以与视频相同的速率重新绘制位图副本更好,并保持两个视频同步。

答案 1 :(得分:0)

由于安全限制,根本无法访问

bitmapData。我正在使用计划B播放2个网络流,但通过删除其音频来减小视频的文件大小。我将不得不等到亚马逊允许安全策略访问才能使用bitmapData解决方案。