首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何访问IP相机错误(照相机/型号: Grundig / GCI-K1505B)?

如何访问IP相机错误(照相机/型号: Grundig / GCI-K1505B)?
EN

Stack Overflow用户
提问于 2017-02-24 13:44:16
回答 1查看 355关注 0票数 1
代码语言:javascript
运行
复制
#include <stdio.h>
#include <opencv2/opencv.hpp>
#include <iostream>

int main(int, char**) {
    cv::VideoCapture vcap;
    cv::Mat image;

    // This works on a Grundig GCI-K1505B
    const std::string videoStreamAddress = "http://admin:1234@192.168.1.1/video.cgi?mjpeg";

    if(!vcap.open(videoStreamAddress)) {
        std::cout << "Error opening video stream or file" << std::endl;
        return -1;
    }

    for(;;) {
        if(!vcap.read(image)) {
            std::cout << "No frame" << std::endl;
            cv::waitKey();
        }
        cv::imshow("Output Window", image);

        if(cv::waitKey(1) >= 0) break;
    }

}

误差

* VIDEOINPUT库- 0.1995 - TFW07 *

警告:打开文件(/build/opencv/modules/videoio/src/cap_ffmpeg_impl.hpp:779)警告:打开视频流或按文件按下关闭此窗口的http://admin:1234@192.168.1.1/video.cgi?mjpeg (/build/opencv/modules/videoio/src/cap_ffmpeg_impl.hpp:780)错误。

GRUNDIG/Model:GCI-K1505B

网络浏览器MS Internet 6.0 (或更高版本)、Firefox、Google、Safari访问保护(登录和密码)、IP筛选器、IEEE802.1x用户数最多20个同时视频压缩H.264 (MPEG-4 4Part 10/AVC),MJPEG视频分辨率全高清1080 p/ SXGA/ HD 720 p/ XGA/SVGA/ D1/ VGA/ CIF/ QCIF视频流四流流: 4xH.264或3xH.264+MJPEG Triple: 3xH.264或2xH.264+MJPEG Dual: 2xH.264或H.264+MJPEG单帧: H.264或MJPEG帧速率(最高分辨率)50 QoS @2MP、25 QoS@2MP、50 QoS@1,3MP、25 QoS@1,3MP等。网络协议IPv4 4/V6、TCP/IP、UDP、RTP、RTSP、HTTP、HTTPS、DHCP、PPPoE、UPnP、SMTP、ICMP、SNMP、IEEE802.1x、QoS、QoS、QCIF、QCIF等。

EN

回答 1

Stack Overflow用户

发布于 2017-12-31 17:02:34

你有ONVIF摄像头。ONVIF相机有一个rtsp url,可以与opencv一起使用。

首先你需要发现你的相机rtsp url。有一些地方可以这样做,你可以尝试手册,或使用其他软件给你。我推荐软件onvif设备工具(链接)或gsoap-onvif (链接),它们都在Linux上工作,看看你的终端,rtsp url就在那里了。

在您发现您的rtsp url后,我建议您在vlc player (链接)上进行测试,您可以使用菜单选项“打开网络流”或从命令行进行测试:

代码语言:javascript
运行
复制
vlc rtsp://your_url

而不是在代码上使用rtsp url,例如:

代码语言:javascript
运行
复制
    const std::string videoStreamAddress = "rtsp://10.0.0.105:554/user=admin_password=admin_channel=1_stream=0.sdp";

还将if更改为:

代码语言:javascript
运行
复制
        if(cv::waitKey(15) == 27) break;

我用我的相机在Linux上进行了测试,您的代码,通过这些修改,正在为我工作。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42440206

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档