Browse Source

Merge pull request #41 from tanersener/development

merge v0.2.5
Taner Sener 6 years ago
parent
commit
33355a6449
91 changed files with 368 additions and 81 deletions
  1. 3 0
      CHANGELOG.md
  2. 3 3
      README.md
  3. 1 1
      android/build.gradle
  4. 11 0
      android/src/main/java/com/arthenica/flutter/ffmpeg/FlutterFFmpegPlugin.java
  5. 2 2
      example/ios/Podfile.lock
  6. 13 0
      example/lib/flutter_ffmpeg_example.dart
  7. 7 7
      example/pubspec.lock
  8. 1 2
      example/pubspec.yaml
  9. 5 0
      ios/Classes/FlutterFfmpegPlugin.m
  10. 1 1
      ios/flutter_ffmpeg.podspec
  11. 1 1
      packages/flutter_ffmpeg_audio/android/build.gradle
  12. 11 0
      packages/flutter_ffmpeg_audio/android/src/main/java/com/arthenica/flutter/ffmpeg/FlutterFFmpegPlugin.java
  13. 5 0
      packages/flutter_ffmpeg_audio/ios/Classes/FlutterFfmpegPlugin.m
  14. 1 1
      packages/flutter_ffmpeg_audio/ios/flutter_ffmpeg.podspec
  15. 2 2
      packages/flutter_ffmpeg_audio/pubspec.yaml
  16. 1 1
      packages/flutter_ffmpeg_audio_lts/android/build.gradle
  17. 11 0
      packages/flutter_ffmpeg_audio_lts/android/src/main/java/com/arthenica/flutter/ffmpeg/FlutterFFmpegPlugin.java
  18. 5 0
      packages/flutter_ffmpeg_audio_lts/ios/Classes/FlutterFfmpegPlugin.m
  19. 1 1
      packages/flutter_ffmpeg_audio_lts/ios/flutter_ffmpeg.podspec
  20. 2 2
      packages/flutter_ffmpeg_audio_lts/pubspec.yaml
  21. 1 1
      packages/flutter_ffmpeg_full-gpl/android/build.gradle
  22. 11 0
      packages/flutter_ffmpeg_full-gpl/android/src/main/java/com/arthenica/flutter/ffmpeg/FlutterFFmpegPlugin.java
  23. 5 0
      packages/flutter_ffmpeg_full-gpl/ios/Classes/FlutterFfmpegPlugin.m
  24. 1 1
      packages/flutter_ffmpeg_full-gpl/ios/flutter_ffmpeg.podspec
  25. 2 2
      packages/flutter_ffmpeg_full-gpl/pubspec.yaml
  26. 1 1
      packages/flutter_ffmpeg_full-gpl_lts/android/build.gradle
  27. 11 0
      packages/flutter_ffmpeg_full-gpl_lts/android/src/main/java/com/arthenica/flutter/ffmpeg/FlutterFFmpegPlugin.java
  28. 5 0
      packages/flutter_ffmpeg_full-gpl_lts/ios/Classes/FlutterFfmpegPlugin.m
  29. 1 1
      packages/flutter_ffmpeg_full-gpl_lts/ios/flutter_ffmpeg.podspec
  30. 2 2
      packages/flutter_ffmpeg_full-gpl_lts/pubspec.yaml
  31. 1 1
      packages/flutter_ffmpeg_full/android/build.gradle
  32. 11 0
      packages/flutter_ffmpeg_full/android/src/main/java/com/arthenica/flutter/ffmpeg/FlutterFFmpegPlugin.java
  33. 5 0
      packages/flutter_ffmpeg_full/ios/Classes/FlutterFfmpegPlugin.m
  34. 1 1
      packages/flutter_ffmpeg_full/ios/flutter_ffmpeg.podspec
  35. 2 2
      packages/flutter_ffmpeg_full/pubspec.yaml
  36. 1 1
      packages/flutter_ffmpeg_full_lts/android/build.gradle
  37. 11 0
      packages/flutter_ffmpeg_full_lts/android/src/main/java/com/arthenica/flutter/ffmpeg/FlutterFFmpegPlugin.java
  38. 5 0
      packages/flutter_ffmpeg_full_lts/ios/Classes/FlutterFfmpegPlugin.m
  39. 1 1
      packages/flutter_ffmpeg_full_lts/ios/flutter_ffmpeg.podspec
  40. 2 2
      packages/flutter_ffmpeg_full_lts/pubspec.yaml
  41. 1 1
      packages/flutter_ffmpeg_https-gpl/android/build.gradle
  42. 11 0
      packages/flutter_ffmpeg_https-gpl/android/src/main/java/com/arthenica/flutter/ffmpeg/FlutterFFmpegPlugin.java
  43. 5 0
      packages/flutter_ffmpeg_https-gpl/ios/Classes/FlutterFfmpegPlugin.m
  44. 1 1
      packages/flutter_ffmpeg_https-gpl/ios/flutter_ffmpeg.podspec
  45. 2 2
      packages/flutter_ffmpeg_https-gpl/pubspec.yaml
  46. 1 1
      packages/flutter_ffmpeg_https-gpl_lts/android/build.gradle
  47. 11 0
      packages/flutter_ffmpeg_https-gpl_lts/android/src/main/java/com/arthenica/flutter/ffmpeg/FlutterFFmpegPlugin.java
  48. 5 0
      packages/flutter_ffmpeg_https-gpl_lts/ios/Classes/FlutterFfmpegPlugin.m
  49. 1 1
      packages/flutter_ffmpeg_https-gpl_lts/ios/flutter_ffmpeg.podspec
  50. 2 2
      packages/flutter_ffmpeg_https-gpl_lts/pubspec.yaml
  51. 1 1
      packages/flutter_ffmpeg_https/android/build.gradle
  52. 11 0
      packages/flutter_ffmpeg_https/android/src/main/java/com/arthenica/flutter/ffmpeg/FlutterFFmpegPlugin.java
  53. 5 0
      packages/flutter_ffmpeg_https/ios/Classes/FlutterFfmpegPlugin.m
  54. 1 1
      packages/flutter_ffmpeg_https/ios/flutter_ffmpeg.podspec
  55. 2 2
      packages/flutter_ffmpeg_https/pubspec.yaml
  56. 1 1
      packages/flutter_ffmpeg_https_lts/android/build.gradle
  57. 11 0
      packages/flutter_ffmpeg_https_lts/android/src/main/java/com/arthenica/flutter/ffmpeg/FlutterFFmpegPlugin.java
  58. 5 0
      packages/flutter_ffmpeg_https_lts/ios/Classes/FlutterFfmpegPlugin.m
  59. 1 1
      packages/flutter_ffmpeg_https_lts/ios/flutter_ffmpeg.podspec
  60. 2 2
      packages/flutter_ffmpeg_https_lts/pubspec.yaml
  61. 1 1
      packages/flutter_ffmpeg_min-gpl/android/build.gradle
  62. 11 0
      packages/flutter_ffmpeg_min-gpl/android/src/main/java/com/arthenica/flutter/ffmpeg/FlutterFFmpegPlugin.java
  63. 5 0
      packages/flutter_ffmpeg_min-gpl/ios/Classes/FlutterFfmpegPlugin.m
  64. 1 1
      packages/flutter_ffmpeg_min-gpl/ios/flutter_ffmpeg.podspec
  65. 2 2
      packages/flutter_ffmpeg_min-gpl/pubspec.yaml
  66. 1 1
      packages/flutter_ffmpeg_min-gpl_lts/android/build.gradle
  67. 11 0
      packages/flutter_ffmpeg_min-gpl_lts/android/src/main/java/com/arthenica/flutter/ffmpeg/FlutterFFmpegPlugin.java
  68. 5 0
      packages/flutter_ffmpeg_min-gpl_lts/ios/Classes/FlutterFfmpegPlugin.m
  69. 1 1
      packages/flutter_ffmpeg_min-gpl_lts/ios/flutter_ffmpeg.podspec
  70. 2 2
      packages/flutter_ffmpeg_min-gpl_lts/pubspec.yaml
  71. 1 1
      packages/flutter_ffmpeg_min/android/build.gradle
  72. 11 0
      packages/flutter_ffmpeg_min/android/src/main/java/com/arthenica/flutter/ffmpeg/FlutterFFmpegPlugin.java
  73. 5 0
      packages/flutter_ffmpeg_min/ios/Classes/FlutterFfmpegPlugin.m
  74. 1 1
      packages/flutter_ffmpeg_min/ios/flutter_ffmpeg.podspec
  75. 2 2
      packages/flutter_ffmpeg_min/pubspec.yaml
  76. 1 1
      packages/flutter_ffmpeg_min_lts/android/build.gradle
  77. 11 0
      packages/flutter_ffmpeg_min_lts/android/src/main/java/com/arthenica/flutter/ffmpeg/FlutterFFmpegPlugin.java
  78. 5 0
      packages/flutter_ffmpeg_min_lts/ios/Classes/FlutterFfmpegPlugin.m
  79. 1 1
      packages/flutter_ffmpeg_min_lts/ios/flutter_ffmpeg.podspec
  80. 2 2
      packages/flutter_ffmpeg_min_lts/pubspec.yaml
  81. 1 1
      packages/flutter_ffmpeg_video/android/build.gradle
  82. 11 0
      packages/flutter_ffmpeg_video/android/src/main/java/com/arthenica/flutter/ffmpeg/FlutterFFmpegPlugin.java
  83. 5 0
      packages/flutter_ffmpeg_video/ios/Classes/FlutterFfmpegPlugin.m
  84. 1 1
      packages/flutter_ffmpeg_video/ios/flutter_ffmpeg.podspec
  85. 2 2
      packages/flutter_ffmpeg_video/pubspec.yaml
  86. 1 1
      packages/flutter_ffmpeg_video_lts/android/build.gradle
  87. 11 0
      packages/flutter_ffmpeg_video_lts/android/src/main/java/com/arthenica/flutter/ffmpeg/FlutterFFmpegPlugin.java
  88. 5 0
      packages/flutter_ffmpeg_video_lts/ios/Classes/FlutterFfmpegPlugin.m
  89. 1 1
      packages/flutter_ffmpeg_video_lts/ios/flutter_ffmpeg.podspec
  90. 2 2
      packages/flutter_ffmpeg_video_lts/pubspec.yaml
  91. 1 1
      pubspec.yaml

+ 3 - 0
CHANGELOG.md

