javacv相关学习:了解javacv

上期回顾

特别篇

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实现类。
javacv相关学习:了解javacv_第1张图片

帧录制器/推流器(FrameRecorder)

封装了FFmpeg的音视频编码操作和封装操作
FrameRecorder也是一个抽象类。 FrameRecorder有2个实现类:一个是FFmpegFrameRecorder,一个是OpenCVFrameRecorder。我们常用的是FFmpegFrameRecorder
javacv相关学习:了解javacv_第2张图片

过滤器(FrameFilter)

FrameFilter的实现类只有FmpegFrameFilter
因为只有ffmpeg支持音视频的过滤器操作。
javacv相关学习:了解javacv_第3张图片
查看idea接口实现类快捷键: ctrl+h

数据存储对象(Frame)

用于存放解码后的视频图像像素和音频采样数据

引入javacv版本

        <dependency>
            <groupId>org.bytedeco</groupId>
            <artifactId>javacv</artifactId>
            <version>1.5.6</version>
        </dependency>

推荐使用阿里的库,中央仓库下载太慢了。

maven下载过慢优化

文档参考

javacv源码

学习java群

java交流群(限订阅了的加):868794080

免费扫码领取红包

javacv相关学习:了解javacv_第4张图片

你可能感兴趣的:(音视频,java,开发语言,javacv)