有没有办法使用C#从flv文件中提取关键帧?
答案 0 :(得分:1)
无法找到直接的方法。
但是你可以在C#中使用FFmpeg.exe。
在这里你可以找到一个C#包装器,以便在C#中轻松使用FFmpeg:
以下代码取自其示例页面。您似乎可以通过以下方式提取帧并从中创建缩略图:
CAVConverter converter = new CAVConverter();
//...
使用converter.AVPrope.Decode(-1)
解码下一帧,使用converter.AVPrope.CurrentPicture
获取缩略图。使用converter.AVPrope.SaveCurrentFrame(fileName)
将当前帧保存到文件fileName。
//Load the file
converter.AVPrope.LoadFile(fileName, "");
//Decode the frame converter.AVPrope.Decode(-1);
//Get the thumbnail picture. It is a IPictureDisp object, do something as you need.
var thumbnail = converter.AVPrope.CurrentPicture;
//Save current frame to file fileName
converter.AVPrope.SaveCurrentFrame(fileName);
希望它有所帮助。