@@ -1,3 +1,6 @@
+## 0.2.5
+- Implements side data information parsing
+
 ## 0.2.4
 ## 0.2.4
 - Adds support for Android devices with API Level 16+
 - Adds support for Android devices with API Level 16+
 - Fixes issues #21 and #36
 - Fixes issues #21 and #36

+ 3 - 3
README.md

@@ -1,6 +1,6 @@
 # flutter_ffmpeg 
 # flutter_ffmpeg 
 
 
-![GitHub release](https://img.shields.io/badge/release-v0.2.4-blue.svg)
+![GitHub release](https://img.shields.io/badge/release-v0.2.5-blue.svg)
 ![](https://img.shields.io/pub/v/flutter_ffmpeg.svg)
 ![](https://img.shields.io/pub/v/flutter_ffmpeg.svg)
 
 
 FFmpeg plugin for Flutter. Supports iOS and Android.
 FFmpeg plugin for Flutter. Supports iOS and Android.
@@ -70,7 +70,7 @@ FFmpeg plugin for Flutter. Supports iOS and Android.
 Add `flutter_ffmpeg` as a dependency in your `pubspec.yaml file`.
 Add `flutter_ffmpeg` as a dependency in your `pubspec.yaml file`.
   ```
   ```
 dependencies:
 dependencies:
-    flutter_ffmpeg: ^0.2.4
+    flutter_ffmpeg: ^0.2.5
   ```
   ```
 
 
 #### 2.1 Packages
 #### 2.1 Packages
@@ -83,7 +83,7 @@ Installation of `FlutterFFmpeg` using `pub` enables the default package, which i
       flutter_ffmpeg:
       flutter_ffmpeg:
         git:
         git:
           url: git://github.com/tanersener/flutter-ffmpeg.git
           url: git://github.com/tanersener/flutter-ffmpeg.git
-          ref: v0.2.4
+          ref: v0.2.5
           path: packages/flutter_ffmpeg_<package_name>
           path: packages/flutter_ffmpeg_<package_name>
 
 
     ```
     ```

+ 1 - 1
android/build.gradle

@@ -1,5 +1,5 @@
 group 'com.arthenica.flutter.ffmpeg'
 group 'com.arthenica.flutter.ffmpeg'
-version '0.2.4'
+version '0.2.5'
 
 
 buildscript {
 buildscript {
     repositories {
     repositories {

+ 11 - 0
android/src/main/java/com/arthenica/flutter/ffmpeg/FlutterFFmpegPlugin.java

@@ -425,6 +425,17 @@ public class FlutterFFmpegPlugin implements MethodCallHandler, EventChannel.Stre
 
 
                 map.put("metadata", metadataMap);
                 map.put("metadata", metadataMap);
             }
             }
+
+            final Set<Map.Entry<String, String>> sidedata = streamInformation.getSidedataEntries();
+            if ((sidedata != null) && (sidedata.size() > 0)) {
+                final HashMap<String, String> sidedataMap = new HashMap<>();
+
+                for (Map.Entry<String, String> entry : sidedata) {
+                    sidedataMap.put(entry.getKey(), entry.getValue());
+                }
+
+                map.put("sidedata", sidedataMap);
+            }
         }
         }
 
 
         return map;
         return map;

+ 2 - 2
example/ios/Podfile.lock

@@ -1,6 +1,6 @@
 PODS:
 PODS:
   - Flutter (1.0.0)
   - Flutter (1.0.0)
-  - flutter_ffmpeg (0.2.4):
+  - flutter_ffmpeg (0.2.5):
     - Flutter
     - Flutter
     - mobile-ffmpeg-https (= 4.2.2)
     - mobile-ffmpeg-https (= 4.2.2)
   - mobile-ffmpeg-https (4.2.2)
   - mobile-ffmpeg-https (4.2.2)
@@ -26,7 +26,7 @@ EXTERNAL SOURCES:
 
 
 SPEC CHECKSUMS:
 SPEC CHECKSUMS:
   Flutter: 58dd7d1b27887414a370fcccb9e645c08ffd7a6a
   Flutter: 58dd7d1b27887414a370fcccb9e645c08ffd7a6a
-  flutter_ffmpeg: 0559b652297c415396f5c2e9bbb2f453b58cde1e
+  flutter_ffmpeg: 5da696fb4882454772ffbb49913629ba6a086b28
   mobile-ffmpeg-https: 9474e6e0958b6c12d981073d81a3b9484da02f48
   mobile-ffmpeg-https: 9474e6e0958b6c12d981073d81a3b9484da02f48
   path_provider: f96fff6166a8867510d2c25fdcc346327cc4b259
   path_provider: f96fff6166a8867510d2c25fdcc346327cc4b259
 
 

+ 13 - 0
example/lib/flutter_ffmpeg_example.dart

@@ -226,6 +226,19 @@ class FlutterFFmpegTestAppState extends State<MainPage> with TickerProviderState
               print('Stream real frame rate: ${streamsInfo['realFrameRate']}');
               print('Stream real frame rate: ${streamsInfo['realFrameRate']}');
               print('Stream time base: ${streamsInfo['timeBase']}');
               print('Stream time base: ${streamsInfo['timeBase']}');
               print('Stream codec time base: ${streamsInfo['codecTimeBase']}');
               print('Stream codec time base: ${streamsInfo['codecTimeBase']}');
+
+              final metadataMap = streamsInfo['metadata'];
+              if (metadataMap != null) {
+                  print('Stream metadata encoder: ${metadataMap['encoder']}');
+                  print('Stream metadata rotate: ${metadataMap['rotate']}');
+                  print('Stream metadata creation time: ${metadataMap['creation_time']}');
+                  print('Stream metadata handler name: ${metadataMap['handler_name']}');
+              }
+
+              final sideDataMap = streamsInfo['sidedata'];
+              if (sideDataMap != null) {
+                  print('Stream side data displaymatrix: ${sideDataMap['displaymatrix']}');
+              }
             }
             }
           }
           }
         }
         }

+ 7 - 7
example/pubspec.lock

@@ -7,7 +7,7 @@ packages:
       name: async
       name: async
       url: "https://pub.dartlang.org"
       url: "https://pub.dartlang.org"
     source: hosted
     source: hosted
-    version: "2.1.0"
+    version: "2.2.0"
   boolean_selector:
   boolean_selector:
     dependency: transitive
     dependency: transitive
     description:
     description:
@@ -44,10 +44,10 @@ packages:
   flutter_ffmpeg:
   flutter_ffmpeg:
     dependency: "direct main"
     dependency: "direct main"
     description:
     description:
-      path: ".."
-      relative: true
-    source: path
-    version: "0.2.4"
+      name: flutter_ffmpeg
+      url: "https://pub.dartlang.org"
+    source: hosted
+    version: "0.2.5"
   flutter_test:
   flutter_test:
     dependency: "direct dev"
     dependency: "direct dev"
     description: flutter
     description: flutter
@@ -94,7 +94,7 @@ packages:
       name: quiver
       name: quiver
       url: "https://pub.dartlang.org"
       url: "https://pub.dartlang.org"
     source: hosted
     source: hosted
-    version: "2.0.2"
+    version: "2.0.3"
   sky_engine:
   sky_engine:
     dependency: transitive
     dependency: transitive
     description: flutter
     description: flutter
@@ -141,7 +141,7 @@ packages:
       name: test_api
       name: test_api
       url: "https://pub.dartlang.org"
       url: "https://pub.dartlang.org"
     source: hosted
     source: hosted
-    version: "0.2.4"
+    version: "0.2.5"
   typed_data:
   typed_data:
     dependency: transitive
     dependency: transitive
     description:
     description:

+ 1 - 2
example/pubspec.yaml

@@ -11,8 +11,7 @@ dependencies:
   cupertino_icons: ^0.1.2
   cupertino_icons: ^0.1.2
   path: ^1.6.2
   path: ^1.6.2
   path_provider: ^0.5.0+1
   path_provider: ^0.5.0+1
-  flutter_ffmpeg:
-    path: ../
+  flutter_ffmpeg: ^0.2.5
 
 
 dev_dependencies:
 dev_dependencies:
   flutter_test:
   flutter_test:

+ 5 - 0
ios/Classes/FlutterFfmpegPlugin.m

@@ -386,6 +386,11 @@ static NSString *const EVENT_STAT = @"FlutterFFmpegStatisticsCallback";
         if (metadataDictionary != nil && ([metadataDictionary count] > 0)) {
         if (metadataDictionary != nil && ([metadataDictionary count] > 0)) {
             dictionary[@"metadata"] = metadataDictionary;
             dictionary[@"metadata"] = metadataDictionary;
         }
         }
+
+        NSDictionary *sidedataDictionary = [streamInformation getSidedataEntries];
+        if (sidedataDictionary != nil && ([sidedataDictionary count] > 0)) {
+            dictionary[@"sidedata"] = sidedataDictionary;
+        }
     }
     }
 
 
     return dictionary;
     return dictionary;

+ 1 - 1
ios/flutter_ffmpeg.podspec

@@ -1,6 +1,6 @@
 Pod::Spec.new do |s|
 Pod::Spec.new do |s|
   s.name             = 'flutter_ffmpeg'
   s.name             = 'flutter_ffmpeg'
-  s.version          = '0.2.4'
+  s.version          = '0.2.5'
   s.summary          = 'FFmpeg plugin for Flutter.'
   s.summary          = 'FFmpeg plugin for Flutter.'
   s.description      = 'FFmpeg plugin based on mobile-ffmpeg for Flutter.'
   s.description      = 'FFmpeg plugin based on mobile-ffmpeg for Flutter.'
   s.homepage         = 'https://github.com/tanersener/flutter-ffmpeg'
   s.homepage         = 'https://github.com/tanersener/flutter-ffmpeg'

+ 1 - 1
packages/flutter_ffmpeg_audio/android/build.gradle

@@ -1,5 +1,5 @@
 group 'com.arthenica.flutter.ffmpeg'
 group 'com.arthenica.flutter.ffmpeg'
