OpenCV和RTMP流

时间:2016-12-16 00:47:30

标签: c++ opencv rtmp

我当前的应用程序使用cv :: VideoCapture从RTMP流逐帧读取,在每个帧中进行一些修改,并使用cv :: VideoWriter将这些修改后的帧写入文件。 现在我需要将这些帧放入新的RTMP流而不是文件中。任何人都能解释我怎么做吗?目前我使用gcc5和OpenCV 2.4.13。

1 个答案:

答案 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 ++中查找等效项,运行命令并写入标准输入。