E5E8 change package name. rename examples and tests modules by nextbreakpoint · Pull Request #8 · nextbreakpoint/ffmpeg4java · GitHub
[go: up one dir, main page]

Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
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
24 changes: 6 additions & 18 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,26 +1,14 @@
*.iml
.idea
/ffmpeg4java-macos-test/test-frame-10.png
/ffmpeg4java-macos-test/test-frame-20.png
/ffmpeg4java-macos-test/test-frame-30.png
/ffmpeg4java-macos-test/test-frame-40.png
/ffmpeg4java-macos-test/test-video-48.mpg
/ffmpeg4java-linux-test/test-frame-10.png
/ffmpeg4java-linux-test/test-frame-20.png
/ffmpeg4java-linux-test/test-frame-30.png
/ffmpeg4java-linux-test/test-frame-40.png
/ffmpeg4java-linux-test/test-video-48.mpg< 3CA1 /td>
/ffmpeg4java-windows-test/test-frame-10.png
/ffmpeg4java-windows-test/test-frame-20.png
/ffmpeg4java-windows-test/test-frame-30.png
/ffmpeg4java-windows-test/test-frame-40.png
/ffmpeg4java-windows-test/test-video-48.mpg
/ffmpeg4java-macos/native/ffmpeg/
/ffmpeg4java-linux/native/ffmpeg/
/ffmpeg4java-windows/native/ffmpeg/
/ffmpeg4java-windows/src/main/resources/ffmpeg4java.dll
/ffmpeg4java-linux/src/main/resources/libffmpeg4java.so
/ffmpeg4java-macos/src/main/resources/libffmpeg4java.dylib
/ffmpeg4java-macos-examples/output.mp4
/ffmpeg4java-linux-examples/output.mp4
/ffmpeg4java-windows-examples/output.mp4
/ffmpeg4java-examples/output.mp4
/ffmpeg4java-tests/test-frame-10.png
/ffmpeg4java-tests/test-frame-20.png
/ffmpeg4java-tests/test-frame-30.png
/ffmpeg4java-tests/test-frame-40.png
/ffmpeg4java-tests/test-video-48.mpg
4 changes: 2 additions & 2 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -30,8 +30,8 @@ dump:
verify:
test $(system)
@echo System = $(system)
#MAVEN_OPTS="--enable-preview --enable-native-access=ALL-UNNAMED -Djava.library.path=ffmpeg4java-$(system)-test/target/lib -Djextract.trace.downcalls=false -Xlog:library" mvn verify -P$(system)
MAVEN_OPTS="--enable-preview --enable-native-access=ALL-UNNAMED -Djava.library.path=ffmpeg4java-$(system)-test/target/lib -Djextract.trace.downcalls=false $(properties)" mvn verify -P$(system)
#MAVEN_OPTS="--enable-preview --enable-native-access=ALL-UNNAMED -Djava.library.path=ffmpeg4java-tests/target/lib -Djextract.trace.downcalls=false -Xlog:library" mvn verify -P$(system)
MAVEN_OPTS="--enable-preview --enable-native-access=ALL-UNNAMED -Djava.library.path=ffmpeg4java-tests/target/lib -Djextract.trace.downcalls=false $(properties)" mvn verify -P$(system)

.PHONY: copy-legal
copy-legal:
Expand Down
45 changes: 22 additions & 23 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,10 @@
# FFmpeg4Java 7.0.1-1.1
# FFmpeg4Java 7.0.1-1.2

FFmpeg4Java provides a Java wrapper of FFmpeg library version 7.0.1.

Please note that starting from version 7.0.1-1.0 the wrapper requires Java 22 and the Java FFM API (which is still in preview).
Older versions of the wrapper still work with Java 11 or later, but they use JNI with an old version of FFmpeg.


## License

Expand Down Expand Up @@ -54,19 +57,19 @@ If you are using Maven, add one of the following dependencies in your POM:
<dependency>
<groupId>com.nextbreakpoint</groupId>
<artifactId>com.nextbreakpoint.ffmpeg4java.macos</artifactId>
<version>7.0.1-1.1</version>
<version>7.0.1-1.2</version>
</dependency>