-version '0.2.4'
+version '0.2.5'
 
 
 buildscript {
 buildscript {
     repositories {
     repositories {

+ 11 - 0
packages/flutter_ffmpeg_audio/android/src/main/java/com/arthenica/flutter/ffmpeg/FlutterFFmpegPlugin.java

@@ -425,6 +425,17 @@ public class FlutterFFmpegPlugin implements MethodCallHandler, EventChannel.Stre
 
 
                 map.put("metadata", metadataMap);
                 map.put("metadata", metadataMap);
             }
             }
+
+            final Set<Map.Entry<String, String>> sidedata = streamInformation.getSidedataEntries();
+            if ((sidedata != null) && (sidedata.size() > 0)) {
+                final HashMap<String, String> sidedataMap = new HashMap<>();
+
+                for (Map.Entry<String, String> entry : sidedata) {
+                    sidedataMap.put(entry.getKey(), entry.getValue());
+                }
+
+                map.put("sidedata", sidedataMap);
+            }
         }
         }
 
 
         return map;
         return map;

+ 5 - 0
packages/flutter_ffmpeg_audio/ios/Classes/FlutterFfmpegPlugin.m

@@ -386,6 +386,11 @@ static NSString *const EVENT_STAT = @"FlutterFFmpegStatisticsCallback";
         if (metadataDictionary != nil && ([metadataDictionary count] > 0)) {
         if (metadataDictionary != nil && ([metadataDictionary count] > 0)) {
             dictionary[@"metadata"] = metadataDictionary;
             dictionary[@"metadata"] = metadataDictionary;
         }
         }
+
+        NSDictionary *sidedataDictionary = [streamInformation getSidedataEntries];
+        if (sidedataDictionary != nil && ([sidedataDictionary count] > 0)) {
+            dictionary[@"sidedata"] = sidedataDictionary;
+        }
     }
     }
 
 
     return dictionary;
     return dictionary;

+ 1 - 1
packages/flutter_ffmpeg_audio/ios/flutter_ffmpeg.podspec

@@ -1,6 +1,6 @@
 Pod::Spec.new do |s|
 Pod::Spec.new do |s|
   s.name             = 'flutter_ffmpeg'
   s.name             = 'flutter_ffmpeg'
-  s.version          = '0.2.4'
+  s.version          = '0.2.5'
   s.summary          = 'FFmpeg plugin for Flutter.'
   s.summary          = 'FFmpeg plugin for Flutter.'
   s.description      = 'FFmpeg plugin based on mobile-ffmpeg for Flutter.'
   s.description      = 'FFmpeg plugin based on mobile-ffmpeg for Flutter.'
   s.homepage         = 'https://github.com/tanersener/flutter-ffmpeg'
   s.homepage         = 'https://github.com/tanersener/flutter-ffmpeg'

+ 2 - 2
packages/flutter_ffmpeg_audio/pubspec.yaml

@@ -1,11 +1,11 @@
 name: flutter_ffmpeg
 name: flutter_ffmpeg
 description: Flutter plugin to run FFmpeg on mobile platforms. Supports iOS and Android.
 description: Flutter plugin to run FFmpeg on mobile platforms. Supports iOS and Android.
-version: 0.2.4
+version: 0.2.5
 author: Taner Sener <tanersener@gmail.com>
 author: Taner Sener <tanersener@gmail.com>
 homepage: https://github.com/tanersener/flutter-ffmpeg
 homepage: https://github.com/tanersener/flutter-ffmpeg
 
 
 environment:
 environment:
-  sdk: ">=2.0.0-dev.68.0 <3.0.0"
+  sdk: ">=2.1.0 <3.0.0"
 
 
 dependencies:
 dependencies:
   flutter:
   flutter:

+ 1 - 1
packages/flutter_ffmpeg_audio_lts/android/build.gradle

@@ -1,5 +1,5 @@
 group 'com.arthenica.flutter.ffmpeg'
 group 'com.arthenica.flutter.ffmpeg'
-version '0.2.4'
+version '0.2.5'
 
 
 buildscript {
 buildscript {
     repositories {
     repositories {

+ 11 - 0
packages/flutter_ffmpeg_audio_lts/android/src/main/java/com/arthenica/flutter/ffmpeg/FlutterFFmpegPlugin.java

@@ -425,6 +425,17 @@ public class FlutterFFmpegPlugin implements MethodCallHandler, EventChannel.Stre
 
 
                 map.put("metadata", metadataMap);
                 map.put("metadata", metadataMap);
             }
             }
+
+            final Set<Map.Entry<String, String>> sidedata = streamInformation.getSidedataEntries();
+            if ((sidedata != null) && (sidedata.size() > 0)) {
+                final HashMap<String, String> sidedataMap = new HashMap<>();
+
+                for (Map.Entry<String, String> entry : sidedata) {
+                    sidedataMap.put(entry.getKey(), entry.getValue());
+                }
+
+                map.put("sidedata", sidedataMap);
+            }
         }
         }
 
 
         return map;
         return map;

+ 5 - 0
packages/flutter_ffmpeg_audio_lts/ios/Classes/FlutterFfmpegPlugin.m

@@ -386,6 +386,11 @@ static NSString *const EVENT_STAT = @"FlutterFFmpegStatisticsCallback";
         if (metadataDictionary != nil && ([metadataDictionary count] > 0)) {
         if (metadataDictionary != nil && ([metadataDictionary count] > 0)) {
             dictionary[@"metadata"] = metadataDictionary;
             dictionary[@"metadata"] = metadataDictionary;
         }
         }
+
+        NSDictionary *sidedataDictionary = [streamInformation getSidedataEntries];
+        if (sidedataDictionary != nil && ([sidedataDictionary count] > 0)) {
+            dictionary[@"sidedata"] = sidedataDictionary;
+        }
     }
     }
 
 
     return dictionary;
     return dictionary;

+ 1 - 1
packages/flutter_ffmpeg_audio_lts/ios/flutter_ffmpeg.podspec

@@ -1,6 +1,6 @@
 Pod::Spec.new do |s|
 Pod::Spec.new do |s|
   s.name             = 'flutter_ffmpeg'
   s.name             = 'flutter_ffmpeg'
-  s.version          = '0.2.4'
+  s.version          = '0.2.5'
   s.summary          = 'FFmpeg plugin for Flutter.'
   s.summary          = 'FFmpeg plugin for Flutter.'
   s.description      = 'FFmpeg plugin based on mobile-ffmpeg for Flutter.'
   s.description      = 'FFmpeg plugin based on mobile-ffmpeg for Flutter.'
   s.homepage         = 'https://github.com/tanersener/flutter-ffmpeg'
   s.homepage         = 'https://github.com/tanersener/flutter-ffmpeg'

+ 2 - 2
packages/flutter_ffmpeg_audio_lts/pubspec.yaml

@@ -1,11 +1,11 @@
 name: flutter_ffmpeg
 name: flutter_ffmpeg
 description: Flutter plugin to run FFmpeg on mobile platforms. Supports iOS and Android.
 description: Flutter plugin to run FFmpeg on mobile platforms. Supports iOS and Android.
-version: 0.2.4
+version: 0.2.5
 author: Taner Sener <tanersener@gmail.com>
 author: Taner Sener <tanersener@gmail.com>
 homepage: https://github.com/tanersener/flutter-ffmpeg
 homepage: https://github.com/tanersener/flutter-ffmpeg
 
 
 environment:
 environment:
-  sdk: ">=2.0.0-dev.68.0 <3.0.0"
+  sdk: ">=2.1.0 <3.0.0"
 
 
 dependencies:
 dependencies:
   flutter:
   flutter:

+ 1 - 1
packages/flutter_ffmpeg_full-gpl/android/build.gradle

@@ -1,5 +1,5 @@
 group 'com.arthenica.flutter.ffmpeg'
 group 'com.arthenica.flutter.ffmpeg'
-version '0.2.4'
+version '0.2.5'
 
 
 buildscript {
 buildscript {
     repositories {
     repositories {

+ 11 - 0
packages/flutter_ffmpeg_full-gpl/android/src/main/java/com/arthenica/flutter/ffmpeg/FlutterFFmpegPlugin.java

@@ -425,6 +425,17 @@ public class FlutterFFmpegPlugin implements MethodCallHandler, EventChannel.Stre
 
 
                 map.put("metadata", metadataMap);
                 map.put("metadata", metadataMap);
             }
             }
+
+            final Set<Map.Entry<String, String>> sidedata = streamInformation.getSidedataEntries();
+            if ((sidedata != null) && (sidedata.size() > 0)) {
+                final HashMap<String, String> sidedataMap = new HashMap<>();
+
+                for (Map.Entry<String, String> entry : sidedata) {
+                    sidedataMap.put(entry.getKey(), entry.getValue());
+                }
+
+                map.put("sidedata", sidedataMap);
+            }
         }
         }
 
 
         return map;
         return map;

+ 5 - 0
packages/flutter_ffmpeg_full-gpl/ios/Classes/FlutterFfmpegPlugin.m

@@ -386,6 +386,11 @@ static NSString *const EVENT_STAT = @"FlutterFFmpegStatisticsCallback";
         if (metadataDictionary != nil && ([metadataDictionary count] > 0)) {
         if (metadataDictionary != nil && ([metadataDictionary count] > 0)) {
             dictionary[@"metadata"] = metadataDictionary;
             dictionary[@"metadata"] = metadataDictionary;
         }
         }
+
+        NSDictionary *sidedataDictionary = [streamInformation getSidedataEntries];
+        if (sidedataDictionary != nil && ([sidedataDictionary count] > 0)) {
+            dictionary[@"sidedata"] = sidedataDictionary;
+        }
     }
     }
 
 
     return dictionary;
     return dictionary;

+ 1 - 1
packages/flutter_ffmpeg_full-gpl/ios/flutter_ffmpeg.podspec

@@ -1,6 +1,6 @@
 Pod::Spec.new do |s|
 Pod::Spec.new do |s|
   s.name             = 'flutter_ffmpeg'
   s.name             = 'flutter_ffmpeg'
-  s.version          = '0.2.4'
+  s.version          = '0.2.5'
   s.summary          = 'FFmpeg plugin for Flutter.'
   s.summary          = 'FFmpeg plugin for Flutter.'
   s.description      = 'FFmpeg plugin based on mobile-ffmpeg for Flutter.'
   s.description      = 'FFmpeg plugin based on mobile-ffmpeg for Flutter.'
   s.homepage         = 'https://github.com/tanersener/flutter-ffmpeg'
   s.homepage         = 'https://github.com/tanersener/flutter-ffmpeg'

+ 2 - 2
packages/flutter_ffmpeg_full-gpl/pubspec.yaml

@@ -1,11 +1,11 @@
 name: flutter_ffmpeg
 name: flutter_ffmpeg
 description: Flutter plugin to run FFmpeg on mobile platforms. Supports iOS and Android.
 description: Flutter plugin to run FFmpeg on mobile platforms. Supports iOS and Android.
