我当前的应用程序使用cv :: VideoCapture从RTMP流逐帧读取,在每个帧中进行一些修改,并使用cv :: VideoWriter将这些修改后的帧写入文件。 现在我需要将这些帧放入新的RTMP流而不是文件中。任何人都能解释我怎么做吗?目前我使用gcc5和OpenCV 2.4.13。
答案 0 :(得分:0)
使用带有选项' -i - '的ffmpeg命令,此选项指定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 ++中查找等效项,运行命令并写入标准输入。