我目前正在探索如何从视频文件创建缩略图。到目前为止,我可以使用ffmpeg生成缩略图,但有人可以建议我是否有其他方法生成缩略图而不涉及可执行(.exe)文件。
谢谢, 新学员,请指导我......
答案 0 :(得分:3)
ffmpeg.exe 是视频缩略图生成的最佳解决方案,因为它是根据LGPL或GPL许可的免费软件。
您可以在其他地方找到解决方案:
答案 1 :(得分:0)
还有更多文章。
1。OpenCV - 这个开源项目最好的C / C ++,C#和Java
2. Emg CV - 这个好工作C#
,还有更多...
试试它的开源。
答案 2 :(得分:0)
您可能希望尝试AForge中的VideoFileReader,特别是AForge.Video.FFMPEG.VideoFileReader
。它使用了ffmpeg DLL。
或者,在Windows 7上,您可以使用WindowsAPICodePack中的ShellFile.Thumbnail
或使用DirectShow使用VideoRenderer保存帧。
我最近使用了ShellFile方法,将VideoFileReader作为备份。
答案 3 :(得分:0)
如果您只需要一个通用缩略图,通过WindowsAPICodePack.Shell包可以轻松获得一个缩略图。可以生成小型,中型,大型或超大型缩略图。对输出的控制力不如ffmpeg,但是当通用缩略图执行或避免使用外部exe时,很难击败此方法。
using Microsoft.WindowsAPICodePack.Shell;
using System.Drawing;
namespace GetVideoThumbnail
{
class VideoThumbnail
{
static void Main(string[] args)
{
string videoPath = @"C:\Users\NotSure\Desktop\SampleVideo.MP4";
// Create shell object
ShellObject videoShellObject = ShellObject.FromParsingName(videoPath);
// Create bitmap and/or save locally
Bitmap thumbnailBmp = videoShellObject.Thumbnail.LargeBitmap;
thumbnailBmp.Save(@"C:\Users\NotSure\Desktop\SampleVideoThumbnail.bmp");
}
}
}