-version: 0.2.4
+version: 0.2.5
 author: Taner Sener <tanersener@gmail.com>
 author: Taner Sener <tanersener@gmail.com>
 homepage: https://github.com/tanersener/flutter-ffmpeg
 homepage: https://github.com/tanersener/flutter-ffmpeg
 
 
 environment:
 environment:
-  sdk: ">=2.0.0-dev.68.0 <3.0.0"
+  sdk: ">=2.1.0 <3.0.0"
 
 
 dependencies:
 dependencies:
   flutter:
   flutter:

+ 1 - 1
packages/flutter_ffmpeg_full-gpl_lts/android/build.gradle

@@ -1,5 +1,5 @@
 group 'com.arthenica.flutter.ffmpeg'
 group 'com.arthenica.flutter.ffmpeg'
-version '0.2.4'
+version '0.2.5'
 
 
 buildscript {
 buildscript {
     repositories {
     repositories {

+ 11 - 0
packages/flutter_ffmpeg_full-gpl_lts/android/src/main/java/com/arthenica/flutter/ffmpeg/FlutterFFmpegPlugin.java

@@ -425,6 +425,17 @@ public class FlutterFFmpegPlugin implements MethodCallHandler, EventChannel.Stre
 
 
                 map.put("metadata", metadataMap);
                 map.put("metadata", metadataMap);
             }
             }
+
+            final Set<Map.Entry<String, String>> sidedata = streamInformation.getSidedataEntries();
+            if ((sidedata != null) && (sidedata.size() > 0)) {
+                final HashMap<String, String> sidedataMap = new HashMap<>();
+
+                for (Map.Entry<String, String> entry : sidedata) {
+                    sidedataMap.put(entry.getKey(), entry.getValue());
+                }
+
+                map.put("sidedata", sidedataMap);
+            }
         }
         }
 
 
         return map;
         return map;

+ 5 - 0
packages/flutter_ffmpeg_full-gpl_lts/ios/Classes/FlutterFfmpegPlugin.m

@@ -386,6 +386,11 @@ static NSString *const EVENT_STAT = @"FlutterFFmpegStatisticsCallback";
         if (metadataDictionary != nil && ([metadataDictionary count] > 0)) {
         if (metadataDictionary != nil && ([metadataDictionary count] > 0)) {
             dictionary[@"metadata"] = metadataDictionary;
             dictionary[@"metadata"] = metadataDictionary;
         }
         }
+
+        NSDictionary *sidedataDictionary = [streamInformation getSidedataEntries];
+        if (sidedataDictionary != nil && ([sidedataDictionary count] > 0)) {
+            dictionary[@"sidedata"] = sidedataDictionary;
+        }
     }
     }
 
 
     return dictionary;
     return dictionary;

+ 1 - 1
packages/flutter_ffmpeg_full-gpl_lts/ios/flutter_ffmpeg.podspec

@@ -1,6 +1,6 @@
 Pod::Spec.new do |s|
 Pod::Spec.new do |s|
   s.name             = 'flutter_ffmpeg'
   s.name             = 'flutter_ffmpeg'
-  s.version          = '0.2.4'
+  s.version          = '0.2.5'
   s.summary          = 'FFmpeg plugin for Flutter.'
   s.summary          = 'FFmpeg plugin for Flutter.'
   s.description      = 'FFmpeg plugin based on mobile-ffmpeg for Flutter.'
   s.description      = 'FFmpeg plugin based on mobile-ffmpeg for Flutter.'
   s.homepage         = 'https://github.com/tanersener/flutter-ffmpeg'
   s.homepage         = 'https://github.com/tanersener/flutter-ffmpeg'

+ 2 - 2
packages/flutter_ffmpeg_full-gpl_lts/pubspec.yaml

@@ -1,11 +1,11 @@
 name: flutter_ffmpeg
 name: flutter_ffmpeg
 description: Flutter plugin to run FFmpeg on mobile platforms. Supports iOS and Android.
 description: Flutter plugin to run FFmpeg on mobile platforms. Supports iOS and Android.
-version: 0.2.4
+version: 0.2.5
 author: Taner Sener <tanersener@gmail.com>
 author: Taner Sener <tanersener@gmail.com>
 homepage: https://github.com/tanersener/flutter-ffmpeg
 homepage: https://github.com/tanersener/flutter-ffmpeg
 
 
 environment:
 environment:
-  sdk: ">=2.0.0-dev.68.0 <3.0.0"
+  sdk: ">=2.1.0 <3.0.0"
 
 
 dependencies:
 dependencies:
   flutter:
   flutter:

+ 1 - 1
packages/flutter_ffmpeg_full/android/build.gradle

@@ -1,5 +1,5 @@
 group 'com.arthenica.flutter.ffmpeg'
 group 'com.arthenica.flutter.ffmpeg'
-version '0.2.4'
+version '0.2.5'
 
 
 buildscript {
 buildscript {
     repositories {
     repositories {

+ 11 - 0
packages/flutter_ffmpeg_full/android/src/main/java/com/arthenica/flutter/ffmpeg/FlutterFFmpegPlugin.java

@@ -425,6 +425,17 @@ public class FlutterFFmpegPlugin implements MethodCallHandler, EventChannel.Stre
 
 
                 map.put("metadata", metadataMap);
                 map.put("metadata", metadataMap);
             }
             }
+
+            final Set<Map.Entry<String, String>> sidedata = streamInformation.getSidedataEntries();
+            if ((sidedata != null) && (sidedata.size() > 0)) {
+                final HashMap<String, String> sidedataMap = new HashMap<>();
+
+                for (Map.Entry<String, String> entry : sidedata) {
+                    sidedataMap.put(entry.getKey(), entry.getValue());
+                }
+
+                map.put("sidedata", sidedataMap);
+            }
         }
         }
 
 
         return map;
         return map;

+ 5 - 0
packages/flutter_ffmpeg_full/ios/Classes/FlutterFfmpegPlugin.m

@@ -386,6 +386,11 @@ static NSString *const EVENT_STAT = @"FlutterFFmpegStatisticsCallback";
         if (metadataDictionary != nil && ([metadataDictionary count] > 0)) {
         if (metadataDictionary != nil && ([metadataDictionary count] > 0)) {
             dictionary[@"metadata"] = metadataDictionary;
             dictionary[@"metadata"] = metadataDictionary;
         }
         }
+
+        NSDictionary *sidedataDictionary = [streamInformation getSidedataEntries];
+        if (sidedataDictionary != nil && ([sidedataDictionary count] > 0)) {
+            dictionary[@"sidedata"] = sidedataDictionary;
+        }
     }
     }
 
 
     return dictionary;
     return dictionary;

+ 1 - 1
packages/flutter_ffmpeg_full/ios/flutter_ffmpeg.podspec

@@ -1,6 +1,6 @@
 Pod::Spec.new do |s|
 Pod::Spec.new do |s|
   s.name             = 'flutter_ffmpeg'
   s.name             = 'flutter_ffmpeg'
-  s.version          = '0.2.4'
+  s.version          = '0.2.5'
   s.summary          = 'FFmpeg plugin for Flutter.'
   s.summary          = 'FFmpeg plugin for Flutter.'
   s.description      = 'FFmpeg plugin based on mobile-ffmpeg for Flutter.'
   s.description      = 'FFmpeg plugin based on mobile-ffmpeg for Flutter.'
   s.homepage         = 'https://github.com/tanersener/flutter-ffmpeg'
   s.homepage         = 'https://github.com/tanersener/flutter-ffmpeg'

+ 2 - 2
packages/flutter_ffmpeg_full/pubspec.yaml

@@ -1,11 +1,11 @@
 name: flutter_ffmpeg
 name: flutter_ffmpeg
 description: Flutter plugin to run FFmpeg on mobile platforms. Supports iOS and Android.
 description: Flutter plugin to run FFmpeg on mobile platforms. Supports iOS and Android.
-version: 0.2.4
+version: 0.2.5
 author: Taner Sener <tanersener@gmail.com>
 author: Taner Sener <tanersener@gmail.com>
 homepage: https://github.com/tanersener/flutter-ffmpeg
 homepage: https://github.com/tanersener/flutter-ffmpeg
 
 
 environment:
 environment:
-  sdk: ">=2.0.0-dev.68.0 <3.0.0"
+  sdk: ">=2.1.0 <3.0.0"
 
 
 dependencies:
 dependencies:
   flutter:
   flutter:

+ 1 - 1
packages/flutter_ffmpeg_full_lts/android/build.gradle

@@ -1,5 +1,5 @@
 group 'com.arthenica.flutter.ffmpeg'
 group 'com.arthenica.flutter.ffmpeg'
-version '0.2.4'
+version '0.2.5'
 
 
 buildscript {
 buildscript {
     repositories {
     repositories {

+ 11 - 0
packages/flutter_ffmpeg_full_lts/android/src/main/java/com/arthenica/flutter/ffmpeg/FlutterFFmpegPlugin.java

@@ -425,6 +425,17 @@ public class FlutterFFmpegPlugin implements MethodCallHandler, EventChannel.Stre
 
 
                 map.put("metadata", metadataMap);
                 map.put("metadata", metadataMap);
             }
             }
+
+            final Set<Map.Entry<String, String>> sidedata = streamInformation.getSidedataEntries();
+            if ((sidedata != null) && (sidedata.size() > 0)) {
+                final HashMap<String, String> sidedataMap = new HashMap<>();
+
+                for (Map.Entry<String, String> entry : sidedata) {
+                    sidedataMap.put(entry.getKey(), entry.getValue());
+                }
+
+                map.put("sidedata", sidedataMap);
+            }
         }
         }
 
 
         return map;
         return map;

+ 5 - 0
packages/flutter_ffmpeg_full_lts/ios/Classes/FlutterFfmpegPlugin.m

@@ -386,6 +386,11 @@ static NSString *const EVENT_STAT = @"FlutterFFmpegStatisticsCallback";
         if (metadataDictionary != nil && ([metadataDictionary count] > 0)) {
         if (metadataDictionary != nil && ([metadataDictionary count] > 0)) {
             dictionary[@"metadata"] = metadataDictionary;
             dictionary[@"metadata"] = metadataDictionary;
         }
         }
+
+        NSDictionary *sidedataDictionary = [streamInformation getSidedataEntries];
+        if (sidedataDictionary != nil && ([sidedataDictionary count] > 0)) {
+            dictionary[@"sidedata"] = sidedataDictionary;
+        }
     }
     }
 
 
     return dictionary;
     return dictionary;

