Использование ffmpeg в delphi: процесс кодирования прерываний - PullRequest
0 голосов
/ 05 июля 2018

Я видел этот квест, но не могу оставить там комментарий.

Как прервать кодирование из delphi? Например, в моей форме есть кнопка «Отмена». Как отправить команду прерывания? В ffmpeg это q ключ, но я не знаю, как отправить коды клавиш из delphi в консольное приложение для него.

А также второй квест о прогрессбар: мне нужно, чтобы он показывал состояние процесса кодирования (например, поиск от 0 до 100 процентов во время кодирования, т. Е. Следуйте значениям прогресса ffmpeg).

1 Ответ

0 голосов
/ 05 июля 2018

Если, как указано в вопросе, на который вы ссылались, вы запускаете ffmpeg как порожденный процесс (ShellExecute / CreateProcess / WinExec и т. Д.), То чтобы выйти из этого запущенного процесса, вы просто его убьете.

Чтобы отобразить прогресс в вашем пользовательском интерфейсе, вам нужно захватить вывод stdout / stderr процесса ffmpeg и проанализировать этот вывод для извлечения информации о ходе выполнения. определить, что и как отразить в вашем пользовательском интерфейсе.

Запуск процессов и сбор результатов относительно прост, но есть библиотеки, которые могут помочь упростить и позволить вам сосредоточиться на конкретных потребностях вашего приложения. Примеры (но не специфичные для ffmpeg ) можно найти в этом SO-вопросе и ответах (среди множества других источников, которые Google поможет вам найти).

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