rtsp 获取视频流 java_Java获取rtsp视频流,实现rtsp流预览功能,并将视频流每帧保存成图片…

rtsp 获取视频流 java_Java获取rtsp视频流,实现rtsp流预览功能,并将视频流每帧保存成图片…先展示maven依赖吧,就一个javacvorg.bytedecojavacv-platform1.5.1pom然后就是测试类publicstaticvoidtestzc()throwsFrameGrabber.Exception{Stringrtsp=”获取的对应rtsp流”;FFmpegFrameGrabbergrabber=FFmpegFrameGrabber.crea…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

先展示maven依赖吧,就一个javacv

org.bytedeco

javacv-platform

1.5.1

pom

然后就是测试类

public static void testzc() throws FrameGrabber.Exception

{

String rtsp = “获取的对应rtsp流”;

FFmpegFrameGrabber grabber = FFmpegFrameGrabber.createDefault(rtsp);

grabber.setOption(“rtsp_transport”, “tcp”); // 使用tcp的方式,不然会丢包很严重

grabber.setImageWidth(960);

grabber.setImageHeight(540);

grabber.start();

CanvasFrame canvasFrame = new CanvasFrame(“正茂”);// 创建窗口

canvasFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);// 设置窗口关闭程序是否也跟随关闭

canvasFrame.setAlwaysOnTop(true);

OpenCVFrameConverter.ToMat converter = new OpenCVFrameConverter.ToMat();

int ex = 0;

while (true)

{

Frame frame = grabber.grabImage();

canvasFrame.showImage(frame);

//程序到这里其实已经实现了预览的功能了,下面的方法就是将流保存成图片

//opencv_core.Mat

Mat mat = converter.convertToMat(frame);

opencv_imgcodecs.imwrite(“E:\\tp\\” + ex + “.png”, mat);

ex++;

try

{

Thread.sleep(1000);

}

catch (InterruptedException e)

{

e.printStackTrace();

} // 1000毫秒刷新一次圖像

}

}

还有一个调用这个方法的主类,我也贴出来吧

public static void main(String[] args)

{

try

{

testzc();

}

catch (Exception e)

{

e.printStackTrace();

}

}

最后我还是想说一句,在调用rtsp流之前,先弄清楚你的摄像头设备的流获取规则,比如我的摄像头牌子是海康的,对应的获取流的规则,我在另个帖子说了,你们要根据你们的牌子找对应的规则获取到流后再做上面的流处理。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/184299.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • intellij设置经典样式(背景为黑色的经典样式Darcula)

    intellij设置经典样式(背景为黑色的经典样式Darcula)将intellij设置为经典样式,背景黑色的Darcula样式。

    2022年6月27日
    26
  • 虚拟ip的概念_虚拟化的概念

    虚拟ip的概念_虚拟化的概念1.虚拟IP是什么?要是单讲解虚拟IP,理解起来很困难,所以干脆把动态IP、固定IP、实体IP与虚拟IP都讲解一下,加深理解和知识扩展实体IP:在网络的世界里,为了要辨识每一部计算机的位置,因此有了计算机IP位址的定义。一个IP就好似一个门牌!例如,你要去微软的网站的话,就要去『207.46.197.101』这个IP位置!这些可以直接在网际网络上沟…

    2022年10月20日
    0
  • redis RDB持久化方式的工作原理是怎样的_杜兰特挽留纳什

    redis RDB持久化方式的工作原理是怎样的_杜兰特挽留纳什我们已经知道对于一个企业级的redis架构来说,持久化是不可减少的,持久化主要是做灾难恢复,数据恢复,也可以归类到高可用的一个环节里面,比如你redis整个挂了,然后redis就不可用了,你要做的事情是让redis变得可用,尽快变得可用,重启redis,尽快让它对外提供服务。………

    2025年6月6日
    0
  • 谷歌地图离线地图开发教程视频_谷歌地图离线

    谷歌地图离线地图开发教程视频_谷歌地图离线谷歌离线地图开发主要有两部分组成:1、获取离线地图数据;因为离线地图一般都是局域网,所以需要离线地图数据放在内网中使用;2、离线地图服务器搭建以及二次开发接口提供,离线地图是一种服务,就像我们Apache提供的WEB服务器一样,他是一种准们的地图服务:提供了包括WEB服务、TMS服务、WMTS服务等等。离线地图数据的获取:可以通过【大地图下载器】下载到。下面将一…

    2022年9月20日
    0
  • Loadrunner教程–常用操做流程[通俗易懂]

    Loadrunner教程–常用操做流程[通俗易懂]作者博客:vps精选网1loadrunner压力测试一般使用流程1.1loadrunner压力测试原理本质就是在loadrunner上模拟多个用户同时按固定行为访问web站点。其中固定行为在loadrunner中是通过录制脚本定义的,多个用户同时访问的策略是在loadrunner的场景中定义的。1.2压测思路通过loadrunner进行压力测试web应用的主要思路分两步:第…

    2022年5月24日
    38
  • idea格式化代码快捷键失效_idea格式化代码快捷键无效

    idea格式化代码快捷键失效_idea格式化代码快捷键无效IDEA格式化代码快捷键失灵原因

    2022年10月11日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号