【问题标题】:extract a frame from a flash movie从 Flash 电影中提取帧
【发布时间】:2011-10-08 03:16:08
【问题描述】:

我有一个播放 .flv 视频文件的 Flash 播放器

我怎样才能重现这种行为: 当客户端按下停止时,捕捉当前帧;杀死玩家;改为显示最后一帧(之前捕获的)

任何解决方案都可以(AS、PHP、JS 等),但它不能只用于服务器端,因为我事先不知道需要什么框架。

【问题讨论】:

  • 您可以使用 Bitmap 和 BitmapData 来捕获视频的任何部分并将其显示在轨道上 - 这是您的意思吗?
  • 您的意思是停止播放器还是跳到影片结尾?在这种情况下,“以前被抓到”是什么意思?
  • 在当前帧停止播放器。不管你看电影多久。我基本上只想要最后一帧的打印屏幕,但不知道如何获得它

标签: flash frame movie


【解决方案1】:

这是一个简化版:

var flv:FLVPlayback = new FLVPlayback();
var bmd:BitmapData = new BitmapData(flv.width, flv.height);
var bm:Bitmap;

function captureFrame():void {
    flv.stop();
    bmd.draw(flv);
    bm = new Bitmap(bmd);
    addChild(bm);
    // kill video and player here
}

根据您托管视频的位置,您在使用 BitmapData 时可能会遇到一些跨域问题。但是,假设您有完全的控制权,这应该可行。

【讨论】:

  • 我肯定会遇到跨域问题:P 但这将是另一种解决方法。明天试试,谢谢
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-01-07
  • 2014-07-10
  • 1970-01-01
相关资源
最近更新 更多