+ 1 - 1
packages/flutter_ffmpeg_full_lts/ios/flutter_ffmpeg.podspec

@@ -1,6 +1,6 @@
 Pod::Spec.new do |s|
 Pod::Spec.new do |s|
   s.name             = 'flutter_ffmpeg'
   s.name             = 'flutter_ffmpeg'
-  s.version          = '0.2.4'
+  s.version          = '0.2.5'
   s.summary          = 'FFmpeg plugin for Flutter.'
   s.summary          = 'FFmpeg plugin for Flutter.'
   s.description      = 'FFmpeg plugin based on mobile-ffmpeg for Flutter.'
   s.description      = 'FFmpeg plugin based on mobile-ffmpeg for Flutter.'
   s.homepage         = 'https://github.com/tanersener/flutter-ffmpeg'
   s.homepage         = 'https://github.com/tanersener/flutter-ffmpeg'

+ 2 - 2
packages/flutter_ffmpeg_full_lts/pubspec.yaml

@@ -1,11 +1,11 @@
 name: flutter_ffmpeg
 name: flutter_ffmpeg
 description: Flutter plugin to run FFmpeg on mobile platforms. Supports iOS and Android.
 description: Flutter plugin to run FFmpeg on mobile platforms. Supports iOS and Android.
-version: 0.2.4
+version: 0.2.5
 author: Taner Sener <tanersener@gmail.com>
 author: Taner Sener <tanersener@gmail.com>
 homepage: https://github.com/tanersener/flutter-ffmpeg
 homepage: https://github.com/tanersener/flutter-ffmpeg
 
 
 environment:
 environment:
-  sdk: ">=2.0.0-dev.68.0 <3.0.0"
+  sdk: ">=2.1.0 <3.0.0"
 
 
 dependencies:
 dependencies:
   flutter:
   flutter:

+ 1 - 1
packages/flutter_ffmpeg_https-gpl/android/build.gradle

@@ -1,5 +1,5 @@
 group 'com.arthenica.flutter.ffmpeg'
 group 'com.arthenica.flutter.ffmpeg'
-version '0.2.4'
+version '0.2.5'
 
 
 buildscript {
 buildscript {
     repositories {
     repositories {

+ 11 - 0
packages/flutter_ffmpeg_https-gpl/android/src/main/java/com/arthenica/flutter/ffmpeg/FlutterFFmpegPlugin.java

@@ -425,6 +425,17 @@ public class FlutterFFmpegPlugin implements MethodCallHandler, EventChannel.Stre
 
 
                 map.put("metadata", metadataMap);
                 map.put("metadata", metadataMap);
             }
             }
+
+            final Set<Map.Entry<String, String>> sidedata = streamInformation.getSidedataEntries();
+            if ((sidedata != null) && (sidedata.size() > 0)) {
+                final HashMap<String, String> sidedataMap = new HashMap<>();
+
+                for (Map.Entry<String, String> entry : sidedata) {
+                    sidedataMap.put(entry.getKey(), entry.getValue());
+                }
+
+                map.put("sidedata", sidedataMap);
+            }
         }
         }
 
 
         return map;
         return map;

+ 5 - 0
packages/flutter_ffmpeg_https-gpl/ios/Classes/FlutterFfmpegPlugin.m

@@ -386,6 +386,11 @@ static NSString *const EVENT_STAT = @"FlutterFFmpegStatisticsCallback";
         if (metadataDictionary != nil && ([metadataDictionary count] > 0)) {
         if (metadataDictionary != nil && ([metadataDictionary count] > 0)) {
             dictionary[@"metadata"] = metadataDictionary;
             dictionary[@"metadata"] = metadataDictionary;
         }
         }
+
+        NSDictionary *sidedataDictionary = [streamInformation getSidedataEntries];
+        if (sidedataDictionary != nil && ([sidedataDictionary count] > 0)) {
+            dictionary[@"sidedata"] = sidedataDictionary;
+        }
     }
     }
 
 
     return dictionary;
     return dictionary;

+ 1 - 1
packages/flutter_ffmpeg_https-gpl/ios/flutter_ffmpeg.podspec

@@ -1,6 +1,6 @@
 Pod::Spec.new do |s|
 Pod::Spec.new do |s|
   s.name             = 'flutter_ffmpeg'
   s.name             = 'flutter_ffmpeg'
-  s.version          = '0.2.4'
+  s.version          = '0.2.5'
   s.summary          = 'FFmpeg plugin for Flutter.'
   s.summary          = 'FFmpeg plugin for Flutter.'
   s.description      = 'FFmpeg plugin based on mobile-ffmpeg for Flutter.'
   s.description      = 'FFmpeg plugin based on mobile-ffmpeg for Flutter.'
   s.homepage         = 'https://github.com/tanersener/flutter-ffmpeg'
   s.homepage         = 'https://github.com/tanersener/flutter-ffmpeg'

+ 2 - 2
packages/flutter_ffmpeg_https-gpl/pubspec.yaml

@@ -1,11 +1,11 @@
 name: flutter_ffmpeg
 name: flutter_ffmpeg
 description: Flutter plugin to run FFmpeg on mobile platforms. Supports iOS and Android.
 description: Flutter plugin to run FFmpeg on mobile platforms. Supports iOS and Android.
-version: 0.2.4
+version: 0.2.5
 author: Taner Sener <tanersener@gmail.com>
 author: Taner Sener <tanersener@gmail.com>
 homepage: https://github.com/tanersener/flutter-ffmpeg
 homepage: https://github.com/tanersener/flutter-ffmpeg
 
 
 environment:
 environment:
-  sdk: ">=2.0.0-dev.68.0 <3.0.0"
+  sdk: ">=2.1.0 <3.0.0"
 
 
 dependencies:
 dependencies:
   flutter:
   flutter:

+ 1 - 1
packages/flutter_ffmpeg_https-gpl_lts/android/build.gradle

@@ -1,5 +1,5 @@
 group 'com.arthenica.flutter.ffmpeg'
 group 'com.arthenica.flutter.ffmpeg'
-version '0.2.4'
+version '0.2.5'
 
 
 buildscript {
 buildscript {
     repositories {
     repositories {

+ 11 - 0
packages/flutter_ffmpeg_https-gpl_lts/android/src/main/java/com/arthenica/flutter/ffmpeg/FlutterFFmpegPlugin.java

@@ -425,6 +425,17 @@ public class FlutterFFmpegPlugin implements MethodCallHandler, EventChannel.Stre
 
 
                 map.put("metadata", metadataMap);
                 map.put("metadata", metadataMap);
             }
             }
+
+            final Set<Map.Entry<String, String>> sidedata = streamInformation.getSidedataEntries();
+            if ((sidedata != null) && (sidedata.size() > 0)) {
+                final HashMap<String, String> sidedataMap = new HashMap<>();
+
+                for (Map.Entry<String, String> entry : sidedata) {
+                    sidedataMap.put(entry.getKey(), entry.getValue());
+                }
+
+                map.put("sidedata", sidedataMap);
+            }
         }
         }
 
 
         return map;
         return map;

+ 5 - 0
packages/flutter_ffmpeg_https-gpl_lts/ios/Classes/FlutterFfmpegPlugin.m

@@ -386,6 +386,11 @@ static NSString *const EVENT_STAT = @"FlutterFFmpegStatisticsCallback";
         if (metadataDictionary != nil && ([metadataDictionary count] > 0)) {
         if (metadataDictionary != nil && ([metadataDictionary count] > 0)) {
             dictionary[@"metadata"] = metadataDictionary;
             dictionary[@"metadata"] = metadataDictionary;
         }
         }
+
+        NSDictionary *sidedataDictionary = [streamInformation getSidedataEntries];
+        if (sidedataDictionary != nil && ([sidedataDictionary count] > 0)) {
+            dictionary[@"sidedata"] = sidedataDictionary;
+        }
     }
     }
 
 
     return dictionary;
     return dictionary;

+ 1 - 1
packages/flutter_ffmpeg_https-gpl_lts/ios/flutter_ffmpeg.podspec

@@ -1,6 +1,6 @@
 Pod::Spec.new do |s|
 Pod::Spec.new do |s|
   s.name             = 'flutter_ffmpeg'
   s.name             = 'flutter_ffmpeg'
-  s.version          = '0.2.4'
+  s.version          = '0.2.5'
   s.summary          = 'FFmpeg plugin for Flutter.'
   s.summary          = 'FFmpeg plugin for Flutter.'
   s.description      = 'FFmpeg plugin based on mobile-ffmpeg for Flutter.'
   s.description      = 'FFmpeg plugin based on mobile-ffmpeg for Flutter.'
   s.homepage         = 'https://github.com/tanersener/flutter-ffmpeg'
   s.homepage         = 'https://github.com/tanersener/flutter-ffmpeg'

+ 2 - 2
packages/flutter_ffmpeg_https-gpl_lts/pubspec.yaml

@@ -1,11 +1,11 @@
 name: flutter_ffmpeg
 name: flutter_ffmpeg
 description: Flutter plugin to run FFmpeg on mobile platforms. Supports iOS and Android.
 description: Flutter plugin to run FFmpeg on mobile platforms. Supports iOS and Android.
-version: 0.2.4
+version: 0.2.5
 author: Taner Sener <tanersener@gmail.com>
 author: Taner Sener <tanersener@gmail.com>
 homepage: https://github.com/tanersener/flutter-ffmpeg
 homepage: https://github.com/tanersener/flutter-ffmpeg
 
 
 environment:
 environment:
-  sdk: ">=2.0.0-dev.68.0 <3.0.0"
+  sdk: ">=2.1.0 <3.0.0"
 
 
 dependencies:
 dependencies:
   flutter:
   flutter:

+ 1 - 1
packages/flutter_ffmpeg_https/android/build.gradle

@@ -1,5 +1,5 @@
 group 'com.arthenica.flutter.ffmpeg'
 group 'com.arthenica.flutter.ffmpeg'
