C++ opencv 读取rtsp视频流

该代码演示了如何用OpenCV的VideoCapture功能,结合FFmpeg解码器,从RTSP地址读取视频流。程序首先定义RTSPURL,然后尝试打开视频流。如果成功,它将在窗口中显示视频帧,并在检测到Esc键时退出循环。
摘要由CSDN通过智能技术生成

读取rtsp视频流
完整演示:

#include <opencv2/opencv.hpp>
#include <iostream>
#include <string>

int main()
{

    // rtsp地址变量
    // 一般main 主码流,sub 子码流
    std::string rtsp1 = "rtsp://admin:SEGJKL@192.168.3.75:554/h264/ch1/sub/av_stream";

    // std::string rtsp1 = "rtsp://localhost:8554/live1.sdp";


    // CAP_FFMPEG:使用ffmpeg解码
    cv::VideoCapture stream1 = cv::VideoCapture(rtsp1, cv::CAP_FFMPEG);


    if (!stream1.isOpened())
    {
        std::cout << "有视频流未打开" << std::endl;
        return -1;
    }

    cv::Mat frame1;


    // // 使用namedWindow创建窗口,WINDOW_AUTOSIZE:自动调整窗口大小
    // cv::namedWindow("rtsp_demo", cv::WINDOW_AUTOSIZE);

    while (true)
    {
        if (!stream1.read(frame1))
        {
            std::cout << "有视频流未读取" << std::endl;
            continue;
        }


        cv::imshow("rtsp_demo", frame1);

        if (cv::waitKey(1) == 27)
        {
            break;
        }
    }

    return 0;
}
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

默执_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值