Обработка нескольких потоков с использованием ffmpeg-python - PullRequest
0 голосов
/ 15 января 2019

У меня есть MPEG-2 TS с потоком видео и парой метаданных KLV. Я могу использовать ffmpeg-python для обработки каждого из этих потоков независимо. Например, я могу получить видеопоток, обрабатывать каждый кадр, используя numpy, как показано в документации. Я также могу получить поток данных и показать его следующим образом (используя библиотеку klvdata):

process = (
    ffmpeg
        .input(in_filename)
        .output('pipe:', format='data', codec='copy', map='data-re')
        .run_async(pipe_stdout=True, pipe_stderr=True)
)

for packet in klvdata.StreamParser(process.stdout.read()):
    packet.structure()

process.wait()

Как мне сделать это одновременно? Мне нужно разделить данные TS на их потоки и обработать их оба, синхронизируя их. ffmpeg сам по себе может демультиплексировать потоки в отдельные файлы, но как мне обрабатывать потоки в python. У KLV есть информация, которую я хочу показать поверх видеопотока (поля распознавания).

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