-version '0.2.4'
+version '0.2.5'
 
 
 buildscript {
 buildscript {
     repositories {
     repositories {

+ 11 - 0
packages/flutter_ffmpeg_https/android/src/main/java/com/arthenica/flutter/ffmpeg/FlutterFFmpegPlugin.java

@@ -425,6 +425,17 @@ public class FlutterFFmpegPlugin implements MethodCallHandler, EventChannel.Stre
 
 
                 map.put("metadata", metadataMap);
                 map.put("metadata", metadataMap);
             }
             }
+
+            final Set<Map.Entry<String, String>> sidedata = streamInformation.getSidedataEntries();
+            if ((sidedata != null) && (sidedata.size() > 0)) {
+                final HashMap<String, String> sidedataMap = new HashMap<>();
+
+                for (Map.Entry<String, String> entry : sidedata) {
+                    sidedataMap.put(entry.getKey(), entry.getValue());
+                }
+
+                map.put("sidedata", sidedataMap);
+            }
         }
         }
 
 
         return map;
         return map;

+ 5 - 0
packages/flutter_ffmpeg_https/ios/Classes/FlutterFfmpegPlugin.m

@@ -386,6 +386,11 @@ static NSString *const EVENT_STAT = @"FlutterFFmpegStatisticsCallback";
         if (metadataDictionary != nil && ([metadataDictionary count] > 0)) {
         if (metadataDictionary != nil && ([metadataDictionary count] > 0)) {
             dictionary[@"metadata"] = metadataDictionary;
             dictionary[@"metadata"] = metadataDictionary;
         }
         }
+
+        NSDictionary *sidedataDictionary = [streamInformation getSidedataEntries];
+        if (sidedataDictionary != nil && ([sidedataDictionary count] > 0)) {
+            dictionary[@"sidedata"] = sidedataDictionary;
+        }
     }
     }
 
 
     return dictionary;
     return dictionary;

+ 1 - 1
packages/flutter_ffmpeg_https/ios/flutter_ffmpeg.podspec

@@ -1,6 +1,6 @@
 Pod::Spec.new do |s|
 Pod::Spec.new do |s|
   s.name             = 'flutter_ffmpeg'
   s.name             = 'flutter_ffmpeg'
-  s.version          = '0.2.4'
+  s.version          = '0.2.5'
   s.summary          = 'FFmpeg plugin for Flutter.'
   s.summary          = 'FFmpeg plugin for Flutter.'
   s.description      = 'FFmpeg plugin based on mobile-ffmpeg for Flutter.'
   s.description      = 'FFmpeg plugin based on mobile-ffmpeg for Flutter.'
   s.homepage         = 'https://github.com/tanersener/flutter-ffmpeg'
   s.homepage         = 'https://github.com/tanersener/flutter-ffmpeg'

+ 2 - 2
packages/flutter_ffmpeg_https/pubspec.yaml

@@ -1,11 +1,11 @@
 name: flutter_ffmpeg
 name: flutter_ffmpeg
 description: Flutter plugin to run FFmpeg on mobile platforms. Supports iOS and Android.
 description: Flutter plugin to run FFmpeg on mobile platforms. Supports iOS and Android.
-version: 0.2.4
+version: 0.2.5
 author: Taner Sener <tanersener@gmail.com>
 author: Taner Sener <tanersener@gmail.com>
 homepage: https://github.com/tanersener/flutter-ffmpeg
 homepage: https://github.com/tanersener/flutter-ffmpeg
 
 
 environment:
 environment:
-  sdk: ">=2.0.0-dev.68.0 <3.0.0"
+  sdk: ">=2.1.0 <3.0.0"
 
 
 dependencies:
 dependencies:
   flutter:
   flutter:

+ 1 - 1
packages/flutter_ffmpeg_https_lts/android/build.gradle

@@ -1,5 +1,5 @@
 group 'com.arthenica.flutter.ffmpeg'
 group 'com.arthenica.flutter.ffmpeg'
-version '0.2.4'
+version '0.2.5'
 
 
 buildscript {
 buildscript {
     repositories {
     repositories {

+ 11 - 0
packages/flutter_ffmpeg_https_lts/android/src/main/java/com/arthenica/flutter/ffmpeg/FlutterFFmpegPlugin.java

@@ -425,6 +425,17 @@ public class FlutterFFmpegPlugin implements MethodCallHandler, EventChannel.Stre
 
 
                 map.put("metadata", metadataMap);
                 map.put("metadata", metadataMap);
             }
             }
+
+            final Set<Map.Entry<String, String>> sidedata = streamInformation.getSidedataEntries();
+            if ((sidedata != null) && (sidedata.size() > 0)) {
+                final HashMap<String, String> sidedataMap = new HashMap<>();
+
+                for (Map.Entry<String, String> entry : sidedata) {
+                    sidedataMap.put(entry.getKey(), entry.getValue());
+                }
+
+                map.put("sidedata", sidedataMap);
+            }
         }
         }
 
 
         return map;
         return map;

+ 5 - 0
packages/flutter_ffmpeg_https_lts/ios/Classes/FlutterFfmpegPlugin.m

@@ -386,6 +386,11 @@ static NSString *const EVENT_STAT = @"FlutterFFmpegStatisticsCallback";
         if (metadataDictionary != nil && ([metadataDictionary count] > 0)) {
         if (metadataDictionary != nil && ([metadataDictionary count] > 0)) {
             dictionary[@"metadata"] = metadataDictionary;
             dictionary[@"metadata"] = metadataDictionary;
         }
         }
+
+        NSDictionary *sidedataDictionary = [streamInformation getSidedataEntries];
+        if (sidedataDictionary != nil && ([sidedataDictionary count] > 0)) {
+            dictionary[@"sidedata"] = sidedataDictionary;
+        }
     }
     }
 
 
     return dictionary;
     return dictionary;

+ 1 - 1
packages/flutter_ffmpeg_https_lts/ios/flutter_ffmpeg.podspec

@@ -1,6 +1,6 @@
 Pod::Spec.new do |s|
 Pod::Spec.new do |s|
   s.name             = 'flutter_ffmpeg'
   s.name             = 'flutter_ffmpeg'
-  s.version          = '0.2.4'
+  s.version          = '0.2.5'
   s.summary          = 'FFmpeg plugin for Flutter.'
   s.summary          = 'FFmpeg plugin for Flutter.'
   s.description      = 'FFmpeg plugin based on mobile-ffmpeg for Flutter.'
   s.description      = 'FFmpeg plugin based on mobile-ffmpeg for Flutter.'
   s.homepage         = 'https://github.com/tanersener/flutter-ffmpeg'
   s.homepage         = 'https://github.com/tanersener/flutter-ffmpeg'

+ 2 - 2
packages/flutter_ffmpeg_https_lts/pubspec.yaml

@@ -1,11 +1,11 @@
 name: flutter_ffmpeg
 name: flutter_ffmpeg
 description: Flutter plugin to run FFmpeg on mobile platforms. Supports iOS and Android.
 description: Flutter plugin to run FFmpeg on mobile platforms. Supports iOS and Android.
-version: 0.2.4
+version: 0.2.5
 author: Taner Sener <tanersener@gmail.com>
 author: Taner Sener <tanersener@gmail.com>
 homepage: https://github.com/tanersener/flutter-ffmpeg
 homepage: https://github.com/tanersener/flutter-ffmpeg
 
 
 environment:
 environment:
-  sdk: ">=2.0.0-dev.68.0 <3.0.0"
+  sdk: ">=2.1.0 <3.0.0"
 
 
 dependencies:
 dependencies:
   flutter:
   flutter:

+ 1 - 1
packages/flutter_ffmpeg_min-gpl/android/build.gradle

@@ -1,5 +1,5 @@
 group 'com.arthenica.flutter.ffmpeg'
 group 'com.arthenica.flutter.ffmpeg'
-version '0.2.4'
+version '0.2.5'
 
 
 buildscript {
 buildscript {
     repositories {
     repositories {

+ 11 - 0
packages/flutter_ffmpeg_min-gpl/android/src/main/java/com/arthenica/flutter/ffmpeg/FlutterFFmpegPlugin.java

@@ -425,6 +425,17 @@ public class FlutterFFmpegPlugin implements MethodCallHandler, EventChannel.Stre
 
 
                 map.put("metadata", metadataMap);
                 map.put("metadata", metadataMap);
             }
             }
+
+            final Set<Map.Entry<String, String>> sidedata = streamInformation.getSidedataEntries();
+            if ((sidedata != null) && (sidedata.size() > 0)) {
+                final HashMap<String, String> sidedataMap = new HashMap<>();
+
+                for (Map.Entry<String, String> entry : sidedata) {
+                    sidedataMap.put(entry.getKey(), entry.getValue());
+                }
+
+                map.put("sidedata", sidedataMap);
+            }
         }
         }
 
 
         return map;
         return map;

+ 5 - 0
packages/flutter_ffmpeg_min-gpl/ios/Classes/FlutterFfmpegPlugin.m

@@ -386,6 +386,11 @@ static NSString *const EVENT_STAT = @"FlutterFFmpegStatisticsCallback";
         if (metadataDictionary != nil && ([metadataDictionary count] > 0)) {
         if (metadataDictionary != nil && ([metadataDictionary count] > 0)) {
             dictionary[@"metadata"] = metadataDictionary;
             dictionary[@"metadata"] = metadataDictionary;
         }
         }
+
+        NSDictionary *sidedataDictionary = [streamInformation getSidedataEntries];
+        if (sidedataDictionary != nil && ([sidedataDictionary count] > 0)) {
+            dictionary[@"sidedata"] = sidedataDictionary;
+        }
     }
     }
 
 
     return dictionary;
     return dictionary;

+ 1 - 1
packages/flutter_ffmpeg_min-gpl/ios/flutter_ffmpeg.podspec

@@ -1,6 +1,6 @@
 Pod::Spec.new do |s|
 Pod::Spec.new do |s|
   s.name             = 'flutter_ffmpeg'
   s.name             = 'flutter_ffmpeg'
-  s.version          = '0.2.4'
+  s.version          = '0.2.5'
   s.summary          = 'FFmpeg plugin for Flutter.'
   s.summary          = 'FFmpeg plugin for Flutter.'
   s.description      = 'FFmpeg plugin based on mobile-ffmpeg for Flutter.'
   s.description      = 'FFmpeg plugin based on mobile-ffmpeg for Flutter.'
   s.homepage         = 'https://github.com/tanersener/flutter-ffmpeg'
   s.homepage         = 'https://github.com/tanersener/flutter-ffmpeg'

+ 2 - 2
packages/flutter_ffmpeg_min-gpl/pubspec.yaml

