c++ - OpenCV 和 RTMP 流

标签 c++ opencv rtmp

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

最佳答案

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

关于c++ - OpenCV 和 RTMP 流,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41175675/

相关文章:

c++ - 在 C++ 中获取耗时仅几秒钟

python - 具有透明背景的小图像的感兴趣区域

ios - 将实时摄像机视频从 iOS (iPhone/iPad) 流式传输到远程 PC/服务器

c++ - 检查 argv[i] 是否存在 C++

c++ - 在 macos 中热用 gdb

OpenCV TBB IPP OpenMP 函数

android - RTMP 是视频聊天应用程序的更好方法吗?

c++ - OpenCV 和 RTMP

c++ - 如何将 vector 转换为 typedef 类型的数组

opencv - 在树莓派3(Raspbian Stretch)上安装opencv-python