Skip to content

Latest commit

 

History

History
117 lines (106 loc) · 13.5 KB

CHANGELOG.md

File metadata and controls

117 lines (106 loc) · 13.5 KB
  • Fix Android build of FFmpeg under Mac OS X causing preprocessor errors on configure (issue #45)
  • Avoid versioning of FFTW and GSL libraries, preventing them from working on Android (issue #127)
  • Upgrade presets for OpenCV 3.1.0, FFmpeg 2.8.4, GSL 2.1, and Caffe, including the latest versions of their dependencies (issue bytedeco/javacpp#55)
  • Add presets for TensorFlow (issue #111)
  • Virtualize opencv_videostab.IFrameSource to let us implement it in Java (issue bytedeco/javacv#277)
  • Fix MinGW-w64 builds with recent versions of GCC 5.x and potential issue with using "w32threads" for FFmpeg
  • Add missing StatModel.loadXXX() methods in the opencv_ml module (issue #109)
  • Define commonly used Caffe std::vector types (DatumVector, FloatCallbackVector, and DoubleCallbackVector) for ease of use and performance reasons
  • Fix the cppbuild.sh script for FFmpeg, failing to build x264 and OpenH264 properly on Windows

October 25, 2015 version 1.1

  • Build the Maven artifacts for Linux in a CentOS 6 Docker container, for maximum compatibility (issue #22)
  • Cache files downloaded by cppbuild.sh in the downloads subdirectory to prevent having to redownload everything after a clean
  • Add the clang module to the presets for LLVM
  • Propose for FFmpeg in the cppbuild.sh file a minimal configuration to support MPEG-4 streams with H.264 and AAC
  • Add the non-GPL OpenH264 as an alternative H.264 encoder to x264 in FFmpeg
  • Hack together log_callback.h to be able to redirect to Java log messages from FFmpeg
  • Pick up OLDCC, OLDCXX, and OLDFC environment variables in cppbuild.sh and platform.oldcompiler system property in Maven to build with it libraries that can tolerate an older version of the C/C++ compiler on Linux
  • Upgrade all Maven dependencies and plugins to latest versions, thus bumping minimum requirements to Java SE 7, Android 4.0, and Maven 3.0
  • Provide cppbuild.sh script for Caffe that includes all dependencies (pull #77)
  • Upgrade presets for Caffe, CUDA 7.5, cuDNN 3, FFmpeg 2.8.1, Speex 1.2rc2, x265 1.8, FlyCapture 2.8.3.1, libfreenect 0.5.3, LLVM 3.7.0, Tesseract 3.04
  • Include motion_vector.h, fifo.h, and audio_fifo.h header files in the avutil module of FFmpeg (issue #79)
  • Add presets for Chilitags, thanks to Chris Walters for the financial contribution
  • Let users choose the runtime type of layer_by_name() from FloatNet or DoubleNet in caffe (issue bytedeco/javacpp#25)
  • Add presets for the face, optflow, and xfeatures2d modules of OpenCV 3.0 (issue bytedeco/javacv#196, issue bytedeco/javacv#239, issue #54)
  • Switch to GCC 4.9 by default on Android, probably dropping support for Android 2.2, because GCC 4.6 has issues with OpenMP (issue bytedeco/javacv#179)
  • Resolve missing dependency for GSL on windows-x86 by linking statically whatever it needs from libgcc_s_dw2-1.dll

July 11, 2015 version 1.0

  • Build OpenCV, GSL, Leptonica, and Tesseract from source code on all platforms for better consistency in functionality across platforms
  • Add presets for CUDA 7.0 (including cuBLAS, cuDNN, cuFFT, cuRAND, cuSOLVER, cuSPARSE, and NPP)
  • Offer the Apache License, Version 2.0, as a new choice of license, in addition to the GPLv2 with Classpath exception
  • Add libvpx in the cppbuild.sh script for FFmpeg to support the WebM format (issue #33)
  • Upgrade presets for OpenCV 3.0.0, FFmpeg 2.7.1, OpenSSL 1.0.2d, x265 1.7, Leptonica 1.72, LLVM 3.6.1, and the latest of Caffe
  • Define commonly used OpenCV std::vector types (PointVector, Point2fVector, Point2dVector, SizeVector, RectVector, KeyPointVector, DMatchVector) for ease of use and performance reasons
  • Map cv::saturate_cast<>() in a more meaningful way (issue #53) and name these functions more consistently
  • In addition to Leptonica and Tesseract, use only the officially supported GCC compiler for FFmpeg, FFTW, and GSL under Windows as well, to prevent compatibility issues (issue bytedeco/javacv#137)
  • Make flycapture/cppbuild.sh fail if FlyCapture is not found installed on the system (issue #46)
  • Patch libdc1394, libdcfreenect, FFTW, GSL, Leptonica and Tesseract with missing @rpath needed by Mac OS X (issue #46)

April 4, 2015 version 0.11

  • Remove unneeded @Opaque types from gsl and replace them with their definitions whose names end with "_struct"
  • Segregate methods using java.awt classes into the new Java2DFrameConverter class of JavaCV (issue #12)
  • Emphasize the need to install separately the parent pom.xml file (issue #42)
  • Make CMake configurable via CMAKE variable in cppbuild.sh (pull #41)
  • Add presets for Caffe (issue #34)
  • Let createBuffer() return UByteIndexer and UShortIndexer when appropriate for unsigned data types
  • Remove the need to set manually the platform.dependency system property for downstream modules without a cppbuild.sh file
  • Fix failing cppbuild.sh for FFmpeg on Ubuntu (issue #32)
  • Disable iconv, XCB, and SDL for more portables builds of FFmpeg, but enable x11grab and avfoundation to allow screen capture (issue #39)
  • Avoid versioning of Leptonica and Tesseract libraries, preventing them from working on Android (issue #38)
  • Add x265 in the cppbuild.sh script for FFmpeg, thanks to Mark Bolstad (issue bytedeco/javacv#41)
  • Upgrade presets for OpenCV 2.4.11, FFmpeg 2.6.1, OpenSSL 1.0.2a, FlyCapture 2.7.3.19, libdc1394 2.2.3, libfreenect 0.5.2, LLVM 3.6.0
  • Switch from IntPointer to BoolPointer for the BOOL* pointer type of Leptonica (issue #36)
  • Add preload for gif, jpeg, png, tiff, and webp libraries in presets for Leptonica (issue #36)
  • Include missing ltrresultiterator.h header file in the presets for Tesseract (issue #36)
  • Append @Documented to annotation types to have them picked up by Javadoc

December 23, 2014 version 0.10

  • Update instructions in the README.md file for manual installation in Android Studio
  • Include presets for Leptonica 1.71 and Tesseract 3.03-rc1 on Windows too
  • Fix Mat.createFrom(BufferedImage) (issue #30)
  • Add Speex, OpenCORE (AMR-NB and AMR-WB), and OpenSSL in the cppbuild.sh script for FFmpeg to support common RTMPS streams, among other things (issue #2 and issue bytedeco/javacv#71)
  • Deprecate slow get() and put() methods of CvMat in favor of the fast ones from createIndexer() (issue javacv:317)
  • Include operations.hpp and mat.hpp in opencv_core to get a few important functions such as read() and write() for FileStorage
  • Replace install_name_tool hack to set @rpath on Mac OS X with patches to do it properly on install (issue bytedeco/javacpp#6 and issue bytedeco/javacv#49)
  • Disable DocLint, which prevents the build from succeeding on Java 8 (issue bytedeco/javacpp#5)
  • Disable OpenCL detection when building FFmpeg, causing link failures (issue #19)
  • Document a bit the create() factory methods in the helper package of the OpenCV module, and their relationship with the release() methods
  • Include new createIndexer() method in CvMat, IplImage, Mat, etc. for easy and efficient multidimensional access of data (issue #317)
  • Deprecate get*Buffer() methods in favor of a better named and generic createBuffer() method
  • Fix java.lang.UnsatisfiedLinkError when allocating opencv_core.Mat, among others (issue bytedeco/javacv#9 and issue bytedeco/javacv#28)
  • Force OpenCV to build with GCC 4.6, as newer versions are known to hang on Android 2.2 (issue android:43819)
  • Upgrade presets for OpenCV 2.4.10, FFmpeg 2.5.1, FlyCapture 2.7.3.13, libfreenect 0.5.1, ARToolKitPlus 2.3.1, LLVM 3.5.0, and videoInput 0.200, where the latest code got merged into the master branch
  • Add callbacks for Tesseract according to new functionality in JavaCPP
  • Fix missing dependency of opencv_contrib on opencv_nonfree (issue javacv:490)
  • Skip functions that are not actually implemented in avdevice, causing load failures on Android
  • Update presets for FFmpeg where avcodec now inherits from swresample (issue #13)
  • Add a README.md file to each presets with links to original project, Java API documentation, and sample usage
  • Add missing overloaded methods with PointerPointer parameters in LLVM module

July 27, 2014 version 0.9

  • Add libmp3lame to FFmpeg builds (issue javacv:411)
  • Upgrade presets for FFmpeg 2.3, FlyCapture 2.6.3.4 (pull #6, issue #8), libfreenect 0.5
  • Make the cppbuild.sh scripts install native libraries inside the cppbuild subdirectories, instead of on the system
  • Include new platform.dependency and platform.dependencies properties to let users depend easily on the artifacts that contain native libraries
  • Add presets for flandmark 1.07 (pull #9), FFTW 3.3.4, GSL 1.16, LLVM 3.4.2, Leptonica 1.71, Tesseract 3.03-rc1
  • Fix missing static keyword on methods annotated with an @Adapter (issue #3)
  • Turn Mat.createFrom() into a static factory method, and make Mat.copyFrom() call Mat.create() as appropriate (issue #1)
  • Add missing native_camera modules of opencv_highgui for Android
  • Fix functions from opencv_stitching not accepting a MatVector as apparently intended by the API (issue javacv:466)

April 28, 2014 version 0.8

  • Move from Google Code to GitHub as main source code repository
  • Rename the com.googlecode.javacpp package to org.bytedeco.javacpp
  • Appended the version of the parent artifact to the ones of the child modules, in an effort to avoid conflicts
  • Updated cppbuild.sh scripts with support for the "android-x86" platform (issue javacv:411), thanks to Xavier Hallade
  • Added presets for PGR FlyCapture 1.7
  • Fixed compilation errors on Android, Mac OS X, and Windows
  • Upgraded to OpenCV 2.4.9, FFmpeg 2.2.1, libdc1394 2.2.2, and libfreenect 0.4
  • Introduced build scripts, based on the CPPJARs package of JavaCV, to install native C/C++ libraries
  • Ported various helper classes and methods from JavaCV
  • Inserted missing dependency entries in the pom.xml files of the child modules
  • Added presets for the C++ API of OpenCV 2.4.8, which can now be parsed due to the latest changes in JavaCPP

January 6, 2014 version 0.7

  • Fixed JavaCPP properties not getting set by the parent pom.xml file
  • Added presets for the C API of OpenCV 2.4.8, FFmpeg 2.1.x, libfreenect 0.2 (OpenKinect), videoInput 0.200, and ARToolkitPlus 2.3.0

September 15, 2013 version 0.6

Initial release

Acknowledgments

This project was conceived at the Okutomi & Tanaka Laboratory, Tokyo Institute of Technology, where I was supported for my doctoral research program by a generous scholarship from the Ministry of Education, Culture, Sports, Science and Technology (MEXT) of the Japanese Government. I extend my gratitude further to all who have reported bugs, donated code, or made suggestions for improvements (details above)!