<dependency>
<groupId>com.nextbreakpoint</groupId>
<artifactId>com.nextbreakpoint.ffmpeg4java.linux</artifactId>
<version>7.0.1-1.1</version>
<version>7.0.1-1.2</version>
</dependency>

<dependency>
<groupId>com.nextbreakpoint</groupId>
<artifactId>com.nextbreakpoint.ffmpeg4java.windows</artifactId>
<version>7.0.1-1.1</version>
<version>7.0.1-1.2</version>
</dependency>

Also, add one of the following to download the native library:
Expand Down Expand Up @@ -226,25 +229,25 @@ Compile and package the JARs:

The artifacts will be created in the target directory of each module:

ffmpeg4java-macos/target/com.nextbreakpoint.ffmpeg4java.macos-7.0.1-1.1-x86_64.jar
ffmpeg4java-macos/target/com.nextbreakpoint.ffmpeg4java.macos-7.0.1-1. 8020 1-x86_64-x86_64.jar
ffmpeg4java-macos/target/com.nextbreakpoint.ffmpeg4java.macos-7.0.1-1.2-x86_64.jar
ffmpeg4java-macos/target/com.nextbreakpoint.ffmpeg4java.macos-7.0.1-1.2-x86_64-x86_64.jar

ffmpeg4java-linux/target/com.nextbreakpoint.ffmpeg4java.linux-7.0.1-1.1-x86_64.jar
ffmpeg4java-linux/target/com.nextbreakpoint.ffmpeg4java.linux-7.0.1-1.1-x86_64-x86_64.jar
ffmpeg4java-linux/target/com.nextbreakpoint.ffmpeg4java.linux-7.0.1-1.2-x86_64.jar
ffmpeg4java-linux/target/com.nextbreakpoint.ffmpeg4java.linux-7.0.1-1.2-x86_64-x86_64.jar

ffmpeg4java-windows/target/com.nextbreakpoint.ffmpeg4java.windows-7.0.1-1.1-x86_64.jar
ffmpeg4java-windows/target/com.nextbreakpoint.ffmpeg4java.windows-7.0.1-1.1-x86_64-x86_64.jar
ffmpeg4java-windows/target/com.nextbreakpoint.ffmpeg4java.windows-7.0.1-1.2-x86_64.jar
ffmpeg4java-windows/target/com.nextbreakpoint.ffmpeg4java.windows-7.0.1-1.2-x86_64-x86_64.jar

List the content of the JAR files:

unzip -t ffmpeg4java-macos/target/com.nextbreakpoint.ffmpeg4java.macos-7.0.1-1.1.jar
unzip -t ffmpeg4java-macos/target/com.nextbreakpoint.ffmpeg4java.macos-7.0.1-1.1-x86_64.jar
unzip -t ffmpeg4java-macos/target/com.nextbreakpoint.ffmpeg4java.macos-7.0.1-1.2.jar
unzip -t ffmpeg4java-macos/target/com.nextbreakpoint.ffmpeg4java.macos-7.0.1-1.2-x86_64.jar

unzip -t ffmpeg4java-linux/target/com.nextbreakpoint.ffmpeg4java.linux-7.0.1-1.1.jar
unzip -t ffmpeg4java-linux/target/com.nextbreakpoint.ffmpeg4java.linux-7.0.1-1.1-x86_64.jar
unzip -t ffmpeg4java-linux/target/com.nextbreakpoint.ffmpeg4java.linux-7.0.1-1.2.jar
unzip -t ffmpeg4java-linux/target/com.nextbreakpoint.ffmpeg4java.linux-7.0.1-1.2-x86_64.jar

unzip -t ffmpeg4java-windows/target/com.nextbreakpoint.ffmpeg4java.windows-7.0.1-1.1.jar
unzip -t ffmpeg4java-windows/target/com.nextbreakpoint.ffmpeg4java.windows-7.0.1-1.1-x86_64.jar
unzip -t ffmpeg4java-windows/target/com.nextbreakpoint.ffmpeg4java.windows-7.0.1-1.2.jar
unzip -t ffmpeg4java-windows/target/com.nextbreakpoint.ffmpeg4java.windows-7.0.1-1.2-x86_64.jar

Install the artifacts in your local Maven repository:

Expand Down Expand Up @@ -287,15 +290,11 @@ Generate the code for Windows (must be executed on Windows):

