上期回顾
特别篇
java实现将视频分片上传到minio(一):视频分片
java实现将视频分片上传到minio(二):视频文件写入到minio
javacv简介
JavaCV 使用来自计算机视觉领域研究人员常用库的JavaCPP
预设(OpenCV、FFmpeg、libdc1394、FlyCapture、Spinnaker、OpenKinect、librealsense、CL
PS3 Eye
Driver、videoInput、ARToolKitPlus、flandmark、Tesseractonica和)的包装器并提供实用程序类,使其功能更易于在
Java 平台(包括 Android)上使用。
简单点说 就是可以用了javacv可以直接用java代码来操作OpenCV、FFmpeg、libdc1394等常用的库。
javacv核心类介绍
帧抓取器(FrameGrabber)
封装了FFmpeg的检索流信息。
FrameGrabber是一个抽象类。 FrameGrabber有不少的实现类后期我们在一一说明。 常用的是FFmpegFrameGrabber实现类。
帧录制器/推流器(FrameRecorder)
封装了FFmpeg的音视频编码操作和封装操作
FrameRecorder也是一个抽象类。 FrameRecorder有2个实现类:一个是FFmpegFrameRecorder,一个是OpenCVFrameRecorder。我们常用的是FFmpegFrameRecorder
过滤器(FrameFilter)
FrameFilter的实现类只有FmpegFrameFilter
因为只有ffmpeg支持音视频的过滤器操作。
查看idea接口实现类快捷键: ctrl+h
数据存储对象(Frame)
用于存放解码后的视频图像像素和音频采样数据
引入javacv版本
<dependency>
<groupId>org.bytedeco</groupId>
<artifactId>javacv</artifactId>
<version>1.5.6</version>
</dependency>
推荐使用阿里的库,中央仓库下载太慢了。
文档参考
学习java群
java交流群(限订阅了的加):868794080