草庐IT

基于FFmpeg+rtsp读取摄像头实时图像

伊红美兰 2023-03-28 原文

项目介绍:前端时间做了一个项目用qt 编写软件获取海康摄像头rtsp视频流,实现实时显示。当时采用的是VLC-Qt播放RTSP流这种方式(参考:https://blog.csdn.net/caoshangpa/article/details/53158571)。花了一段时间研究也做出来了,可是发现了一个无法解决的问题,即无法解决视频延迟的问题,差不多延迟1秒左右。后面果断

放弃了,采用FFmpeg+rtsp这种方式。最终发现还是这种方式效果最好,解决了延迟问题,至少肉眼看不出。下面对此项目做个大致介绍,文章最后附上项目开发相关资料。

提示:使用rtsp方式获取海康摄像头图像需要开启海康的onvif功能。

参考连接:http://zh-cjh.com/anfangwulianwang/1394.html

 

开发介绍:

开发软件:qt5.14.2

构建:MinGW64 bit

ffmpeg版本:3.4-win64

 

软件介绍:

软件截图:

海康摄像头:

 

 现在网络摄像头很多都支持rtsp方式显示图像,通过这种方式一个软件可以显示很多厂家的摄像头,兼容性更强。

提供不同厂家摄像头的rtsp地址:

一、海康、中威摄像机

格式1:

主码流:rtsp://admin:12345@192.168.1.64:554/Streaming/Channels/1

子码流:rtsp://admin:12345@192.168.1.64:554/Streaming/Channels/2

第三码流:rtsp://admin:12345@192.168.1.64:554/Streaming/Channels/3

格式2:

rtsp://admin:12345@192.168.1.64:554/ch1/main/av_stream

二、大华

rtsp://admin:12345@192.168.1.64:554/cam/realmonitor?channel=1&subtype=0

三、英飞拓

球机:

单播和组播地址一致

高码流(主码流)RTSP地址:rtsp://admin:admin@192.168.1.64/1/1080p

低码流(子码流)RTSP地址:rtsp://admin:admin@192.168.1.64/1/D1

半球和枪机:(亭子、车道)

单播:

高码流(主码流)RTSP地址:rtsp://192.168.1.64:554/1/h264major

低码流(子码流)RTSP地址:rtsp://192.168.1.64:554/1/h264minor

组播:

高码流(主码流)RTSP地址:rtsp://192.168.1.64:554/1/h264major/multicast

低码流(子码流)RTSP地址:rtsp://192.168.1.64:554/1/h264minor/multicast

四、三星

单播:

高码流rtsp地址:

rtsp://admin:admin001@192.168.1.64:554/onvif/profile2/media.smp(720P)

低码率rtsp地址

rtsp://admin:admin001@192.168.1.64:554/onvif/profile3/media.smp

组播:

高码流rtsp地址:

rtsp://admin:admin001@192.168.1.64:554/onvif/multicast/profile2/media.smp (720p)

低码流rtsp地址:

rtsp://admin:admin001@192.168.1.64:554/onvif/multicast/profile3/media.smp

五、宇视:

rtsp://admin:admin@192.168.1.64/media/video1/multicast

六、LG

单播和组播地址一致

高码流(主码流)RTSP地址:rtsp://admin:admin@192.168.1.64:554/Master-0

低码流(子码流)RTSP地址:rtsp://admin:admin@1192.168.1.64:554/Slave-0

七、派尔高网络摄像机:

RTSP主码流地址为:rtsp://192.168.1.64/h264

第一从码流RTSP地址为:rtsp://192.168.1.64/h264_2

第二从码流RTSP地址为:rtsp://192.168.1.64/h264_3

八、安讯士网络摄像机:

单播:

rtsp://root:123456@192.168.1.64/axis-media/media.amp?videocodec=h264&resolution=1280x720&fps=25

组播:

rtsp://root:123456@192.168.1.64/onvif-media/media.amp?profile=profile_1_h264&streamtype=multicast

@192.168.1.64/axis-cgi/alwaysmulti.sdp?camera=1

九、非凡

rtsp://admin:12345@192.168.1.64:554/streaming/channels/101

十、金三立

rtsp://Admin:111111@192.168.1.64/stream/av0_0

 

 

以上是项目的大致介绍;提供开发资料如下链接地址:

链接:https://pan.baidu.com/s/1SqF-w86mNFtJyh24mGxYcA?pwd=ms3g 
提取码:ms3g

 

 

 

 

 



 

有关基于FFmpeg+rtsp读取摄像头实时图像的更多相关文章

  1. ruby - 如何将脚本文件的末尾读取为数据文件(Perl 或任何其他语言) - 2

    我正在寻找执行以下操作的正确语法(在Perl、Shell或Ruby中):#variabletoaccessthedatalinesappendedasafileEND_OF_SCRIPT_MARKERrawdatastartshereanditcontinues. 最佳答案 Perl用__DATA__做这个:#!/usr/bin/perlusestrict;usewarnings;while(){print;}__DATA__Texttoprintgoeshere 关于ruby-如何将脚

  2. Ruby 写入和读取对象到文件 - 2

    好的,所以我的目标是轻松地将一些数据保存到磁盘以备后用。您如何简单地写入然后读取一个对象?所以如果我有一个简单的类classCattr_accessor:a,:bdefinitialize(a,b)@a,@b=a,bendend所以如果我从中非常快地制作一个objobj=C.new("foo","bar")#justgaveitsomerandomvalues然后我可以把它变成一个kindaidstring=obj.to_s#whichreturns""我终于可以将此字符串打印到文件或其他内容中。我的问题是,我该如何再次将这个id变回一个对象?我知道我可以自己挑选信息并制作一个接受该信

  3. ruby-on-rails - 添加回形针新样式不影响旧上传的图像 - 2

    我有带有Logo图像的公司模型has_attached_file:logo我用他们的Logo创建了许多公司。现在,我需要添加新样式has_attached_file:logo,:styles=>{:small=>"30x15>",:medium=>"155x85>"}我是否应该重新上传所有旧数据以重新生成新样式?我不这么认为……或者有什么rake任务可以重新生成样式吗? 最佳答案 参见Thumbnail-Generation.如果rake任务不适合你,你应该能够在控制台中使用一个片段来调用重新处理!关于相关公司

  4. 世界前沿3D开发引擎HOOPS全面讲解——集3D数据读取、3D图形渲染、3D数据发布于一体的全新3D应用开发工具 - 2

    无论您是想搭建桌面端、WEB端或者移动端APP应用,HOOPSPlatform组件都可以为您提供弹性的3D集成架构,同时,由工业领域3D技术专家组成的HOOPS技术团队也能为您提供技术支持服务。如果您的客户期望有一种在多个平台(桌面/WEB/APP,而且某些客户端是“瘦”客户端)快速、方便地将数据接入到3D应用系统的解决方案,并且当访问数据时,在各个平台上的性能和用户体验保持一致,HOOPSPlatform将帮助您完成。利用HOOPSPlatform,您可以开发在任何环境下的3D基础应用架构。HOOPSPlatform可以帮您打造3D创新型产品,HOOPSSDK包含的技术有:快速且准确的CAD

  5. 叮咚买菜基于 Apache Doris 统一 OLAP 引擎的应用实践 - 2

    导读:随着叮咚买菜业务的发展,不同的业务场景对数据分析提出了不同的需求,他们希望引入一款实时OLAP数据库,构建一个灵活的多维实时查询和分析的平台,统一数据的接入和查询方案,解决各业务线对数据高效实时查询和精细化运营的需求。经过调研选型,最终引入ApacheDoris作为最终的OLAP分析引擎,Doris作为核心的OLAP引擎支持复杂地分析操作、提供多维的数据视图,在叮咚买菜数十个业务场景中广泛应用。作者|叮咚买菜资深数据工程师韩青叮咚买菜创立于2017年5月,是一家专注美好食物的创业公司。叮咚买菜专注吃的事业,为满足更多人“想吃什么”而努力,通过美好食材的供应、美好滋味的开发以及美食品牌的孵

  6. python - 如何读取 MIDI 文件、更改其乐器并将其写回? - 2

    我想解析一个已经存在的.mid文件,改变它的乐器,例如从“acousticgrandpiano”到“violin”,然后将它保存回去或作为另一个.mid文件。根据我在文档中看到的内容,该乐器通过program_change或patch_change指令进行了更改,但我找不到任何在已经存在的MIDI文件中执行此操作的库.他们似乎都只支持从头开始创建的MIDI文件。 最佳答案 MIDIpackage会为您完成此操作,但具体方法取决于midi文件的原始内容。一个MIDI文件由一个或多个音轨组成,每个音轨是十六个channel中任何一个上的

  7. 基于C#实现简易绘图工具【100010177】 - 2

    C#实现简易绘图工具一.引言实验目的:通过制作窗体应用程序(C#画图软件),熟悉基本的窗体设计过程以及控件设计,事件处理等,熟悉使用C#的winform窗体进行绘图的基本步骤,对于面向对象编程有更加深刻的体会.Tutorial任务设计一个具有基本功能的画图软件**·包括简单的新建文件,保存,重新绘图等功能**·实现一些基本图形的绘制,包括铅笔和基本形状等,学习橡皮工具的创建**·设计一个合理舒适的UI界面**注明:你可能需要先了解一些关于winform窗体应用程序绘图的基本知识,以及关于GDI+类和结构的知识二.实验环境Windows系统下的visualstudio2017C#窗体应用程序三.

  8. STM32读取串口传感器数据(颗粒物传感器,主动上传) - 2

    文章目录1.开发板选择*用到的资源2.串口通信(个人理解)3.代码分析(注释比较详细)1.主函数2.串口1配置3.串口2配置以及中断函数4.注意问题5.源码链接1.开发板选择我用的是STM32F103RCT6的板子,不过代码大概在F103系列的板子上都可以运行,我试过在野火103的霸道板上也可以,主要看一下串口对应的引脚一不一样就行了,不一样的就更改一下。*用到的资源keil5软件这里用到了两个串口资源,采集数据一个,串口通信一个,板子对应引脚如下:串口1,TX:PA9,RX:PA10串口2,TX:PA2,RX:PA32.串口通信(个人理解)我就从串口采集传感器数据这个过程说一下我自己的理解,

  9. kvm虚拟机安装centos7基于ubuntu20.04系统 - 2

    需求:要创建虚拟机,就需要给他提供一个虚拟的磁盘,我们就在/opt目录下创建一个10G大小的raw格式的虚拟磁盘CentOS-7-x86_64.raw命令格式:qemu-imgcreate-f磁盘格式磁盘名称磁盘大小qemu-imgcreate-f磁盘格式-o?1.创建磁盘qemu-imgcreate-fraw/opt/CentOS-7-x86_64.raw10G执行效果#ls/opt/CentOS-7-x86_64.raw2.安装虚拟机使用virt-install命令,基于我们提供的系统镜像和虚拟磁盘来创建一个虚拟机,另外在创建虚拟机之前,提前打开vnc客户端,在创建虚拟机的时候,通过vnc

  10. ruby-on-rails - 在 Ruby (on Rails) 中使用 imgur API 获取图像 - 2

    我正在尝试使用Ruby2.0.0和Rails4.0.0提供的API从imgur中提取图像。我已尝试按照Ruby2.0.0文档中列出的各种方式构建http请求,但均无济于事。代码如下:require'net/http'require'net/https'defimgurheaders={"Authorization"=>"Client-ID"+my_client_id}path="/3/gallery/image/#{img_id}.json"uri=URI("https://api.imgur.com"+path)request,data=Net::HTTP::Get.new(path

随机推荐