Захват кадра видеофайла (ядро .Net) - PullRequest
0 голосов
/ 06 декабря 2018

Я потратил некоторое время, чтобы найти библиотеку для .Net Core и использовать ее для захвата кадра видеофайла в определенный момент.Я знаю, что есть некоторые, например, я использовал Mediatoolkit , но он не совместим с ядром .net.
Все они совместимы с .net framework.Любая помощь?

1 Ответ

0 голосов
/ 06 декабря 2018

Вы можете использовать ffmpeg для извлечения кадров: https://trac.ffmpeg.org/wiki/Create%20a%20thumbnail%20image%20every%20X%20seconds%20of%20the%20video

Вы должны знать, в какой операционной системе вы работаете (Linux или Windows), чтобы предоставить совместимые двоичные файлы ffmpeg.

С помощью этого API вы можете вызывать ffmpeg из C # с параметрами (относится к .NET Core): https://docs.microsoft.com/en-us/dotnet/api/system.diagnostics.process.start?view=netframework-4.7.2

var process = new Process
{
    StartInfo = new ProcessStartInfo()
    {
        CreateNoWindow = true,
        FileName = "ffmpeg", // or path to the ffmpeg
        WindowStyle = ProcessWindowStyle.Hidden,
        Arguments = "your arguments here"
    }
};

process.Start();
process.WaitForExit(10000); // wait for exit 10000 miliseconds

Теперь вам просто нужно прочитать вывод (файл изображения) изфайловая система.

...