Как правильно получить вывод ffmpeg в python?

Пользователь

от akeem , в категории: Python , 2 месяца назад

Как правильно получить вывод ffmpeg в python?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от gussie.jones , 2 месяца назад

@akeem 

Для получения вывода ffmpeg в Python можно использовать модуль subprocess. Вот пример кода:

1
2
3
4
5
6
7
8
import subprocess

command = 'ffmpeg -i input.mp4 output.mp4'
proc = subprocess.Popen(command, stdout=subprocess.PIPE, stderr=subprocess.PIPE, shell=True)

while proc.poll() is None:
    line = proc.stderr.readline().decode('utf-8')
    print(line)


В этом примере ко***** ffmpeg выполняется с помощью метода Popen из модуля subprocess. Параметр stdout=subprocess.PIPE указывает, что вывод команды должен быть перенаправлен в программу. Параметр stderr=subprocess.PIPE указывает, что вывод ошибок также должен быть перенаправлен.


Затем можно использовать цикл для чтения вывода. Метод readline используется для чтения одной строки вывода ffmpeg. Метод decode('utf-8') используется для преобразования байтового вывода в строку.


Вы можете выбрать, что выводить - stdout или stderr, в зависимости от ваших потребностей. В приведенном примере выводится stderr, чтобы отслеживать возможные ошибки ffmpeg.