最近工作中因为项目的原因边学边用,接触并使用JavaCV做了一些相关的产品,目前觉得,JavaCV在图形图像(人家本身就是一个视觉库)的功能真的挺强大,而且使用起来避免了复杂的平台处理。下面整理一下对JavaCV库的初步理解。

1. JavaCV 简介

JavaCV是对各种常用计算机视觉库的封装后的一组jar包,其中封装了FFmpeg、OpenCV等计算机视觉编程人员常用库的接口,可以通过其中的Utility类方便的在包括Android在内的Java平台上调用这些接口。其中使用最多的应该就是FFmpeg了。

最开始Javacv是googlecode下面的一个项目,后来迁移到了github,因此JavaCV相关的包名也由com.googlecode.javacv改为org.bytedeco.javacv。目前最新版本是 1.3.3。项目地址:https://github.com/bytedeco/javacv

2. JavaCV 基本使用指南

从github项目中下载打包好的jar包,其中javacpp.jar 和 javacv.jar是必须的两个包,然后需要什么功能就添加额外的包。例如我需要用到ffmpeg进行视频录制,则需要添加ffmpeg.jar和ffmpeg-android-arm.jar(打包的arm平台so库)。这里很方便的地方是,so库文件都放在了jar文件里面,在集成的时候很简洁明了。

3. JavaCV 相关例子

短视频录制:

https://github.com/peirenlei/FFmpegRecorder 
https://github.com/CrazyOrr/FFmpegRecorder

短视频录制 + 拉流存储 + 视频转播:

https://github.com/lmylr/LyMedia

4. JavaCV常见问题

4.1. 在Android M平台,会有异常java.lang.UnsatisfiedLinkError: org.bytedeco.javacpp.avutil

这个问题,在作者的Issue里面也有人反映过:

https://github.com/bytedeco/javacv/issues/245https://github.com/bytedeco/javacv/issues/579

最终是通过ReLinker解决的:The UnsatisfiedLinkError X File (a real experience)

解决这个问题之前从未想过System.loadLibrary("")会不可靠,在这里替换为ReLinker.recursively().loadLibrary()之后,问题就解决了。

最新文章

  1. 不使用session,借助redis实现验证码
  2. 八月25日认识java
  3. 2.5---链表来进行加法,链式A+B(CC150)
  4. Apache-Shiro+Zookeeper系统集群安全解决方案之缓存管理
  5. android 利用TrafficStats类获取本应用的流量
  6. lintcode :最长上升连续子序列
  7. bzoj 1901: Zju2112 Dynamic Rankings(树套树)
  8. HTML 块级元素 行内元素
  9. C#基础(203)实例方法和重载方法总结,构造方法与实例方法总结,this关键字
  10. 向SqlParameter内动态添加参数
  11. HDU4845(SummerTrainingDay02-C 状态压缩bfs)
  12. Adobe AIR(跨平台应用)
  13. Buildroot make网卡interfaces文件被修改
  14. 基于iTop4412的FM收音机系统设计(二)
  15. vim学习选取多行(转)
  16. 常用输入法快速输入自定义格式的时间和日期(搜狗/QQ/微软拼音)
  17. Nginx卸载重装问题
  18. C#中的unsafe
  19. LT3756/LT3756-1/LT3756-2 - 100VIN、100VOUT LED 控制器
  20. oracle 笔记---(七)__角色

热门文章

  1. idea导入项目
  2. 远程桌面 把explorer关掉了
  3. sendmail报错Relaying denied
  4. vue.js插值,插入图片,属性
  5. cdnbest如何查看节点和站点的流量,负载和连接信息
  6. scrapy+redis去重实现增量抓取
  7. python list中append()方法和extend()方法区别
  8. 20175126《Java程序设计》第一周学习总结
  9. jquery全国省市区三级联动插件distpicker
  10. Android自定义View之上拉、下拉列表 头部元素跟随 缩放、平移效果的实现