@@ -1,11 +1,11 @@
 name: flutter_ffmpeg
 name: flutter_ffmpeg
 description: Flutter plugin to run FFmpeg on mobile platforms. Supports iOS and Android.
 description: Flutter plugin to run FFmpeg on mobile platforms. Supports iOS and Android.
-version: 0.2.4
+version: 0.2.5
 author: Taner Sener <tanersener@gmail.com>
 author: Taner Sener <tanersener@gmail.com>
 homepage: https://github.com/tanersener/flutter-ffmpeg
 homepage: https://github.com/tanersener/flutter-ffmpeg
 
 
 environment:
 environment:
-  sdk: ">=2.0.0-dev.68.0 <3.0.0"
+  sdk: ">=2.1.0 <3.0.0"
 
 
 dependencies:
 dependencies:
   flutter:
   flutter:

+ 1 - 1
packages/flutter_ffmpeg_min-gpl_lts/android/build.gradle

@@ -1,5 +1,5 @@
 group 'com.arthenica.flutter.ffmpeg'
 group 'com.arthenica.flutter.ffmpeg'
-version '0.2.4'
+version '0.2.5'
 
 
 buildscript {
 buildscript {
     repositories {
     repositories {

+ 11 - 0
packages/flutter_ffmpeg_min-gpl_lts/android/src/main/java/com/arthenica/flutter/ffmpeg/FlutterFFmpegPlugin.java

@@ -425,6 +425,17 @@ public class FlutterFFmpegPlugin implements MethodCallHandler, EventChannel.Stre
 
 
                 map.put("metadata", metadataMap);
                 map.put("metadata", metadataMap);
             }
             }
+
+            final Set<Map.Entry<String, String>> sidedata = streamInformation.getSidedataEntries();
+            if ((sidedata != null) && (sidedata.size() > 0)) {
+                final HashMap<String, String> sidedataMap = new HashMap<>();
+
+                for (Map.Entry<String, String> entry : sidedata) {
+                    sidedataMap.put(entry.getKey(), entry.getValue());
+                }
+
+                map.put("sidedata", sidedataMap);
+            }
         }
         }
 
 
         return map;
         return map;

+ 5 - 0
packages/flutter_ffmpeg_min-gpl_lts/ios/Classes/FlutterFfmpegPlugin.m

@@ -386,6 +386,11 @@ static NSString *const EVENT_STAT = @"FlutterFFmpegStatisticsCallback";
         if (metadataDictionary != nil && ([metadataDictionary count] > 0)) {
         if (metadataDictionary != nil && ([metadataDictionary count] > 0)) {
             dictionary[@"metadata"] = metadataDictionary;
             dictionary[@"metadata"] = metadataDictionary;
         }
         }
+
+        NSDictionary *sidedataDictionary = [streamInformation getSidedataEntries];
+        if (sidedataDictionary != nil && ([sidedataDictionary count] > 0)) {
+            dictionary[@"sidedata"] = sidedataDictionary;
+        }
     }
     }
 
 
     return dictionary;
     return dictionary;

+ 1 - 1
packages/flutter_ffmpeg_min-gpl_lts/ios/flutter_ffmpeg.podspec

@@ -1,6 +1,6 @@
 Pod::Spec.new do |s|
 Pod::Spec.new do |s|
   s.name             = 'flutter_ffmpeg'
   s.name             = 'flutter_ffmpeg'
-  s.version          = '0.2.4'
+  s.version          = '0.2.5'
   s.summary          = 'FFmpeg plugin for Flutter.'
   s.summary          = 'FFmpeg plugin for Flutter.'
   s.description      = 'FFmpeg plugin based on mobile-ffmpeg for Flutter.'
   s.description      = 'FFmpeg plugin based on mobile-ffmpeg for Flutter.'
   s.homepage         = 'https://github.com/tanersener/flutter-ffmpeg'
   s.homepage         = 'https://github.com/tanersener/flutter-ffmpeg'

+ 2 - 2
packages/flutter_ffmpeg_min-gpl_lts/pubspec.yaml

@@ -1,11 +1,11 @@
 name: flutter_ffmpeg
 name: flutter_ffmpeg
 description: Flutter plugin to run FFmpeg on mobile platforms. Supports iOS and Android.
 description: Flutter plugin to run FFmpeg on mobile platforms. Supports iOS and Android.
-version: 0.2.4
+version: 0.2.5
 author: Taner Sener <tanersener@gmail.com>
 author: Taner Sener <tanersener@gmail.com>
 homepage: https://github.com/tanersener/flutter-ffmpeg
 homepage: https://github.com/tanersener/flutter-ffmpeg
 
 
 environment:
 environment:
-  sdk: ">=2.0.0-dev.68.0 <3.0.0"
+  sdk: ">=2.1.0 <3.0.0"
 
 
 dependencies:
 dependencies:
   flutter:
   flutter:

+ 1 - 1
packages/flutter_ffmpeg_min/android/build.gradle

@@ -1,5 +1,5 @@
 group 'com.arthenica.flutter.ffmpeg'
 group 'com.arthenica.flutter.ffmpeg'
-version '0.2.4'
+version '0.2.5'
 
 
 buildscript {
 buildscript {
     repositories {
     repositories {

+ 11 - 0
packages/flutter_ffmpeg_min/android/src/main/java/com/arthenica/flutter/ffmpeg/FlutterFFmpegPlugin.java

@@ -425,6 +425,17 @@ public class FlutterFFmpegPlugin implements MethodCallHandler, EventChannel.Stre
 
 
                 map.put("metadata", metadataMap);
                 map.put("metadata", metadataMap);
             }
             }
+
+            final Set<Map.Entry<String, String>> sidedata = streamInformation.getSidedataEntries();
+            if ((sidedata != null) && (sidedata.size() > 0)) {
+                final HashMap<String, String> sidedataMap = new HashMap<>();
+
+                for (Map.Entry<String, String> entry : sidedata) {
+                    sidedataMap.put(entry.getKey(), entry.getValue());
+                }
+
+                map.put("sidedata", sidedataMap);
+            }
         }
         }
 
 
         return map;
         return map;

+ 5 - 0
packages/flutter_ffmpeg_min/ios/Classes/FlutterFfmpegPlugin.m

@@ -386,6 +386,11 @@ static NSString *const EVENT_STAT = @"FlutterFFmpegStatisticsCallback";
         if (metadataDictionary != nil && ([metadataDictionary count] > 0)) {
         if (metadataDictionary != nil && ([metadataDictionary count] > 0)) {
             dictionary[@"metadata"] = metadataDictionary;
             dictionary[@"metadata"] = metadataDictionary;
         }
         }
+
+        NSDictionary *sidedataDictionary = [streamInformation getSidedataEntries];
+        if (sidedataDictionary != nil && ([sidedataDictionary count] > 0)) {
+            dictionary[@"sidedata"] = sidedataDictionary;
+        }
     }
     }
 
 
     return dictionary;
     return dictionary;

+ 1 - 1
packages/flutter_ffmpeg_min/ios/flutter_ffmpeg.podspec

@@ -1,6 +1,6 @@
 Pod::Spec.new do |s|
 Pod::Spec.new do |s|
   s.name             = 'flutter_ffmpeg'
   s.name             = 'flutter_ffmpeg'
-  s.version          = '0.2.4'
+  s.version          = '0.2.5'
   s.summary          = 'FFmpeg plugin for Flutter.'
   s.summary          = 'FFmpeg plugin for Flutter.'
   s.description      = 'FFmpeg plugin based on mobile-ffmpeg for Flutter.'
   s.description      = 'FFmpeg plugin based on mobile-ffmpeg for Flutter.'
   s.homepage         = 'https://github.com/tanersener/flutter-ffmpeg'
   s.homepage         = 'https://github.com/tanersener/flutter-ffmpeg'

+ 2 - 2
packages/flutter_ffmpeg_min/pubspec.yaml

@@ -1,11 +1,11 @@
 name: flutter_ffmpeg
 name: flutter_ffmpeg
 description: Flutter plugin to run FFmpeg on mobile platforms. Supports iOS and Android.
 description: Flutter plugin to run FFmpeg on mobile platforms. Supports iOS and Android.
-version: 0.2.4
+version: 0.2.5
 author: Taner Sener <tanersener@gmail.com>
 author: Taner Sener <tanersener@gmail.com>
 homepage: https://github.com/tanersener/flutter-ffmpeg
 homepage: https://github.com/tanersener/flutter-ffmpeg
 
 
 environment:
 environment:
-  sdk: ">=2.0.0-dev.68.0 <3.0.0"
+  sdk: ">=2.1.0 <3.0.0"
 
 
 dependencies:
 dependencies:
   flutter:
   flutter:

+ 1 - 1
packages/flutter_ffmpeg_min_lts/android/build.gradle

@@ -1,5 +1,5 @@
 group 'com.arthenica.flutter.ffmpeg'
 group 'com.arthenica.flutter.ffmpeg'
-version '0.2.4'
+version '0.2.5'
 
 
 buildscript {
 buildscript {
     repositories {
     repositories {

+ 11 - 0
packages/flutter_ffmpeg_min_lts/android/src/main/java/com/arthenica/flutter/ffmpeg/FlutterFFmpegPlugin.java

@@ -425,6 +425,17 @@ public class FlutterFFmpegPlugin implements MethodCallHandler, EventChannel.Stre
 
 
                 map.put("metadata", metadataMap);
                 map.put("metadata", metadataMap);
             }
             }
+
+            final Set<Map.Entry<String, String>> sidedata = streamInformation.getSidedataEntries();
+            if ((sidedata != null) && (sidedata.size() > 0)) {
+                final HashMap<String, String> sidedataMap = new HashMap<>();
+
+                for (Map.Entry<String, String> entry : sidedata) {
+                    sidedataMap.put(entry.getKey(), entry.getValue());
+                }
+
+                map.put("sidedata", sidedataMap);
+            }
         }
         }
 
 
         return map;
         return map;

+ 5 - 0
packages/flutter_ffmpeg_min_lts/ios/Classes/FlutterFfmpegPlugin.m

@@ -386,6 +386,11 @@ static NSString *const EVENT_STAT = @"FlutterFFmpegStatisticsCallback";
         if (metadataDictionary != nil && ([metadataDictionary count] > 0)) {
         if (metadataDictionary != nil && ([metadataDictionary count] > 0)) {
             dictionary[@"metadata"] = metadataDictionary;
             dictionary[@"metadata"] = metadataDictionary;
         }
         }
