OpenCV и RTMP поток

Мое текущее приложение читает кадр за кадром из потока RTMP, используя cv :: VideoCapture, вносит некоторые изменения в каждый кадр и записывает эти измененные кадры в файл, используя cv :: VideoWriter.
Теперь мне нужно поместить эти кадры в новый поток RTMP вместо файла. Кто-нибудь может объяснить мне, как я могу это сделать? В настоящее время я использую gcc5 и OpenCV 2.4.13.

1

Решение

Используйте команду ffmpeg с опцией ‘-i -‘, эта опция указывает, что ffmpeg принимает данные из канала. Стандартный ввод передается по команде ffmpeg, поэтому достаточно просто вставить изображения в стандартный ввод.

command = 'ffmpeg -i - -f flv [streaming_url]'

import subprocess as sp

proc = sp.Popen(command, stdin=sp.PIPE,shell=False)
proc.stdin.write(frame.tostring())

Найдите эквивалент в c ++, чтобы выполнить команду и записать в стандартный ввод.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]