release react-native plugin v5.1.0
This commit is contained in:
parent
80dc3aea38
commit
b3379ce597
2
.github/pull_request_template.md
vendored
2
.github/pull_request_template.md
vendored
|
@ -8,7 +8,7 @@ Please also include the context and motivation about the changes introduced.
|
||||||
- Documentation
|
- Documentation
|
||||||
|
|
||||||
## Checks
|
## Checks
|
||||||
- [ ] Changes support all platforms (`Android`, `iOS`, `Linux`, macOS`, `tvOS`)
|
- [ ] Changes support all platforms (`Android`, `iOS`, `Linux`, `macOS`, `tvOS`)
|
||||||
- [ ] Breaks existing functionality
|
- [ ] Breaks existing functionality
|
||||||
- [ ] Implementation is completed, not half-done
|
- [ ] Implementation is completed, not half-done
|
||||||
- [ ] Is there another PR already created for this feature/bug fix
|
- [ ] Is there another PR already created for this feature/bug fix
|
||||||
|
|
|
@ -125,7 +125,8 @@ the same `FFmpeg` release branch.
|
||||||
the exact version number of `FFmpeg` is obtained using the `git describe --tags` command.
|
the exact version number of `FFmpeg` is obtained using the `git describe --tags` command.
|
||||||
|
|
||||||
| Platforms | FFmpegKit Version | FFmpeg Version | Release Date |
|
| Platforms | FFmpegKit Version | FFmpeg Version | Release Date |
|
||||||
|:----------------:|:----------------------------------------------------------------------------------:|:--------------:|:------------:|
|
|:----------------:|:---------------------------------------------------------------------------------:|:--------------:|:------------:|
|
||||||
|
| React Native | [5.1.0](https://github.com/arthenica/ffmpeg-kit/releases/tag/react.native.v5.1.0) | 5.1.2 | Oct 02, 2022 |
|
||||||
| Flutter | [5.1.0](https://github.com/arthenica/ffmpeg-kit/releases/tag/flutter.v5.1.0) | 5.1.2 | Oct 02, 2022 |
|
| Flutter | [5.1.0](https://github.com/arthenica/ffmpeg-kit/releases/tag/flutter.v5.1.0) | 5.1.2 | Oct 02, 2022 |
|
||||||
| Android | [5.1](https://github.com/arthenica/ffmpeg-kit/releases/tag/v5.1) | 5.1.2 | Sep 29, 2022 |
|
| Android | [5.1](https://github.com/arthenica/ffmpeg-kit/releases/tag/v5.1) | 5.1.2 | Sep 29, 2022 |
|
||||||
| Apple | [5.1](https://github.com/arthenica/ffmpeg-kit/releases/tag/v5.1) | 5.1.2 | Sep 29, 2022 |
|
| Apple | [5.1](https://github.com/arthenica/ffmpeg-kit/releases/tag/v5.1) | 5.1.2 | Sep 29, 2022 |
|
||||||
|
|
|
@ -114,6 +114,7 @@ the exact version number of `FFmpeg` is obtained using the `git describe --tags`
|
||||||
|
|
||||||
| Platforms | FFmpegKit Version | FFmpeg Version | Release Date |
|
| Platforms | FFmpegKit Version | FFmpeg Version | Release Date |
|
||||||
|:----------------:|:---------------------------------------------------------------------------------:|:--------------:|:------------:|
|
|:----------------:|:---------------------------------------------------------------------------------:|:--------------:|:------------:|
|
||||||
|
| React Native | [5.1.0](https://github.com/arthenica/ffmpeg-kit/releases/tag/react.native.v5.1.0) | 5.1.2 | Oct 02, 2022 |
|
||||||
| Flutter | [5.1.0](https://github.com/arthenica/ffmpeg-kit/releases/tag/flutter.v5.1.0) | 5.1.2 | Oct 02, 2022 |
|
| Flutter | [5.1.0](https://github.com/arthenica/ffmpeg-kit/releases/tag/flutter.v5.1.0) | 5.1.2 | Oct 02, 2022 |
|
||||||
| Android | [5.1](https://github.com/arthenica/ffmpeg-kit/releases/tag/v5.1) | 5.1.2 | Sep 29, 2022 |
|
| Android | [5.1](https://github.com/arthenica/ffmpeg-kit/releases/tag/v5.1) | 5.1.2 | Sep 29, 2022 |
|
||||||
| Apple | [5.1](https://github.com/arthenica/ffmpeg-kit/releases/tag/v5.1) | 5.1.2 | Sep 29, 2022 |
|
| Apple | [5.1](https://github.com/arthenica/ffmpeg-kit/releases/tag/v5.1) | 5.1.2 | Sep 29, 2022 |
|
||||||
|
|
|
@ -4,11 +4,13 @@
|
||||||
- Includes both `FFmpeg` and `FFprobe`
|
- Includes both `FFmpeg` and `FFprobe`
|
||||||
- Supports
|
- Supports
|
||||||
- Both `Android` and `iOS`
|
- Both `Android` and `iOS`
|
||||||
- FFmpeg `v4.5-dev` releases
|
- FFmpeg `v5.1.2`
|
||||||
- `arm-v7a`, `arm-v7a-neon`, `arm64-v8a`, `x86` and `x86_64` architectures on Android
|
- `arm-v7a`, `arm-v7a-neon`, `arm64-v8a`, `x86` and `x86_64` architectures on Android
|
||||||
- `Android API Level 16` or later
|
- `Android API Level 24` or later
|
||||||
|
- `API Level 16` on LTS releases
|
||||||
- `armv7`, `armv7s`, `arm64`, `arm64-simulator`, `i386`, `x86_64`, `x86_64-mac-catalyst` and `arm64-mac-catalyst` architectures on iOS
|
- `armv7`, `armv7s`, `arm64`, `arm64-simulator`, `i386`, `x86_64`, `x86_64-mac-catalyst` and `arm64-mac-catalyst` architectures on iOS
|
||||||
- `iOS SDK 10` or later
|
- `iOS SDK 12.1` or later
|
||||||
|
- `iOS SDK 10` on LTS releases
|
||||||
- Can process Storage Access Framework (SAF) Uris on Android
|
- Can process Storage Access Framework (SAF) Uris on Android
|
||||||
- 25 external libraries
|
- 25 external libraries
|
||||||
|
|
||||||
|
@ -22,7 +24,7 @@
|
||||||
- `bzip2`, `iconv`, `libuuid`, `zlib` system libraries and `AudioToolbox`, `VideoToolbox`, `AVFoundation` system frameworks on iOS
|
- `bzip2`, `iconv`, `libuuid`, `zlib` system libraries and `AudioToolbox`, `VideoToolbox`, `AVFoundation` system frameworks on iOS
|
||||||
|
|
||||||
- Includes Typescript definitions
|
- Includes Typescript definitions
|
||||||
- Licensed under LGPL 3.0, can be customized to support GPL v3.0
|
- Licensed under `LGPL 3.0` by default, some packages licensed by `GPL v3.0` effectively
|
||||||
|
|
||||||
### 2. Installation
|
### 2. Installation
|
||||||
|
|
||||||
|
@ -32,16 +34,16 @@ yarn add ffmpeg-kit-react-native
|
||||||
|
|
||||||
#### 2.1 Packages
|
#### 2.1 Packages
|
||||||
|
|
||||||
`ffmpeg` includes built-in encoders for some popular formats. However, there are certain external libraries that needs
|
`FFmpeg` includes built-in encoders for some popular formats. However, there are certain external libraries that needs
|
||||||
to be enabled in order to encode specific formats/codecs. For example, to encode an `mp3` file you need `lame` or
|
to be enabled in order to encode specific formats/codecs. For example, to encode an `mp3` file you need `lame` or
|
||||||
`shine` library enabled. You have to install a `ffmpeg-kit-react-native` package that has at least one of them inside.
|
`shine` library enabled. You have to install a `ffmpeg-kit-react-native` package that has at least one of them inside.
|
||||||
To encode an `h264` video, you need to install a package with `x264` inside. To encode `vp8` or `vp9` videos, you need
|
To encode an `h264` video, you need to install a package with `x264` inside. To encode `vp8` or `vp9` videos, you need
|
||||||
a `ffmpeg-kit-react-native` package with `libvpx` inside.
|
a `ffmpeg-kit-react-native` package with `libvpx` inside.
|
||||||
|
|
||||||
`ffmpeg-kit` provides eight packages that include different sets of external libraries. These packages are
|
`ffmpeg-kit` provides eight packages that include different sets of external libraries. These packages are named
|
||||||
named according to the external libraries included in them. Refer to
|
according to the external libraries included. Refer to the
|
||||||
[Packages](https://github.com/arthenica/ffmpeg-kit#9-packages) section of the project README to see the names
|
[Packages](https://github.com/arthenica/ffmpeg-kit/wiki/Packages) wiki page to see the names of those
|
||||||
of those packages and external libraries included in each of them.
|
packages and external libraries included in each one of them.
|
||||||
|
|
||||||
##### 2.1.1 Package Names
|
##### 2.1.1 Package Names
|
||||||
|
|
||||||
|
@ -184,10 +186,10 @@ the package name you are using.
|
||||||
|
|
||||||
#### 2.4 LTS Releases
|
#### 2.4 LTS Releases
|
||||||
|
|
||||||
`ffmpeg-kit-react-native` is published in two different variants: `Main Release` and `LTS Release`. Both releases
|
`ffmpeg-kit-react-native` is published in two variants: `Main Release` and `LTS Release`. Both releases share the
|
||||||
share the same source code but is built with different settings (Architectures, API Level, iOS Min SDK, etc.). Refer to
|
same source code but is built with different settings (Architectures, API Level, iOS Min SDK, etc.). Refer to the
|
||||||
[LTS Releases](https://github.com/arthenica/ffmpeg-kit#11-lts-releases) section of the project README to see how they
|
[LTS Releases](https://github.com/arthenica/ffmpeg-kit/wiki/LTS-Releases) wiki page to see how they differ from each
|
||||||
compare to each other.
|
other.
|
||||||
|
|
||||||
### 3. Using
|
### 3. Using
|
||||||
|
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
buildscript {
|
buildscript {
|
||||||
repositories {
|
repositories {
|
||||||
google()
|
google()
|
||||||
jcenter()
|
mavenCentral()
|
||||||
}
|
}
|
||||||
|
|
||||||
dependencies {
|
dependencies {
|
||||||
classpath 'com.android.tools.build:gradle:4.2.2'
|
classpath 'com.android.tools.build:gradle:7.3.0'
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -26,13 +26,13 @@ def safeExtGet(String prop, String fallback) {
|
||||||
}
|
}
|
||||||
|
|
||||||
android {
|
android {
|
||||||
compileSdkVersion 30
|
compileSdkVersion 31
|
||||||
|
|
||||||
defaultConfig {
|
defaultConfig {
|
||||||
minSdkVersion safeExtGet('ffmpegKitPackage', 'https').contains("-lts") ? 16 : 24
|
minSdkVersion safeExtGet('ffmpegKitPackage', 'https').contains("-lts") ? 16 : 24
|
||||||
targetSdkVersion 30
|
targetSdkVersion 31
|
||||||
versionCode 452
|
versionCode 510
|
||||||
versionName "4.5.2"
|
versionName "5.1.0"
|
||||||
}
|
}
|
||||||
|
|
||||||
buildTypes {
|
buildTypes {
|
||||||
|
@ -44,14 +44,13 @@ android {
|
||||||
disable 'GradleCompatible'
|
disable 'GradleCompatible'
|
||||||
}
|
}
|
||||||
compileOptions {
|
compileOptions {
|
||||||
sourceCompatibility JavaVersion.VERSION_1_8
|
sourceCompatibility JavaVersion.VERSION_11
|
||||||
targetCompatibility JavaVersion.VERSION_1_8
|
targetCompatibility JavaVersion.VERSION_11
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
repositories {
|
repositories {
|
||||||
mavenCentral()
|
mavenCentral()
|
||||||
jcenter()
|
|
||||||
google()
|
google()
|
||||||
|
|
||||||
def found = false
|
def found = false
|
||||||
|
|
|
@ -1,3 +1,3 @@
|
||||||
android.useAndroidX=true
|
android.useAndroidX=true
|
||||||
ffmpegKit.android.main.version=4.5.1-1
|
ffmpegKit.android.main.version=5.1
|
||||||
ffmpegKit.android.lts.version=4.5.1-1
|
ffmpegKit.android.lts.version=5.1
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
distributionBase=GRADLE_USER_HOME
|
distributionBase=GRADLE_USER_HOME
|
||||||
distributionPath=wrapper/dists
|
distributionPath=wrapper/dists
|
||||||
distributionUrl=https\://services.gradle.org/distributions/gradle-6.8.1-bin.zip
|
distributionUrl=https\://services.gradle.org/distributions/gradle-7.5.1-bin.zip
|
||||||
zipStoreBase=GRADLE_USER_HOME
|
zipStoreBase=GRADLE_USER_HOME
|
||||||
zipStorePath=wrapper/dists
|
zipStorePath=wrapper/dists
|
||||||
|
|
|
@ -23,112 +23,112 @@ Pod::Spec.new do |s|
|
||||||
s.subspec 'min' do |ss|
|
s.subspec 'min' do |ss|
|
||||||
ss.source_files = '**/FFmpegKitReactNativeModule.m',
|
ss.source_files = '**/FFmpegKitReactNativeModule.m',
|
||||||
'**/FFmpegKitReactNativeModule.h'
|
'**/FFmpegKitReactNativeModule.h'
|
||||||
ss.dependency 'ffmpeg-kit-ios-min', "4.5.1"
|
ss.dependency 'ffmpeg-kit-ios-min', "5.1"
|
||||||
ss.ios.deployment_target = '12.1'
|
ss.ios.deployment_target = '12.1'
|
||||||
end
|
end
|
||||||
|
|
||||||
s.subspec 'min-lts' do |ss|
|
s.subspec 'min-lts' do |ss|
|
||||||
ss.source_files = '**/FFmpegKitReactNativeModule.m',
|
ss.source_files = '**/FFmpegKitReactNativeModule.m',
|
||||||
'**/FFmpegKitReactNativeModule.h'
|
'**/FFmpegKitReactNativeModule.h'
|
||||||
ss.dependency 'ffmpeg-kit-ios-min', "4.5.1.LTS"
|
ss.dependency 'ffmpeg-kit-ios-min', "5.1.LTS"
|
||||||
ss.ios.deployment_target = '10'
|
ss.ios.deployment_target = '10'
|
||||||
end
|
end
|
||||||
|
|
||||||
s.subspec 'min-gpl' do |ss|
|
s.subspec 'min-gpl' do |ss|
|
||||||
ss.source_files = '**/FFmpegKitReactNativeModule.m',
|
ss.source_files = '**/FFmpegKitReactNativeModule.m',
|
||||||
'**/FFmpegKitReactNativeModule.h'
|
'**/FFmpegKitReactNativeModule.h'
|
||||||
ss.dependency 'ffmpeg-kit-ios-min-gpl', "4.5.1"
|
ss.dependency 'ffmpeg-kit-ios-min-gpl', "5.1"
|
||||||
ss.ios.deployment_target = '12.1'
|
ss.ios.deployment_target = '12.1'
|
||||||
end
|
end
|
||||||
|
|
||||||
s.subspec 'min-gpl-lts' do |ss|
|
s.subspec 'min-gpl-lts' do |ss|
|
||||||
ss.source_files = '**/FFmpegKitReactNativeModule.m',
|
ss.source_files = '**/FFmpegKitReactNativeModule.m',
|
||||||
'**/FFmpegKitReactNativeModule.h'
|
'**/FFmpegKitReactNativeModule.h'
|
||||||
ss.dependency 'ffmpeg-kit-ios-min-gpl', "4.5.1.LTS"
|
ss.dependency 'ffmpeg-kit-ios-min-gpl', "5.1.LTS"
|
||||||
ss.ios.deployment_target = '10'
|
ss.ios.deployment_target = '10'
|
||||||
end
|
end
|
||||||
|
|
||||||
s.subspec 'https' do |ss|
|
s.subspec 'https' do |ss|
|
||||||
ss.source_files = '**/FFmpegKitReactNativeModule.m',
|
ss.source_files = '**/FFmpegKitReactNativeModule.m',
|
||||||
'**/FFmpegKitReactNativeModule.h'
|
'**/FFmpegKitReactNativeModule.h'
|
||||||
ss.dependency 'ffmpeg-kit-ios-https', "4.5.1"
|
ss.dependency 'ffmpeg-kit-ios-https', "5.1"
|
||||||
ss.ios.deployment_target = '12.1'
|
ss.ios.deployment_target = '12.1'
|
||||||
end
|
end
|
||||||
|
|
||||||
s.subspec 'https-lts' do |ss|
|
s.subspec 'https-lts' do |ss|
|
||||||
ss.source_files = '**/FFmpegKitReactNativeModule.m',
|
ss.source_files = '**/FFmpegKitReactNativeModule.m',
|
||||||
'**/FFmpegKitReactNativeModule.h'
|
'**/FFmpegKitReactNativeModule.h'
|
||||||
ss.dependency 'ffmpeg-kit-ios-https', "4.5.1.LTS"
|
ss.dependency 'ffmpeg-kit-ios-https', "5.1.LTS"
|
||||||
ss.ios.deployment_target = '10'
|
ss.ios.deployment_target = '10'
|
||||||
end
|
end
|
||||||
|
|
||||||
s.subspec 'https-gpl' do |ss|
|
s.subspec 'https-gpl' do |ss|
|
||||||
ss.source_files = '**/FFmpegKitReactNativeModule.m',
|
ss.source_files = '**/FFmpegKitReactNativeModule.m',
|
||||||
'**/FFmpegKitReactNativeModule.h'
|
'**/FFmpegKitReactNativeModule.h'
|
||||||
ss.dependency 'ffmpeg-kit-ios-https-gpl', "4.5.1"
|
ss.dependency 'ffmpeg-kit-ios-https-gpl', "5.1"
|
||||||
ss.ios.deployment_target = '12.1'
|
ss.ios.deployment_target = '12.1'
|
||||||
end
|
end
|
||||||
|
|
||||||
s.subspec 'https-gpl-lts' do |ss|
|
s.subspec 'https-gpl-lts' do |ss|
|
||||||
ss.source_files = '**/FFmpegKitReactNativeModule.m',
|
ss.source_files = '**/FFmpegKitReactNativeModule.m',
|
||||||
'**/FFmpegKitReactNativeModule.h'
|
'**/FFmpegKitReactNativeModule.h'
|
||||||
ss.dependency 'ffmpeg-kit-ios-https-gpl', "4.5.1.LTS"
|
ss.dependency 'ffmpeg-kit-ios-https-gpl', "5.1.LTS"
|
||||||
ss.ios.deployment_target = '10'
|
ss.ios.deployment_target = '10'
|
||||||
end
|
end
|
||||||
|
|
||||||
s.subspec 'audio' do |ss|
|
s.subspec 'audio' do |ss|
|
||||||
ss.source_files = '**/FFmpegKitReactNativeModule.m',
|
ss.source_files = '**/FFmpegKitReactNativeModule.m',
|
||||||
'**/FFmpegKitReactNativeModule.h'
|
'**/FFmpegKitReactNativeModule.h'
|
||||||
ss.dependency 'ffmpeg-kit-ios-audio', "4.5.1"
|
ss.dependency 'ffmpeg-kit-ios-audio', "5.1"
|
||||||
ss.ios.deployment_target = '12.1'
|
ss.ios.deployment_target = '12.1'
|
||||||
end
|
end
|
||||||
|
|
||||||
s.subspec 'audio-lts' do |ss|
|
s.subspec 'audio-lts' do |ss|
|
||||||
ss.source_files = '**/FFmpegKitReactNativeModule.m',
|
ss.source_files = '**/FFmpegKitReactNativeModule.m',
|
||||||
'**/FFmpegKitReactNativeModule.h'
|
'**/FFmpegKitReactNativeModule.h'
|
||||||
ss.dependency 'ffmpeg-kit-ios-audio', "4.5.1.LTS"
|
ss.dependency 'ffmpeg-kit-ios-audio', "5.1.LTS"
|
||||||
ss.ios.deployment_target = '10'
|
ss.ios.deployment_target = '10'
|
||||||
end
|
end
|
||||||
|
|
||||||
s.subspec 'video' do |ss|
|
s.subspec 'video' do |ss|
|
||||||
ss.source_files = '**/FFmpegKitReactNativeModule.m',
|
ss.source_files = '**/FFmpegKitReactNativeModule.m',
|
||||||
'**/FFmpegKitReactNativeModule.h'
|
'**/FFmpegKitReactNativeModule.h'
|
||||||
ss.dependency 'ffmpeg-kit-ios-video', "4.5.1"
|
ss.dependency 'ffmpeg-kit-ios-video', "5.1"
|
||||||
ss.ios.deployment_target = '12.1'
|
ss.ios.deployment_target = '12.1'
|
||||||
end
|
end
|
||||||
|
|
||||||
s.subspec 'video-lts' do |ss|
|
s.subspec 'video-lts' do |ss|
|
||||||
ss.source_files = '**/FFmpegKitReactNativeModule.m',
|
ss.source_files = '**/FFmpegKitReactNativeModule.m',
|
||||||
'**/FFmpegKitReactNativeModule.h'
|
'**/FFmpegKitReactNativeModule.h'
|
||||||
ss.dependency 'ffmpeg-kit-ios-video', "4.5.1.LTS"
|
ss.dependency 'ffmpeg-kit-ios-video', "5.1.LTS"
|
||||||
ss.ios.deployment_target = '10'
|
ss.ios.deployment_target = '10'
|
||||||
end
|
end
|
||||||
|
|
||||||
s.subspec 'full' do |ss|
|
s.subspec 'full' do |ss|
|
||||||
ss.source_files = '**/FFmpegKitReactNativeModule.m',
|
ss.source_files = '**/FFmpegKitReactNativeModule.m',
|
||||||
'**/FFmpegKitReactNativeModule.h'
|
'**/FFmpegKitReactNativeModule.h'
|
||||||
ss.dependency 'ffmpeg-kit-ios-full', "4.5.1"
|
ss.dependency 'ffmpeg-kit-ios-full', "5.1"
|
||||||
ss.ios.deployment_target = '12.1'
|
ss.ios.deployment_target = '12.1'
|
||||||
end
|
end
|
||||||
|
|
||||||
s.subspec 'full-lts' do |ss|
|
s.subspec 'full-lts' do |ss|
|
||||||
ss.source_files = '**/FFmpegKitReactNativeModule.m',
|
ss.source_files = '**/FFmpegKitReactNativeModule.m',
|
||||||
'**/FFmpegKitReactNativeModule.h'
|
'**/FFmpegKitReactNativeModule.h'
|
||||||
ss.dependency 'ffmpeg-kit-ios-full', "4.5.1.LTS"
|
ss.dependency 'ffmpeg-kit-ios-full', "5.1.LTS"
|
||||||
ss.ios.deployment_target = '10'
|
ss.ios.deployment_target = '10'
|
||||||
end
|
end
|
||||||
|
|
||||||
s.subspec 'full-gpl' do |ss|
|
s.subspec 'full-gpl' do |ss|
|
||||||
ss.source_files = '**/FFmpegKitReactNativeModule.m',
|
ss.source_files = '**/FFmpegKitReactNativeModule.m',
|
||||||
'**/FFmpegKitReactNativeModule.h'
|
'**/FFmpegKitReactNativeModule.h'
|
||||||
ss.dependency 'ffmpeg-kit-ios-full-gpl', "4.5.1"
|
ss.dependency 'ffmpeg-kit-ios-full-gpl', "5.1"
|
||||||
ss.ios.deployment_target = '12.1'
|
ss.ios.deployment_target = '12.1'
|
||||||
end
|
end
|
||||||
|
|
||||||
s.subspec 'full-gpl-lts' do |ss|
|
s.subspec 'full-gpl-lts' do |ss|
|
||||||
ss.source_files = '**/FFmpegKitReactNativeModule.m',
|
ss.source_files = '**/FFmpegKitReactNativeModule.m',
|
||||||
'**/FFmpegKitReactNativeModule.h'
|
'**/FFmpegKitReactNativeModule.h'
|
||||||
ss.dependency 'ffmpeg-kit-ios-full-gpl', "4.5.1.LTS"
|
ss.dependency 'ffmpeg-kit-ios-full-gpl', "5.1.LTS"
|
||||||
ss.ios.deployment_target = '10'
|
ss.ios.deployment_target = '10'
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
@ -299,23 +299,21 @@ RCT_EXPORT_METHOD(mediaInformationSession:(NSArray*)arguments resolver:(RCTPromi
|
||||||
// MediaInformationJsonParser
|
// MediaInformationJsonParser
|
||||||
|
|
||||||
RCT_EXPORT_METHOD(mediaInformationJsonParserFrom:(NSString*)ffprobeJsonOutput resolver:(RCTPromiseResolveBlock)resolve rejecter:(RCTPromiseRejectBlock)reject) {
|
RCT_EXPORT_METHOD(mediaInformationJsonParserFrom:(NSString*)ffprobeJsonOutput resolver:(RCTPromiseResolveBlock)resolve rejecter:(RCTPromiseRejectBlock)reject) {
|
||||||
NSError *error;
|
@try {
|
||||||
MediaInformation* mediaInformation = [MediaInformationJsonParser from:ffprobeJsonOutput with:error];
|
MediaInformation* mediaInformation = [MediaInformationJsonParser fromWithError:ffprobeJsonOutput];
|
||||||
if (error == nil) {
|
|
||||||
resolve([FFmpegKitReactNativeModule toMediaInformationDictionary:mediaInformation]);
|
resolve([FFmpegKitReactNativeModule toMediaInformationDictionary:mediaInformation]);
|
||||||
} else {
|
} @catch (NSException *exception) {
|
||||||
NSLog(@"MediaInformation parsing failed: %@.\n", error);
|
NSLog(@"Parsing MediaInformation failed: %@.\n", [NSString stringWithFormat:@"%@\n%@", [exception userInfo], [exception callStackSymbols]]);
|
||||||
resolve(nil);
|
resolve(nil);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
RCT_EXPORT_METHOD(mediaInformationJsonParserFromWithError:(NSString*)ffprobeJsonOutput resolver:(RCTPromiseResolveBlock)resolve rejecter:(RCTPromiseRejectBlock)reject) {
|
RCT_EXPORT_METHOD(mediaInformationJsonParserFromWithError:(NSString*)ffprobeJsonOutput resolver:(RCTPromiseResolveBlock)resolve rejecter:(RCTPromiseRejectBlock)reject) {
|
||||||
NSError *error;
|
@try {
|
||||||
MediaInformation* mediaInformation = [MediaInformationJsonParser from:ffprobeJsonOutput with:error];
|
MediaInformation* mediaInformation = [MediaInformationJsonParser fromWithError:ffprobeJsonOutput];
|
||||||
if (error == nil) {
|
|
||||||
resolve([FFmpegKitReactNativeModule toMediaInformationDictionary:mediaInformation]);
|
resolve([FFmpegKitReactNativeModule toMediaInformationDictionary:mediaInformation]);
|
||||||
} else {
|
} @catch (NSException *exception) {
|
||||||
NSLog(@"MediaInformation parsing failed: %@.\n", error);
|
NSLog(@"Parsing MediaInformation failed: %@.\n", [NSString stringWithFormat:@"%@\n%@", [exception userInfo], [exception callStackSymbols]]);
|
||||||
reject(@"PARSE_FAILED", @"Parsing MediaInformation failed with JSON error.", nil);
|
reject(@"PARSE_FAILED", @"Parsing MediaInformation failed with JSON error.", nil);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "ffmpeg-kit-react-native",
|
"name": "ffmpeg-kit-react-native",
|
||||||
"version": "4.5.2",
|
"version": "5.1.0",
|
||||||
"description": "FFmpeg Kit for React Native",
|
"description": "FFmpeg Kit for React Native",
|
||||||
"main": "src/index",
|
"main": "src/index",
|
||||||
"types": "src/index.d.ts",
|
"types": "src/index.d.ts",
|
||||||
|
@ -19,7 +19,7 @@
|
||||||
"ios"
|
"ios"
|
||||||
],
|
],
|
||||||
"repository": "https://github.com/arthenica/ffmpeg-kit",
|
"repository": "https://github.com/arthenica/ffmpeg-kit",
|
||||||
"author": "ARTHENICA <open-source@arthenica.com> (https://github.com/arthenica)",
|
"author": "ARTHENICA <open-source@arthenica.com> (https://www.arthenica.com)",
|
||||||
"license": "LGPL-3.0",
|
"license": "LGPL-3.0",
|
||||||
"bugs": {
|
"bugs": {
|
||||||
"url": "https://github.com/arthenica/ffmpeg-kit/issues"
|
"url": "https://github.com/arthenica/ffmpeg-kit/issues"
|
||||||
|
|
22
react-native/src/index.js
vendored
22
react-native/src/index.js
vendored
|
@ -1611,7 +1611,7 @@ class FFmpegKitFactory {
|
||||||
}
|
}
|
||||||
|
|
||||||
static getVersion() {
|
static getVersion() {
|
||||||
return "4.5.2";
|
return "5.1.0";
|
||||||
}
|
}
|
||||||
|
|
||||||
static getLogRedirectionStrategy(sessionId) {
|
static getLogRedirectionStrategy(sessionId) {
|
||||||
|
@ -3091,7 +3091,7 @@ export class StreamInformation {
|
||||||
* @return tags object
|
* @return tags object
|
||||||
*/
|
*/
|
||||||
getTags() {
|
getTags() {
|
||||||
return this.getProperties(StreamInformation.KEY_TAGS);
|
return this.getProperty(StreamInformation.KEY_TAGS);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -3123,12 +3123,12 @@ export class StreamInformation {
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the stream properties associated with the key.
|
* Returns the stream property associated with the key.
|
||||||
*
|
*
|
||||||
* @param key properties key
|
* @param key property key
|
||||||
* @return stream properties as an object or undefined if the key is not found
|
* @return stream property as an object or undefined if the key is not found
|
||||||
*/
|
*/
|
||||||
getProperties(key) {
|
getProperty(key) {
|
||||||
if (this.#allProperties !== undefined) {
|
if (this.#allProperties !== undefined) {
|
||||||
return this.#allProperties[key];
|
return this.#allProperties[key];
|
||||||
} else {
|
} else {
|
||||||
|
@ -3225,7 +3225,7 @@ export class Chapter {
|
||||||
* @return tags object
|
* @return tags object
|
||||||
*/
|
*/
|
||||||
getTags() {
|
getTags() {
|
||||||
return this.getProperties(StreamInformation.KEY_TAGS);
|
return this.getProperty(StreamInformation.KEY_TAGS);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -3257,12 +3257,12 @@ export class Chapter {
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the chapter properties associated with the key.
|
* Returns the chapter property associated with the key.
|
||||||
*
|
*
|
||||||
* @param key properties key
|
* @param key property key
|
||||||
* @return chapter properties as an object or undefined if the key is not found
|
* @return chapter property as an object or undefined if the key is not found
|
||||||
*/
|
*/
|
||||||
getProperties(key) {
|
getProperty(key) {
|
||||||
if (this.#allProperties !== undefined) {
|
if (this.#allProperties !== undefined) {
|
||||||
return this.#allProperties[key];
|
return this.#allProperties[key];
|
||||||
} else {
|
} else {
|
||||||
|
|
Loading…
Reference in New Issue
Block a user