Как я могу записать действие рабочего стола в видео файл с помощью ffmpeg, не показывая окно консоли ffmpeg? - PullRequest
0 голосов
/ 24 декабря 2018

Пробовал этот метод, вызывая его из конструктора или события нажатия кнопки:

private void StartRecordingDesktop()
        {
            Process process = new Process();

            // Stop the process from opening a new window
            process.StartInfo.RedirectStandardOutput = true;
            process.StartInfo.UseShellExecute = false;
            process.StartInfo.CreateNoWindow = true;
            process.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;

            // Setup executable and parameters
            process.StartInfo.FileName = @"d:\SavedScreenshots\ffmpeg.exe";
            process.StartInfo.Arguments = "-f gdigrab -framerate 24 -i desktop -preset ultrafast -pix_fmt yuv420p testwithforms.mp4";

            // Go
            process.Start();
        }

Две проблемы:

  1. Это не запись, когда я выключаюв приложении нет видеофайла на жестком диске.

  2. Когда я закрываю приложение, иногда оно оставляет рабочий exe-файл, например, в фоновом режиме, который заставляет курсор мышивстряхнуть немного заикаться.

Я хочу начать / остановить запись без отображения окна консоли ffmpeg.Идея в конце состоит в том, чтобы сделать некоторую идентификацию режима записи при записи или без использования иконки в трее в качестве указателя.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...