README.md 3.6 KB
Newer Older
E
eguid 已提交
1
[![LICENSE](https://img.shields.io/badge/license-Anti%20996-blue.svg)](https://github.com/996icu/996.ICU/blob/master/LICENSE)
E
eguid 已提交
2
[![LICENSE](https://camo.githubusercontent.com/f969af70fa6573766a11cb0a968fc82b069298f1/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f6c697a68696368616f2f6f6e652e737667)](https://github.com/eguid/easyCV/blob/master/LICENSE)
E
eguid 已提交
3
# easyCV
E
eguid 已提交
4
      Video recorder and snapshot(video image capture) service,based on javaCV. 
E
eguid 已提交
5
      基于javaCV的跨平台视频录像和快照(视频截图)服务,开箱即用。
6
### 更新
eguid_1's avatar
eguid_1 已提交
7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
	2019年7月17日更新
	1、调整了截图库代码结构
	2、向下兼容老版本,但不再推荐使用原有的调用方式
	3、新增了一个图像像素数据字节数组抓取器(BytesGrabber),它能够获得图像的像素数组
	4、新增了一个Base64图像编码数据抓取器(Base64Grabber),用于取代原来的调用方式
	5、重新根据ffmpeg4.x最新解码库api实现视频解码流程,支持B、P帧解码,与原有代码不兼容,所以新创建新的FFmpeg4VideoImageGrabber以示区别
	6、推荐的使用方式是
	`
	//可以通过BufferedImageGrabber直接截取得到java图像
	BufferedImageGrabber grabber=new FFmpeg4VideoImageGrabber();
	//可以通过Base64Grabber轻松截取base64图像编码数据
	Base64Grabber grabber=new FFmpeg4VideoImageGrabber();
	//可以通过BufferGrabber获取截图图像的缓冲数据
	BufferGrabber grabber =new FFmpeg4VideoImageGrabber();
	//可以通过BytesGrabber获取截图图像的像素数组数据
	BytesGrabber grabber=new FFmpeg4VideoImageGrabber();
	`
	根据需要自行调用和管理,本项目只提供可靠的截图库,而不是大而全的框架。
	
	2019年4月18日更新
27 28
      1、录像服务的持久层设计不合理,现去除录像服务的持久层接口
      2、新增两个与springboot+postgre数据库演示demo
E
eguid 已提交
29
  
E
eguid 已提交
30
### 演示demo
E
eguid 已提交
31
1、[截图服务在线演示:http://eguid.cc/screenshot/test](http://eguid.cc/screenshot/test)<br />
E
eguid 已提交
32
      
E
eguid 已提交
33
2、[录像服务在线演示:http://eguid.cc/videorecord/test](http://eguid.cc/videorecord/test)<br />
E
eguid 已提交
34 35
       
       可以通过http://eguid.cc/screenshot/查看历史截图列表
E
eguid 已提交
36
       同样可以通过http://eguid.cc/videorecord/查看历史录像列表并进行点播观看
E
eguid 已提交
37
 
E
eguid 已提交
38
### dependency library
39
      Corelib based on 'javacv 1.4.x',exaples based on 'spring-boot 2.x'.
E
eguid 已提交
40 41

### build
E
eguid 已提交
42
      Based on jdk1.8,build on maven 3.7.
E
eguid 已提交
43 44

### core lib
E
eguid 已提交
45
      核心库提供截图快照和视频录像两套API,exaples中提供了几个演示示例,分别依赖录像和截图corelib
E
eguid 已提交
46

47
### exaples
E
eguid 已提交
48
    提供了几个springboot演示服务demo,截图服务演示demo默认使用8081端口,录像服务使用8082端口。
E
eguid 已提交
49 50
    其中截图功能支持保存成文件和返回base64两种方式获取截图。
    截图文件与录像文件都需要额外配合一个单独http/ftp服务才能进行访问
E
eguid 已提交
51 52
    录像服务演示demo除了需要指定保存路径外,与截图服务相同,我们一般把录像文件存放到http/ftp服务的根目录下,方便点播,推荐使用nginx、apache和iis)。
    demo中涉及到截图和录像信息的表结构都是简单的单表,这里就不提供了,直接查看*Mapper.xml文件即可
E
eguid 已提交
53

E
eguid 已提交
54
### support
E
eguid 已提交
55 56 57 58 59
    Video source support rtsp/rtmp/flv/hls/file formats,Record video file support mp4/flv/mkv/avi .... formats.
    Image file support jpg/png/jpeg/gif/bmp.
    视频源支持rtsp/rtmp/flv/hls/视频文件等多种格式。
    录像文件可以支持mp4/flv/mkv/avi等多种视频格式。
    视频快照(视频截图)支持jpg/png/jpeg/gif/bmp等图片格式,常见的格式基本都支持。
E
eguid 已提交
60