c++ - 通过命令行中的ffmpeg或opencv从IP摄像头捕获图像获取灰度图像

标签 c++ ffmpeg rtsp ip-camera

现在我有一个网络摄像机。我试图通过 ffmpeg 获取图像(像这样: ffmpeg -rtsp_transport tcp -i "my rtsp stream address"-y -f image2 test.jpg )。没关系!或者我尝试通过opencv做到这一点,也没有问题。但是当我在vlc中打开流时,同时我试图捕获图像,哦,我只是得到一个灰色的图像。
为什么?如果我在 vlc 中打开流两次,那也没关系!如果抓图和看rtsp流一起看,就得到了一个灰色的图像。是IP摄像头的原因吗? normal image gray image

最佳答案

试试这个https://gist.github.com/jamek/1dda2add62b3f7ac415a
g++ -s -o ffmpeg_rtsp rtsp.cpp -lavcodec -lavutil -lswscale -lavformat
运行:./ffmpeg_rtsp "your rtsp stream address"

关于c++ - 通过命令行中的ffmpeg或opencv从IP摄像头捕获图像获取灰度图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34089851/

相关文章:

android - 如何启动/停止 FFMPEG 流?

java - 使用 JavaCV 库接收 RTSP 流

video - 将 MTS 转换为 YouTube 的 MPG 的 FFmpeg 设置

ffmpeg - 如何将多个 H.264 流合并为单个 H.264 流

c - 通过rtp识别h264中的idr数据包

定义和声明之间的 C++ 说明符

c++ - 为什么 QToolButton 添加到 QToolBar 后不能隐藏?

c++ - 应用程序运行时的数组与 vector

c++ - 使用 tr1::regex_search 来匹配一个大的字符串列表

python - 使用 SetParent win32gui 函数将 ffplay 窗口嵌入到 tkinter 框架中