栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Javacv录制视频

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Javacv录制视频

基于maven的Javacv录制视频

由于opencv对Java的跨平台兼容性不友好,javacv的作者为了方便跨平台编写opencv相关的代码,就有了集成opencv的javacv产生。

录制视频
VideoCapture capture = new VideoCapture(0); //参数0是默认的摄像头
VideoWriter vw = new VideoWriter();	//videowrite是负责写每一帧视频
double fps = capture.get(CAP_PROP_FPS); //获取你的摄像头支持的最大fps
int fourcc = VideoWriter.fourcc((byte) 'M', (byte) 'J', (byte) 'P', (byte) 'G');	//视频的编码格式
double width = capture.get(CAP_PROP_frame_WIDTH);
double height = capture.get(CAP_PROP_frame_HEIGHT);	// 视频的宽和高
vw.open("test001.avi", fourcc, fps, new Size((int) width, (int) height), true);	//读取视频,参数一:视频名称,参数二:编码格式,参数三:fps,参数四:视频的宽高,参数五:没搞懂,设为false会怎样没实验
Mat frame = new Mat();	//每一帧图片,cv的拍照是读取一个frame,录制视频则要循环获取frame
//	录制10s视频,格式是avi,当有空帧直接跳出循环
for (int i = 0; i < fps * 11; i++) {
     boolean f = capture.read(frame);
     if (frame.empty()) break;
     vw.write(frame);
}
//释放摄像头
capture.release();
注意事项

视频名称格外注意,要求有编号,如果想用时间格式,需要设置为:HH-mm-ss,中间有‘-’的才可以,至于为什么,不知,本人试验过了,不带‘-’会报错的,num... maven依赖文件


    org.bytedeco
    javacv-platform
    1.5.6


   org.bytedeco
   opencv
   4.5.3-1.5.6

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/658450.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号