• c# как перенаправить вывод FFmpeg в textBox

     

    C# redirect ffmpeg output to textbox in realtime

    Самый простой и понятный способ

    Добавляем кнопку Button и TextBox в форму и кликаем два раза по только-что добавленной кнопке и вставляем следующий код в button1_Click:

     void button1_Click(object sender, EventArgs er)
    {
         Process p = Process.Start(new ProcessStartInfo
         {
             FileName = @"ffmpeg.exe",
             Arguments = @"-i inputVideo.mxf -acodec pcm_s16le -ac 2 -ar 48000 test_s.wav",
             UseShellExecute = false,
             CreateNoWindow = true,
             RedirectStandardError = true,
             RedirectStandardOutput = true
         });
         p.BeginOutputReadLine();
         p.BeginErrorReadLine();
         p.OutputDataReceived += new DataReceivedEventHandler(TSharkOutputHandler);
         p.ErrorDataReceived += new DataReceivedEventHandler(TSharkOutputHandler);
    }

     

    Далее вставляем

     

    void TSharkOutputHandler(object sender, DataReceivedEventArgs e)
    {
         Invoke((Action)(() => {
           textBox1.Text += e.Data + Environment.NewLine;
         }));
    }

     

     

    И все!

     

    Так же не забываем добавить пространство имен в самом начале:

     

    using System;
    using System.Diagnostics;
    using System.Windows.Forms;

     

     

    Categories: Статьи

    Метки: , , , ,

    0 0 голоса
    Article Rating
    Подписаться
    Уведомить о



    Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.

    0 Комментарий
    Межтекстовые Отзывы
    Посмотреть все комментарии