+
+        NSDictionary *sidedataDictionary = [streamInformation getSidedataEntries];
+        if (sidedataDictionary != nil && ([sidedataDictionary count] > 0)) {
+            dictionary[@"sidedata"] = sidedataDictionary;
+        }
     }
     }
 
 
     return dictionary;
     return dictionary;

+ 1 - 1
packages/flutter_ffmpeg_min_lts/ios/flutter_ffmpeg.podspec

@@ -1,6 +1,6 @@
 Pod::Spec.new do |s|
 Pod::Spec.new do |s|
   s.name             = 'flutter_ffmpeg'
   s.name             = 'flutter_ffmpeg'
-  s.version          = '0.2.4'
+  s.version          = '0.2.5'
   s.summary          = 'FFmpeg plugin for Flutter.'
   s.summary          = 'FFmpeg plugin for Flutter.'
   s.description      = 'FFmpeg plugin based on mobile-ffmpeg for Flutter.'
   s.description      = 'FFmpeg plugin based on mobile-ffmpeg for Flutter.'
   s.homepage         = 'https://github.com/tanersener/flutter-ffmpeg'
   s.homepage         = 'https://github.com/tanersener/flutter-ffmpeg'

+ 2 - 2
packages/flutter_ffmpeg_min_lts/pubspec.yaml

@@ -1,11 +1,11 @@
 name: flutter_ffmpeg
 name: flutter_ffmpeg
 description: Flutter plugin to run FFmpeg on mobile platforms. Supports iOS and Android.
 description: Flutter plugin to run FFmpeg on mobile platforms. Supports iOS and Android.
-version: 0.2.4
+version: 0.2.5
 author: Taner Sener <tanersener@gmail.com>
 author: Taner Sener <tanersener@gmail.com>
 homepage: https://github.com/tanersener/flutter-ffmpeg
 homepage: https://github.com/tanersener/flutter-ffmpeg
 
 
 environment:
 environment:
-  sdk: ">=2.0.0-dev.68.0 <3.0.0"
+  sdk: ">=2.1.0 <3.0.0"
 
 
 dependencies:
 dependencies:
   flutter:
   flutter:

+ 1 - 1
packages/flutter_ffmpeg_video/android/build.gradle

@@ -1,5 +1,5 @@
 group 'com.arthenica.flutter.ffmpeg'
 group 'com.arthenica.flutter.ffmpeg'
-version '0.2.4'
+version '0.2.5'
 
 
 buildscript {
 buildscript {
     repositories {
     repositories {

+ 11 - 0
packages/flutter_ffmpeg_video/android/src/main/java/com/arthenica/flutter/ffmpeg/FlutterFFmpegPlugin.java

@@ -425,6 +425,17 @@ public class FlutterFFmpegPlugin implements MethodCallHandler, EventChannel.Stre
 
 
                 map.put("metadata", metadataMap);
                 map.put("metadata", metadataMap);
             }
             }
+
+            final Set<Map.Entry<String, String>> sidedata = streamInformation.getSidedataEntries();
+            if ((sidedata != null) && (sidedata.size() > 0)) {
+                final HashMap<String, String> sidedataMap = new HashMap<>();
+
+                for (Map.Entry<String, String> entry : sidedata) {
+                    sidedataMap.put(entry.getKey(), entry.getValue());
+                }
+
+                map.put("sidedata", sidedataMap);
+            }
         }
         }
 
 
         return map;
         return map;

+ 5 - 0
packages/flutter_ffmpeg_video/ios/Classes/FlutterFfmpegPlugin.m

@@ -386,6 +386,11 @@ static NSString *const EVENT_STAT = @"FlutterFFmpegStatisticsCallback";
         if (metadataDictionary != nil && ([metadataDictionary count] > 0)) {
         if (metadataDictionary != nil && ([metadataDictionary count] > 0)) {
             dictionary[@"metadata"] = metadataDictionary;
             dictionary[@"metadata"] = metadataDictionary;
         }
         }
+
+        NSDictionary *sidedataDictionary = [streamInformation getSidedataEntries];
+        if (sidedataDictionary != nil && ([sidedataDictionary count] > 0)) {
+            dictionary[@"sidedata"] = sidedataDictionary;
+        }
     }
     }
 
 
     return dictionary;
     return dictionary;

+ 1 - 1
packages/flutter_ffmpeg_video/ios/flutter_ffmpeg.podspec

@@ -1,6 +1,6 @@
 Pod::Spec.new do |s|
 Pod::Spec.new do |s|
   s.name             = 'flutter_ffmpeg'
   s.name             = 'flutter_ffmpeg'
-  s.version          = '0.2.4'
+  s.version          = '0.2.5'
   s.summary          = 'FFmpeg plugin for Flutter.'
   s.summary          = 'FFmpeg plugin for Flutter.'
   s.description      = 'FFmpeg plugin based on mobile-ffmpeg for Flutter.'
   s.description      = 'FFmpeg plugin based on mobile-ffmpeg for Flutter.'
   s.homepage         = 'https://github.com/tanersener/flutter-ffmpeg'
   s.homepage         = 'https://github.com/tanersener/flutter-ffmpeg'

+ 2 - 2
packages/flutter_ffmpeg_video/pubspec.yaml

@@ -1,11 +1,11 @@
 name: flutter_ffmpeg
 name: flutter_ffmpeg
 description: Flutter plugin to run FFmpeg on mobile platforms. Supports iOS and Android.
 description: Flutter plugin to run FFmpeg on mobile platforms. Supports iOS and Android.
-version: 0.2.4
+version: 0.2.5
 author: Taner Sener <tanersener@gmail.com>
 author: Taner Sener <tanersener@gmail.com>
 homepage: https://github.com/tanersener/flutter-ffmpeg
 homepage: https://github.com/tanersener/flutter-ffmpeg
 
 
 environment:
 environment:
-  sdk: ">=2.0.0-dev.68.0 <3.0.0"
+  sdk: ">=2.1.0 <3.0.0"
 
 
 dependencies:
 dependencies:
   flutter:
   flutter:

+ 1 - 1
packages/flutter_ffmpeg_video_lts/android/build.gradle

@@ -1,5 +1,5 @@
 group 'com.arthenica.flutter.ffmpeg'
 group 'com.arthenica.flutter.ffmpeg'
-version '0.2.4'
+version '0.2.5'
 
 
 buildscript {
 buildscript {
     repositories {
     repositories {

+ 11 - 0
packages/flutter_ffmpeg_video_lts/android/src/main/java/com/arthenica/flutter/ffmpeg/FlutterFFmpegPlugin.java

@@ -425,6 +425,17 @@ public class FlutterFFmpegPlugin implements MethodCallHandler, EventChannel.Stre
 
 
                 map.put("metadata", metadataMap);
                 map.put("metadata", metadataMap);
             }
             }
+
+            final Set<Map.Entry<String, String>> sidedata = streamInformation.getSidedataEntries();
+            if ((sidedata != null) && (sidedata.size() > 0)) {
+                final HashMap<String, String> sidedataMap = new HashMap<>();
+
+                for (Map.Entry<String, String> entry : sidedata) {
+                    sidedataMap.put(entry.getKey(), entry.getValue());
+                }
+
+                map.put("sidedata", sidedataMap);
+            }
         }
         }
 
 
         return map;
         return map;

+ 5 - 0
packages/flutter_ffmpeg_video_lts/ios/Classes/FlutterFfmpegPlugin.m

@@ -386,6 +386,11 @@ static NSString *const EVENT_STAT = @"FlutterFFmpegStatisticsCallback";
         if (metadataDictionary != nil && ([metadataDictionary count] > 0)) {
         if (metadataDictionary != nil && ([metadataDictionary count] > 0)) {
             dictionary[@"metadata"] = metadataDictionary;
             dictionary[@"metadata"] = metadataDictionary;
         }
         }
+
+        NSDictionary *sidedataDictionary = [streamInformation getSidedataEntries];
+        if (sidedataDictionary != nil && ([sidedataDictionary count] > 0)) {
+            dictionary[@"sidedata"] = sidedataDictionary;
+        }
     }
     }
 
 
     return dictionary;
     return dictionary;

+ 1 - 1
packages/flutter_ffmpeg_video_lts/ios/flutter_ffmpeg.podspec

@@ -1,6 +1,6 @@
 Pod::Spec.new do |s|
 Pod::Spec.new do |s|
   s.name             = 'flutter_ffmpeg'
   s.name             = 'flutter_ffmpeg'
-  s.version          = '0.2.4'
+  s.version          = '0.2.5'
   s.summary          = 'FFmpeg plugin for Flutter.'
   s.summary          = 'FFmpeg plugin for Flutter.'
   s.description      = 'FFmpeg plugin based on mobile-ffmpeg for Flutter.'
   s.description      = 'FFmpeg plugin based on mobile-ffmpeg for Flutter.'
   s.homepage         = 'https://github.com/tanersener/flutter-ffmpeg'
   s.homepage         = 'https://github.com/tanersener/flutter-ffmpeg'

+ 2 - 2
packages/flutter_ffmpeg_video_lts/pubspec.yaml

@@ -1,11 +1,11 @@
 name: flutter_ffmpeg
 name: flutter_ffmpeg
 description: Flutter plugin to run FFmpeg on mobile platforms. Supports iOS and Android.
 description: Flutter plugin to run FFmpeg on mobile platforms. Supports iOS and Android.
-version: 0.2.4
+version: 0.2.5
 author: Taner Sener <tanersener@gmail.com>
 author: Taner Sener <tanersener@gmail.com>
 homepage: https://github.com/tanersener/flutter-ffmpeg
 homepage: https://github.com/tanersener/flutter-ffmpeg
 
 
 environment:
 environment:
-  sdk: ">=2.0.0-dev.68.0 <3.0.0"
+  sdk: ">=2.1.0 <3.0.0"
 
 
 dependencies:
 dependencies:
   flutter:
   flutter:

+ 1 - 1
pubspec.yaml

@@ -1,6 +1,6 @@
 name: flutter_ffmpeg
 name: flutter_ffmpeg
 description: Flutter plugin to run FFmpeg on mobile platforms. Supports iOS and Android.
 description: Flutter plugin to run FFmpeg on mobile platforms. Supports iOS and Android.
-version: 0.2.4
+version: 0.2.5
 author: Taner Sener <tanersener@gmail.com>
 author: Taner Sener <tanersener@gmail.com>
 homepage: https://github.com/tanersener/flutter-ffmpeg
 homepage: https://github.com/tanersener/flutter-ffmpeg