JavaCV入门指南:帧抓取器(FrameGrabber)的原理与应用
前言
上一章大体讲解了javaCV的结构,本章就具体的FrameGrabber实现方式展开探索。
FrameGrabber(帧抓取器/采集器)介绍
用于采集/抓取视频图像和音频采样。封装了检索流信息,自动猜测视频解码格式,音视频解码等具体API,并把解码完的像素数据(可配置像素格式)或音频数据保存到Frame中返回等功能。
FrameGrabber的结构
FrameGrabber本身是个抽象类,抽象了所有抓取器的通用方法和一些共用属性。FrameGrabber的子类/实现类包含以下几个:
FFmpegFrameGrabber
OpenCVFrameGrabber
IPCameraFrameGrabber
VideoInputFrameGrabber(仅支持Windows)
FlyCapture2FrameGrabber
DC1394FrameGrabber
RealSenseFrameGrabber
OpenKinectFrameGrabber
OpenKinect2FrameGrabber
PS3EyeFrameGrabber
几种FrameGrabber子类实现介绍
FFmpegFrameGrabber
强大到离谱的音视频处理/计算机视觉/图像处理库,视觉和图像处理这块没有opencv强大;
可以支持网络摄像机:udp、rtp、rtsp和rtmp等,支持本机设备,比如屏幕画面、摄像头、音频话筒设备等等、还支持视频文件、网络流(flv、rtmp、http文件流、hls、等等等)
OpenC