Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

update to ffmpeg 5.0 #1125

Merged
merged 5 commits into from
Jan 18, 2022
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
* Map C++ JIT classes and functions of TorchScript in presets for PyTorch ([issue #1068](https://github.com/bytedeco/javacpp-presets/issues/1068))
* Synchronize `cachePackage()` and prevent repeated package caching in all presets ([pull #1071](https://github.com/bytedeco/javacpp-presets/pull/1071))
* Build FFmpeg with VA-API enabled and bundle its libraries to avoid loading issues ([issue bytedeco/javacv#1188](https://github.com/bytedeco/javacv/issues/1188))
* Upgrade presets for OpenCV 4.5.5, FFmpeg 4.4.1, librealsense2 2.50.0, Arrow 6.0.1, MKL 2022.0, DNNL 2.5.2, OpenBLAS 0.3.19, FFTW 3.3.10, CPython 3.10.1, NumPy 1.22.0, SciPy 1.8.0, Gym 0.21.0, LLVM 13.0.0, libpostal 1.1, Leptonica 1.82.0, Tesseract 5.0.1, CUDA 11.6.0, cuDNN 8.3.2, NCCL 2.11.4, MXNet 1.9.0, PyTorch 1.10.1, TensorFlow Lite 2.7.0, TensorRT 8.2.2.1, ALE 0.7.3, DepthAI 2.14.1, ONNX 1.10.2, ONNX Runtime 1.10.0, TVM 0.8.0, ModSecurity 3.0.6, and their dependencies
* Upgrade presets for OpenCV 4.5.5, FFmpeg 5.0, librealsense2 2.50.0, Arrow 6.0.1, MKL 2022.0, DNNL 2.5.2, OpenBLAS 0.3.19, FFTW 3.3.10, CPython 3.10.1, NumPy 1.22.0, SciPy 1.8.0, Gym 0.21.0, LLVM 13.0.0, libpostal 1.1, Leptonica 1.82.0, Tesseract 5.0.1, CUDA 11.6.0, cuDNN 8.3.2, NCCL 2.11.4, MXNet 1.9.0, PyTorch 1.10.1, TensorFlow Lite 2.7.0, TensorRT 8.2.2.1, ALE 0.7.3, DepthAI 2.14.1, ONNX 1.10.2, ONNX Runtime 1.10.0, TVM 0.8.0, ModSecurity 3.0.6, and their dependencies

### August 2, 2021 version 1.5.6
* Change `opencv_core.Mat` constructors to create column vectors out of arrays for consistency ([issue #1064](https://github.com/bytedeco/javacpp-presets/issues/1064))
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -172,7 +172,7 @@ The JavaCPP Presets depend on Maven, a powerful build system for Java, so before
Each child module in turn relies by default on the included [`cppbuild.sh` scripts](#the-cppbuildsh-scripts), explained below, to install its corresponding native libraries in the `cppbuild` subdirectory. To use native libraries already installed somewhere else on the system, other installation directories than `cppbuild` can also be specified either in the `pom.xml` files or in the `.java` configuration files. The following versions are supported:

* OpenCV 4.5.5 https://opencv.org/releases.html
* FFmpeg 4.4.x http://ffmpeg.org/download.html
* FFmpeg 5.0.x http://ffmpeg.org/download.html
* FlyCapture 2.13.x https://www.flir.com/products/flycapture-sdk
* Spinnaker 2.4.x https://www.flir.com/products/spinnaker-sdk
* libdc1394 2.2.6 http://sourceforge.net/projects/libdc1394/files/
Expand Down
21 changes: 11 additions & 10 deletions ffmpeg/README.md
Original file line number Diff line number Diff line change
@@ -1,36 +1,38 @@
# JavaCPP Presets for FFmpeg
JavaCPP Presets for FFmpeg
==========================
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would ask that these markdown changes not be reverted. They show up as red squiggle errors in my editor (i.e. fail markdown linting).

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There's no reason to make it inconsistent with the other README.md files. If there's a good reason to change it though, we'll do it for all of them, and that's going to be for another pull request if you want to do that. However, maybe it's just your linting tool that's buggy. How do you know that's not the case?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah, let's do that in different commits, for the other repositories too!

BTW, it doesn't appear to violate setext_with_atx, that looks alright. The reason I do it that way is that it looks better with setext, but there aren't any for level 3. I guess I'm not the only one to feel that way.


[![Gitter](https://badges.gitter.im/bytedeco/javacpp.svg)](https://gitter.im/bytedeco/javacpp) [![Maven Central](https://maven-badges.herokuapp.com/maven-central/org.bytedeco/ffmpeg/badge.svg)](https://maven-badges.herokuapp.com/maven-central/org.bytedeco/ffmpeg) [![Sonatype Nexus (Snapshots)](https://img.shields.io/nexus/s/https/oss.sonatype.org/org.bytedeco/ffmpeg.svg)](http://bytedeco.org/builds/)
<sup>Build status for all platforms:</sup> [![ffmpeg](https://github.com/bytedeco/javacpp-presets/workflows/ffmpeg/badge.svg)](https://github.com/bytedeco/javacpp-presets/actions?query=workflow%3Affmpeg) <sup>Commercial support:</sup> [![xscode](https://img.shields.io/badge/Available%20on-xs%3Acode-blue?style=?style=plastic&logo=appveyor&logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAAZQTFRF////////VXz1bAAAAAJ0Uk5T/wDltzBKAAAAlUlEQVR42uzXSwqAMAwE0Mn9L+3Ggtgkk35QwcnSJo9S+yGwM9DCooCbgn4YrJ4CIPUcQF7/XSBbx2TEz4sAZ2q1RAECBAiYBlCtvwN+KiYAlG7UDGj59MViT9hOwEqAhYCtAsUZvL6I6W8c2wcbd+LIWSCHSTeSAAECngN4xxIDSK9f4B9t377Wd7H5Nt7/Xz8eAgwAvesLRjYYPuUAAAAASUVORK5CYII=)](https://xscode.com/bytedeco/javacpp-presets)

## Introduction

Introduction
------------
This directory contains the JavaCPP Presets module for:

* FFmpeg 5.0 http://ffmpeg.org/
* FFmpeg 5.0 http://ffmpeg.org/

Please refer to the parent README.md file for more detailed information about the JavaCPP Presets.

## Documentation

Documentation
-------------
Java API documentation is available here:

* http://bytedeco.org/javacpp-presets/ffmpeg/apidocs/

## Sample Usage

Sample Usage
------------
Here is a simple example of FFmpeg ported to Java from this C source file:

* https://github.com/monday0rsunday/ffmpeg-tutorial/blob/master/002_read_few_frame.c
* https://github.com/monday0rsunday/ffmpeg-tutorial/blob/master/002_read_few_frame.c

We can use [Maven 3](http://maven.apache.org/) to download and install automatically all the class files as well as the native binaries. To run this sample code, after creating the `pom.xml` and `ReadFewFrame.java` source files below, simply execute on the command line:

```bash
mvn compile exec:java -Dexec.args="myvideofile.mpg"
$ mvn compile exec:java -Dexec.args="myvideofile.mpg"
```

### The `pom.xml` build file

```xml
<project>
<modelVersion>4.0.0</modelVersion>
Expand Down Expand Up @@ -61,7 +63,6 @@ mvn compile exec:java -Dexec.args="myvideofile.mpg"
```

### The `ReadFewFrame.java` source file

```java
import java.io.*;
import org.bytedeco.javacpp.*;
Expand Down
2 changes: 1 addition & 1 deletion ffmpeg/cppbuild.sh
Original file line number Diff line number Diff line change
Expand Up @@ -99,7 +99,7 @@ cd ..

patch -Np1 -d $LAME < ../../lame.patch
patch -Np1 -d $OPENSSL < ../../openssl-android.patch
patch -Np2 -d ffmpeg-$FFMPEG_VERSION < ../../ffmpeg.patch
patch -Np1 -d ffmpeg-$FFMPEG_VERSION < ../../ffmpeg.patch
sedinplace 's/bool bEnableavx512/bool bEnableavx512 = false/g' x265-*/source/common/param.h
sedinplace 's/detect512()/false/g' x265-*/source/common/quant.cpp

Expand Down
4 changes: 2 additions & 2 deletions ffmpeg/ffmpeg.patch
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
--- linux-x86_64/ffmpeg-5.0.orig/configure 2022-01-15 14:49:15.022054379 +1100
+++ linux-x86_64/ffmpeg-5.0/configure 2022-01-15 14:52:15.648669638 +1100
--- ffmpeg-5.0.orig/configure 2022-01-15 14:49:15.022054379 +1100
+++ ffmpeg-5.0/configure 2022-01-15 14:52:15.648669638 +1100
@@ -6532,7 +6532,7 @@
enabled libflite && require libflite "flite/flite.h" flite_init $flite_extralibs
enabled fontconfig && enable libfontconfig
Expand Down
Loading