.NET:如何从Flash创建缩略图

时间:2009-07-30 17:49:08

标签: asp.net flash gdi+

有什么方法可以在ASP.NET中从flash电影文件(flv / swf)[NOT FROM A VIDEO File]创建缩略图?任何实施样本?

7 个答案:

答案 0 :(得分:4)

您可以使用ffmpeg创建Flash视频的缩略图

答案 1 :(得分:2)

对于.flv,您可以使用ffmpeg将部分视频(例如一帧)转换为图像(序列)

我通过调用Process.Start()将它用作命令行应用程序,但至少有一个.NET包装器(我自己没有测试过): http://www.codeplex.com/ffmpegdotnet

对于.swf我不知道如何在没有Adobe工具的情况下实现这一目标。

答案 2 :(得分:1)

对于flv,它可以很容易地完成,正如其他人提到的那样......

对于swf来说,它很大程度上取决于swf ...如果swfs的视觉外观是由代码决定的,除了在你的app中嵌入flash播放器并让flash播放器制作快照,编码时别无他法它们作为JPEG / PNG,并使用TCP或LocalConnection(闪存< - >闪存通信连接,也可以与C#一起使用)将它们发送到某处或尝试以某种方式自己获取其输出缓冲区......第一种可能性应该是不超过10-20行动作代码......不知道后者...

除此之外,您可能会使用外部命令行转换器...网上有一些浮动...

格尔茨

back2dos

答案 3 :(得分:1)

看看这个article,它应该指向正确的方向。它使用SharpFFmpeg从各种格式的影片剪辑中提取缩略图。

答案 4 :(得分:0)

获取图像的唯一方法是使用开始播放的完整Flash客户端,并允许您捕获第一帧。

我会仔细看看flirt(他们实际上有一个渲染png的例子) 也许其他一些Flash库可能会有所帮助(swfdec gnash swift tools gplflash

Gnash可能是最成熟的项目,因为它是最成熟的项目,但我不知道将它集成到命令行工具或自己的项目中是多么容易。

答案 5 :(得分:0)

我们一直在我的公司工作,我们得到了一个非常快速的概念证明(但我们现在正在暂停的项目)。我无法分享代码,但我可以给你一些指示。

它不是纯粹的ASP.NET,但也许你仍然可以使用它。我们制作了一个可以从ASP.NET调用的Windows服务。

基本上你在服务器上安装flash插件,然后windows服务可以通过swf ActiveX组件简单地打开swf,然后你可以拍摄整个事物的图片。它工作得很好,注意你不必在屏幕上实际渲染ActiveX组件来捕获图片。

答案 6 :(得分:0)

查看this帖子。它没有告诉你一切,但我想它提供了它所需的基础工作。您可能必须弄清楚如何从您尝试从网页下载的flash-html中获取对象标记。之后你必须弄清楚何时捕获帧。然而,它很长。你不需要asp.net部分。只关注windows项目部分。希望这可以帮助。 :)