我一直在将Xabe.FFmpeg用于一个项目。任务,异步和等待对我来说是新手,但我一直在学习。 我尝试使用Xabe.FFmpeg进行基本转换。我收到一条错误消息:“无法等待'void'”。
public partial class FormMain : Form
{
public FormMain()
{
InitializeComponent();
}
private void FormMain_Load(object sender, EventArgs e)
{
Run().GetAwaiter().GetResult();
}
private static async Task Run()
{
string inputFileName = @"C:\Users\npsie\Videos\Sample.mkv";
string outputFileName = Path.ChangeExtension(inputFileName, ".mp4");
await FFmpeg.FFmpeg.Conversions.FromSnippet.ToMp4(inputFileName, outputFileName).Start();
}
}
答案 0 :(得分:5)
您正尝试await
返回的.Start()
上Task
到ToMp4()
的呼叫。删除对Start()
的调用,然后等待返回的Task
本身:
await FFmpeg.FFmpeg.Conversions.FromSnippet.ToMp4(inputFileName, outputFileName);