Skip to content

Commit 028a164

Browse files
committed
## 3.1.0
* Added ProGuard rules * Fixed the FFmpeg 8.0 compatibility issue across all platforms. The problem was that `all_channel_counts` was being set AFTER the filter was created, but FFmpeg 8.0 requires it to be set DURING filter creation.
1 parent 9ca6111 commit 028a164

File tree

5 files changed

+61
-5
lines changed

5 files changed

+61
-5
lines changed

CHANGELOG.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
## 3.1.0
2+
3+
* Added ProGuard rules
4+
* Fixed the FFmpeg 8.0 compatibility issue across all platforms. The problem was that `all_channel_counts` was being set AFTER the filter was created, but FFmpeg 8.0 requires it to be set DURING filter creation.
5+
16
## 3.0.0
27

38
* FFmpeg `v8.0.0` with [all the sweet perks](https://ffmpeg.org/index.html#news)

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ _Fork of the original FFmpeg Kit library to work with Android V2 bindings and Fl
66

77
<p align="center">
88
<a href="https://pub.dev/packages/ffmpeg_kit_flutter_new_min">
9-
<img src="https://img.shields.io/badge/pub-3.0.0-blue?logo=dart" alt="pub">
9+
<img src="https://img.shields.io/badge/pub-3.1.0-blue?logo=dart" alt="pub">
1010
</a>
1111
<a href="https://discord.gg/8NVwykjA">
1212
<img src="https://img.shields.io/discord/1387108888452665427?logo=discord&logoColor=white&label=Join+Us&color=blueviolet" alt="Discord">
@@ -60,7 +60,7 @@ Add `ffmpeg_kit_flutter_new_min` as a dependency in your `pubspec.yaml file`.
6060

6161
```yaml
6262
dependencies:
63-
ffmpeg_kit_flutter_new_min: ^3.0.0
63+
ffmpeg_kit_flutter_new_min: ^3.1.0
6464
```
6565
6666
### 3. Packages

android/build.gradle

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ android {
3737

3838
buildTypes {
3939
release {
40-
minifyEnabled false
40+
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
4141
}
4242
}
4343

@@ -49,6 +49,6 @@ android {
4949

5050
dependencies {
5151
implementation("androidx.annotation:annotation:1.9.1")
52-
implementation("com.antonkarpenko:ffmpeg-kit-min:2.0.0")
52+
implementation("com.antonkarpenko:ffmpeg-kit-min:2.1.0")
5353
}
5454
}

android/proguard-rules.pro

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
# Flutter framework and engine (core retention rules)
2+
-keep class io.flutter.app.** { *; }
3+
-keep class io.flutter.plugin.** { *; }
4+
-keep class io.flutter.util.** { *; }
5+
-keep class io.flutter.view.** { *; }
6+
-keep class io.flutter.** { *; }
7+
-keep class io.flutter.plugins.** { *; }
8+
-dontwarn io.flutter.embedding.**
9+
-ignorewarnings
10+
-keep class io.flutter.embedding.engine.plugins.** { *; }
11+
-keep class io.flutter.embedding.engine.renderer.** { *; }
12+
-keep class io.flutter.embedding.engine.systemchannels.** { *; }
13+
14+
# FFmpegKit rules
15+
-keep class com.antonkarpenko.ffmpegkit.** { *; }
16+
-dontwarn com.antonkarpenko.ffmpegkit.**
17+
18+
# Keep all FFmpegKit native methods
19+
-keepclasseswithmembernames class * {
20+
native <methods>;
21+
}
22+
23+
# Keep FFmpegKit Config
24+
-keep class com.antonkarpenko.ffmpegkit.FFmpegKitConfig {
25+
*;
26+
}
27+
28+
# Keep ABI Detection
29+
-keep class com.antonkarpenko.ffmpegkit.AbiDetect {
30+
*;
31+
}
32+
33+
# Keep all FFmpegKit sessions
34+
-keep class com.antonkarpenko.ffmpegkit.*Session {
35+
*;
36+
}
37+
38+
# Keep FFmpegKit callbacks
39+
-keep class com.antonkarpenko.ffmpegkit.*Callback {
40+
*;
41+
}
42+
43+
# Preserve all public classes in ffmpegkit
44+
-keep public class com.antonkarpenko.ffmpegkit.** {
45+
public *;
46+
}
47+
48+
# Keep reflection-based access
49+
-keepattributes *Annotation*
50+
-keepattributes Signature
51+
-keepattributes InnerClasses

pubspec.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ name: ffmpeg_kit_flutter_new_min
22
description: FFmpeg Kit Minimal for Flutter. Supports Android, iOS and macOS platforms.
33
repository: https://github.com/sk3llo/ffmpeg_kit_flutter
44
homepage: https://github.com/sk3llo/ffmpeg_kit_flutter
5-
version: 3.0.0
5+
version: 3.1.0
66

77
environment:
88
sdk: ">=3.1.0 <4.0.0"

0 commit comments

Comments
 (0)