C#windows服务如何从视频中提取缩略图?

C#windows服务如何从视频中提取缩略图?,c#,.net,windows-services,C#,.net,Windows Services,我正在写一个windows服务,它观察一个网络目录,其中有公司监控摄像头记录的传入视频。 然后,它们被填充到数据库中,并由同事每天早上使用对应的GUI WPF应用程序进行检查 我打算马上制作每个视频的一个小缩略图,因为每天都有更多的视频被制作。然后,观看者可以更容易地通过浏览缩略图来区分值得观看的视频和不值得观看的视频 我的第一种方法是MediaToolkit NuGet包(ffmpeg包装),但是它会生成一个全分辨率的缩略图,所以我极力反对使用它。接下来,我尝试了MediaPlayer类,它打

我正在写一个windows服务,它观察一个网络目录,其中有公司监控摄像头记录的传入视频。 然后,它们被填充到数据库中,并由同事每天早上使用对应的GUI WPF应用程序进行检查

我打算马上制作每个视频的一个小缩略图,因为每天都有更多的视频被制作。然后,观看者可以更容易地通过浏览缩略图来区分值得观看的视频和不值得观看的视频

我的第一种方法是MediaToolkit NuGet包(ffmpeg包装),但是它会生成一个全分辨率的缩略图,所以我极力反对使用它。接下来,我尝试了MediaPlayer类,它打开视频文件并生成缩放的屏幕截图。这在GUI测试环境中确实有效,但在windows服务中失败:

var _player = new System.Windows.Media.MediaPlayer { ScrubbingEnabled = true };
var rtb = new RenderTargetBitmap(...);
var dv = new DrawingVisual();

using (DrawingContext dc = dv.RenderOpen())
    dc.DrawVideo(_player, new Rect(...));
我的目标是让MediaPlayer方法在服务内部功能性地运行。然而,另一种可以生成缩放缩略图的工作方法,用户无需打开GUI应用程序,也会对我有利。提前谢谢