Asp.net .NET:如何从flash创建缩略图
有没有办法从ASP.NET中的flash电影文件(flv/swf)[而不是视频文件]创建缩略图?任何实现示例?您可以使用创建flash视频的缩略图。flv您可以使用ffmpeg将部分视频(例如一帧)转换为图像(序列) 我通过调用Asp.net .NET:如何从flash创建缩略图,asp.net,flash,gdi+,Asp.net,Flash,Gdi+,有没有办法从ASP.NET中的flash电影文件(flv/swf)[而不是视频文件]创建缩略图?任何实现示例?您可以使用创建flash视频的缩略图。flv您可以使用ffmpeg将部分视频(例如一帧)转换为图像(序列) 我通过调用Process.Start(),将其用作命令行应用程序,但是.NET至少有一个包装器(我自己还没有测试过): 对于.swf,如果没有一些Adobe工具,我不知道如何实现这一点。对于flv,它可以很容易地完成,正如其他人提到的那样 对于swf,它高度依赖于swf。。。如果
Process.Start()
,将其用作命令行应用程序,但是.NET至少有一个包装器(我自己还没有测试过):
对于.swf,如果没有一些Adobe工具,我不知道如何实现这一点。对于flv,它可以很容易地完成,正如其他人提到的那样 对于swf,它高度依赖于swf。。。如果swfs的视觉外观是由代码决定的,那么除了在你的应用程序中嵌入一个flash播放器,让flash播放器制作快照,将其编码为JPEG/PNG,然后使用TCP或LocalConnection(也可以与C#一起使用的flashflash通信连接)将其发送到某处之外,别无他法或者试着自己抓住它的输出缓冲区。。。第一种可能是不超过10-20行actionscript代码。。。我不知道后者 除此之外,您可以使用外部命令行转换器。。。有一些漂浮在网上 格里茨
back2dos看看这个,它应该为您指明了正确的方向。它用于从各种格式的电影剪辑中提取缩略图。获取图像的唯一方法是使用开始播放并允许您捕获第一帧的完整flash客户端 我会仔细看一看(他们实际上有一个呈现PNG的示例) 也许其他一些flash库可能会有所帮助()
Gnash可能是最好的选择,因为它是最成熟的项目,但我不知道将其集成到命令行工具或您自己的项目中有多容易。我们公司一直在进行这方面的工作,我们的概念验证工作非常快(但我们为其制作的项目目前处于搁置状态)。我不能分享代码,但我可以给你一些建议 它不是纯ASP.NET,但也许您仍然可以使用它。我们制作了一个可以从ASP.NET调用的windows服务
基本上,只要在服务器上安装flash插件,windows服务就可以通过swf ActiveX组件简单地打开swf,然后您就可以绘制整个过程的图片。它工作得很好,请注意,您不必在屏幕上实际渲染ActiveX组件来捕获图片。请查看帖子。它并没有告诉你一切,但我想它提供了所需的基础工作。您可能需要弄清楚如何从试图从网页下载的flash html中获取对象标记。之后,您必须确定何时捕获帧。然而,这是一个漫长的旅程。您不需要asp.net部分。只需专注于windows项目部分。希望这有帮助。:) 有没有可能在中等信任度的共享托管环境中运行该程序?我不确定,但你可以试试这个软件:我自己没有试过,但看起来很简单enough@Shyju所以,与这个答案(被接受)和克里斯的区别在于,他从“里瓦”那里得到了他的ffmpeg?如果是这样的话,也许Russ可以改变他的答案,并将其作为“包含ffmpeg和flv编解码器的好包,您可以轻松地在ASP.NET中使用”或类似的东西加以提及我搜索了很多。似乎在dotnet中没有可用的包装器类