缩略图videoC#

是否可以在C#中创建video的缩略图图像(如第一帧)?

小更新:因为我使用Flex来显示video,所以我需要在C#中使用FLVvideo的缩略图。 是的,链接到某些库会很有用。

我可以想到两个选项:

  1. 使用外部工具(如ffmpeg )生成缩略图。 这可能是此问题最常用的解决方案。
  2. 解析FLV文件,仅将文件仅发送到第一个I帧的末尾。 (您可以在代码中找到解析逻辑,允许您按时间标记搜索到FLV的中间位置。

您可以使用开源库来执行此操作。 查看OpenCVDotNet ,一个用于OpenCV的托管.NET包装器,一个“计算机视觉”库。 这是您可能觉得有用的教程的链接 。

这有效:

ShellFile thumbNail = ShellFile.FromFilePath(); Bitmap thumbSmall = thumbNail.Thumbnail.MediumBitmap; Bitmap thumbLarge = thumbNail.Thumbnail.LargeBitmap; videoThumb_Small.Images.Add(thumbSmall); videoThumb_Large.Images.Add(thumbLarge); 

哪里’videoThumb _ ?????’ = ImageList(在哪里控制要再次显示的图像的大小)。 在搜索不同的MIME格式时速度很慢,但使用相同类型的速度足够快。 需求:

 using Microsoft.WindowsAPICodePack.Shell; using Microsoft.WindowsAPICodePack; 

并且您可以从具有相同名称的nuget包中获取Microsoft.WindowsAPICodePack。 至于FFMpeg,Vlc.Dotnet或aXMediaPlayer(WMP),我们都测试了它们(Vlc甚至不能正常工作,FFmpeg再次需要5亿行,然后才能得到相同的结果和aXMediaPlayer,嘿)他们除了那个Windows原生之外。

例如,如果你正在使用类似subitems的ListView:

 for(int mememe = 0; mememe < stuff_counter; mememe++) { listview1.Items.Add("strings", mememe).SubItems.Add("strings" + mememe.ToString()); } 

然后从ImageList读取正确的索引号