C#异步等待任务:无法等待``无效''

时间:2020-09-15 13:22:24

标签: c# async-await

我一直在将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();
    }
}

1 个答案:

答案 0 :(得分:5)

您正尝试await返回的.Start()TaskToMp4()的呼叫。删除对Start()的调用,然后等待返回的Task本身:

await FFmpeg.FFmpeg.Conversions.FromSnippet.ToMp4(inputFileName, outputFileName);
相关问题