当前位置: 首页 > news >正文

javacv的视频截图功能

之前做了一个资源库的小项目,因为上传资源文件包含视频等附件,所以就需要时用到这个功能。通过对视频截图,然后作为封面缩略图,达到美观效果。

首先呢,需要准备相关的jar包,之前我用的是低版本的1.4.2,后来就换成了高版本的1.5.9

因为我使用的是MyEclipse开发的,使用IDEA开发的可以参考其他博主的pom.xml依赖。

下面是1.5.9版本的
在这里插入图片描述
图片红框里的是linuxwindows下的jar包(注:根据运行环境选择,否则会报错)

java.lang.NoClassDefFoundError: Could not initialize class org.bytedeco.javacpp.avutil

jar包下载
链接: https://pan.baidu.com/s/1yx2YnEmahEP0FsLvoj1z-w
提取码:0912

我使用的方法是:

  • 通过java获取视频信息,使用FFmpeg方式截取视频第n帧生成图片

下面展示 java代码

FFmpegFrameGrabber ff = null;
try{//图片File targetFile = new File(logoAbsolutePath);//视频ff = new FFmpegFrameGrabber(yfResourceResource.getAbsolutePath());ff.start();int length = ff.getLengthInFrames();int j = 0;Frame f = null;while (j <= length) {// 去掉前5帧,避免出现全黑的图片,依自己情况而定f = ff.grabImage();if ((j > 5) && (f.image != null)) {break;}j++;}ImageIO.write(FrameToBufferedImage(f), "jpg", targetFile);ff.stop();//生成的封面缩略图路径 logourl:我自定义的地址coverPath = request.getContextPath() + "/" + logourl + YfTools.getSubString(yfResourceResource.getAnnexName(),0,yfResourceResource.getAnnexName().length()-4)+".jpg?logoFlg=1";}catch (Exception e) {log.error(e);
}finally {if(ff!=null){try {ff.close();} catch (Exception ex) {log.error(ex);}}ff = null;
}

上传资源成功后
在这里插入图片描述

http://www.lryc.cn/news/261366.html

相关文章:

  • Fiddler中AutoResponder的简单使用
  • K8S(一)—安装部署
  • Kubernetes Pod 网段与主机内网网段互通
  • go学习redis的学习与使用
  • 娱乐新拐点:TikTok如何改变我们的日常生活?
  • 【Nginx】Nginx了解(基础)
  • 十九)Stable Diffusion使用教程:ai室内设计案例
  • 虚拟机VMware安装centos以及配置网络
  • call 和 apply:改变对象行为的秘密武器(上)
  • 工作中 docker 的使用积累
  • 初识SpringSecurity
  • 大数据讲课笔记1.4 进程管理
  • 技术点:实现大文件上传
  • 记一次挖矿病毒的溯源
  • day05-报表技术-图形报表
  • 【Spring】@Transactional事务属性详解
  • 通过css3的锚定滚动属性,实现分页加载时让滚动条不闪动
  • 使用Selenium与Scrapy处理动态加载网页内容的解决方法
  • Linux的权限(二)
  • 网络服务IP属地发生变化的原因有哪些?
  • OpenGL 着色器程序的保存和加载(二进制)
  • 【Unity 实用工具篇】| 游戏多语言解决方案,官方插件Localization 实现本地化及多种语言切换
  • 疯狂SQL转换系列- SQL for Tencent Cloud VectorDB
  • Excel中的INDIRECT函数用法
  • Spring-temp
  • 【C++干货铺】会搜索的二叉树(BSTree)
  • 【Spring AOP】 动态代理
  • NAT——网络地址转换
  • Lambda 表达式的常见用法
  • 成本管理常用的ChatGPT通用提示词模板