## Code examples

A simple example is provided for each supported system.

See POM files for details about how to download the native library and execute the code:

ffmpeg4java-macos-examples/pom.xml
A simple example is provided for the module ffmpeg4Java-examples.

ffmpeg4java-linux-examples/pom.xml
See the POM file for details about how to download the native library and execute the example:

ffmpeg4java-windows-examples/pom.xml
ffmpeg4java-examples/pom.xml


## References
Expand Down
177 changes: 177 additions & 0 deletions ffmpeg4java-examples/pom.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,177 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>com.nextbreakpoint</groupId>
<artifactId>com.nextbreakpoint.ffmpeg4java</artifactId>
<version>7.0.1-1.2</version>
</parent>
<artifactId>com.nextbreakpoint.ffmpeg4java.examples</artifactId>
<packaging>jar</packaging>
<name>FFmpeg4Java Examples</name>
<description>FFmpeg4Java provides a Java wrapper of FFmpeg library</description>
<profiles>
<profile>
<id>macos</id>
<properties>
<arch.type>x86_64</arch.type>
<os.type>macos</os.type>
</properties>
<dependencies>
<dependency>
<groupId>com.nextbreakpoint</groupId>
<artifactId>com.nextbreakpoint.ffmpeg4java.macos</artifactId>
<version>${project.version}</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>copy-lib</id>
<phase>test-compile</phase>
<goals>
<goal>unpack</goal>
</goals>
<configuration>
<artifactItems>
<artifactItem>
<groupId>com.nextbreakpoint</groupId>
<artifactId>com.nextbreakpoint.ffmpeg4java.macos</artifactId>
<classifier>x86_64</classifier>
<type>jar</type>
<overWrite>true</overWrite>
<outputDirectory>${project.build.directory}/lib</outputDirectory>
</artifactItem>
</artifactItems>
<includes>**/*.dylib</includes>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>linux</id>
<properties>
<arch.type>x86_64</arch.type>
<os.type>linux</os.type>
</properties>
<dependencies>
<dependency>
<groupId>com.nextbreakpoint</groupId>
<artifactId>com.nextbreakpoint.ffmpeg4java.linux</artifactId>
<version>${project.version}</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>copy-lib</id>
<phase>test-compile</phase>
<goals>
<goal>unpack</goal>
</goals>
<configuration>
<artifactItems>
<artifactItem>
<groupId>com.nextbreakpoint</groupId>
<artifactId>com.nextbreakpoint.ffmpeg4java.linux</artifactId>
<classifier>x86_64</classifier>
<type>jar</type>
<overWrite>true</overWrite>
<outputDirectory>${project.build.directory}/lib</outputDirectory>
</artifactItem>
</artifactItems>
<includes>**/*.so</includes>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>windows</id>
<properties>
<arch.type>x86_64</arch.type>
<os.type>windows</os.type>
</properties>
<dependencies>
<dependency>
<groupId>com.nextbreakpoint</groupId>
<artifactId>com.nextbreakpoint.ffmpeg4java.windows</artifactId>
<version>${project.version}</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>copy-lib</id>
<phase>test-compile</phase>
<goals>
<goal>unpack</goal>
</goals>
<configuration>
<artifactItems>
<artifactItem>
<groupId>com.nextbreakpoint</groupId>
<artifactId>com.nextbreakpoint.ffmpeg4java.windows</artifactId>
<classifier>x86_64</classifier>
<type>jar</type>
<overWrite>true</overWrite>
<outputDirectory>${project.build.directory}/lib</outputDirectory>
</artifactItem>
</artifactItems>
<includes>**/*.dll</includes>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<executions>
<execution>
<id>run</id>
<phase>test</phase>
<goals>
<goal>exec</goal>
</goals>
<configuration>
<executable>java</executable>
<arguments>
<argument>--enable-preview</argument>
<argument>--enable-native-access=ALL-UNNAMED</argument>
<argument>-classpath</argument>
<classpath/>
<argument>-Djava.library.path=${project.build.directory}/lib</argument>
<argument>com.nextbreakpoint.ffmpeg4java.ConvertVideoMain</argument>
<argument>sample.mpg</argument>
<argument>output.mp4</argument>
</arguments>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
File renamed without changes.
Loading
0