diff --git a/README.md b/README.md index 7d5417c..a934fde 100644 --- a/README.md +++ b/README.md @@ -19,23 +19,19 @@ It includes scripts to build `FFmpeg` native libraries, a wrapper library to run ### 2. Android -See [Android](https://github.com/tanersener/ffmpeg-kit/tree/main/android) to learn more about `FFmpegKit` for -`Android`. +See [Android](android) to learn more about `FFmpegKit` for `Android`. ### 3. iOS, macOS, tvOS -See [Apple](https://github.com/tanersener/ffmpeg-kit/tree/main/apple) to use `FFmpegKit` on `Apple` platforms -(`iOS`, `macOS`, `tvOS`). +See [Apple](apple) to use `FFmpegKit` on `Apple` platforms (`iOS`, `macOS`, `tvOS`). ### 4. Flutter -See [Flutter](https://github.com/tanersener/ffmpeg-kit/tree/main/flutter/flutter) to learn more about `FFmpegKit` for -`Flutter`. +See [Flutter](flutter/flutter) to learn more about `FFmpegKit` for `Flutter`. ### 5. React Native -See [React Native](https://github.com/tanersener/ffmpeg-kit/tree/main/react-native) to learn more about `FFmpegKit` for -`React Native`. +See [React Native](react-native) to learn more about `FFmpegKit` for `React Native`. ### 6. Build Scripts diff --git a/android/ffmpeg-kit-android-lib/src/main/java/com/arthenica/ffmpegkit/FFmpegKit.java b/android/ffmpeg-kit-android-lib/src/main/java/com/arthenica/ffmpegkit/FFmpegKit.java index 1dd41f6..150e723 100644 --- a/android/ffmpeg-kit-android-lib/src/main/java/com/arthenica/ffmpegkit/FFmpegKit.java +++ b/android/ffmpeg-kit-android-lib/src/main/java/com/arthenica/ffmpegkit/FFmpegKit.java @@ -24,8 +24,8 @@ import java.util.List; import java.util.concurrent.ExecutorService; /** - *
Main class to run FFmpeg
commands. Supports executing commands both
- * synchronously and asynchronously.
+ *
Main class to run FFmpeg
commands. Supports executing commands both synchronously and
+ * asynchronously.
*
* FFmpegSession session = FFmpegKit.execute("-i file1.mp4 -c:v libxvid file1.avi"); * @@ -64,7 +64,10 @@ public class FFmpegKit { } /** - *Asynchronously executes FFmpeg with arguments provided. + *
Starts an asynchronous FFmpeg execution with arguments provided. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * {@jlink ExecuteCallback} if you want to be notified about the result. * * @param arguments FFmpeg command options/arguments as string array * @param executeCallback callback that will be called when the execution is completed @@ -80,7 +83,10 @@ public class FFmpegKit { } /** - *
Asynchronously executes FFmpeg with arguments provided. + *
Starts an asynchronous FFmpeg execution with arguments provided. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * {@jlink ExecuteCallback} if you want to be notified about the result. * * @param arguments FFmpeg command options/arguments as string array * @param executeCallback callback that will be called when the execution is completed @@ -100,7 +106,10 @@ public class FFmpegKit { } /** - *
Asynchronously executes FFmpeg with arguments provided. + *
Starts an asynchronous FFmpeg execution with arguments provided. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * {@jlink ExecuteCallback} if you want to be notified about the result. * * @param arguments FFmpeg command options/arguments as string array * @param executeCallback callback that will be called when the execution is completed @@ -118,7 +127,10 @@ public class FFmpegKit { } /** - *
Asynchronously executes FFmpeg with arguments provided. + *
Starts an asynchronous FFmpeg execution with arguments provided. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * {@jlink ExecuteCallback} if you want to be notified about the result. * * @param arguments FFmpeg command options/arguments as string array * @param executeCallback callback that will be called when the execution is completed @@ -152,9 +164,11 @@ public class FFmpegKit { } /** - *
Asynchronously executes FFmpeg command provided. Space character is used to split command - * into arguments. You can use single or double quote characters to specify arguments inside - * your command. + *
Starts an asynchronous FFmpeg execution for the given command. Space character is used to split the command + * into arguments. You can use single or double quote characters to specify arguments inside your command. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * {@jlink ExecuteCallback} if you want to be notified about the result. * * @param command FFmpeg command * @param executeCallback callback that will be called when the execution is completed @@ -166,9 +180,11 @@ public class FFmpegKit { } /** - *
Asynchronously executes FFmpeg command provided. Space character is used to split command - * into arguments. You can use single or double quote characters to specify arguments inside - * your command. + *
Starts an asynchronous FFmpeg execution for the given command. Space character is used to split the command + * into arguments. You can use single or double quote characters to specify arguments inside your command. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * {@jlink ExecuteCallback} if you want to be notified about the result. * * @param command FFmpeg command * @param executeCallback callback that will be called when the execution is completed @@ -184,9 +200,11 @@ public class FFmpegKit { } /** - *
Asynchronously executes FFmpeg command provided. Space character is used to split command - * into arguments. You can use single or double quote characters to specify arguments inside - * your command. + *
Starts an asynchronous FFmpeg execution for the given command. Space character is used to split the command + * into arguments. You can use single or double quote characters to specify arguments inside your command. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * {@jlink ExecuteCallback} if you want to be notified about the result. * * @param command FFmpeg command * @param executeCallback callback that will be called when the execution is completed @@ -204,9 +222,11 @@ public class FFmpegKit { } /** - *
Asynchronously executes FFmpeg command provided. Space character is used to split command - * into arguments. You can use single or double quote characters to specify arguments inside - * your command. + *
Starts an asynchronous FFmpeg execution for the given command. Space character is used to split the command + * into arguments. You can use single or double quote characters to specify arguments inside your command. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * {@jlink ExecuteCallback} if you want to be notified about the result. * * @param command FFmpeg command * @param executeCallback callback that will be called when the execution is completed diff --git a/android/ffmpeg-kit-android-lib/src/main/java/com/arthenica/ffmpegkit/FFmpegKitConfig.java b/android/ffmpeg-kit-android-lib/src/main/java/com/arthenica/ffmpegkit/FFmpegKitConfig.java index 8ec348d..3891850 100644 --- a/android/ffmpeg-kit-android-lib/src/main/java/com/arthenica/ffmpegkit/FFmpegKitConfig.java +++ b/android/ffmpeg-kit-android-lib/src/main/java/com/arthenica/ffmpegkit/FFmpegKitConfig.java @@ -656,7 +656,10 @@ public class FFmpegKitConfig { } /** - *
Asynchronously executes the FFmpeg session provided. + *
Starts an asynchronous FFmpeg execution for the given session. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * {@jlink ExecuteCallback} if you want to be notified about the result. * * @param ffmpegSession FFmpeg session which includes command options/arguments */ @@ -667,7 +670,10 @@ public class FFmpegKitConfig { } /** - *
Asynchronously executes the FFmpeg session provided. + *
Starts an asynchronous FFmpeg execution for the given session. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * {@jlink ExecuteCallback} if you want to be notified about the result. * * @param ffmpegSession FFmpeg session which includes command options/arguments * @param executorService executor service that will be used to run this asynchronous operation @@ -679,7 +685,10 @@ public class FFmpegKitConfig { } /** - *
Asynchronously executes the FFprobe session provided. + *
Starts an asynchronous FFprobe execution for the given session. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * {@jlink ExecuteCallback} if you want to be notified about the result. * * @param ffprobeSession FFprobe session which includes command options/arguments */ @@ -690,7 +699,10 @@ public class FFmpegKitConfig { } /** - *
Asynchronously executes the FFprobe session provided. + *
Starts an asynchronous FFprobe execution for the given session. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * {@jlink ExecuteCallback} if you want to be notified about the result. * * @param ffprobeSession FFprobe session which includes command options/arguments * @param executorService executor service that will be used to run this asynchronous operation @@ -702,7 +714,10 @@ public class FFmpegKitConfig { } /** - *
Asynchronously executes the media information session provided. + *
Starts an asynchronous FFprobe execution for the given media information session. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * {@jlink ExecuteCallback} if you want to be notified about the result. * * @param mediaInformationSession media information session which includes command options/arguments * @param waitTimeout max time to wait until media information is transmitted @@ -714,7 +729,10 @@ public class FFmpegKitConfig { } /** - *
Asynchronously executes the media information session provided. + *
Starts an asynchronous FFprobe execution for the given media information session. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * {@jlink ExecuteCallback} if you want to be notified about the result. * * @param mediaInformationSession media information session which includes command options/arguments * @param executorService executor service that will be used to run this asynchronous operation diff --git a/android/ffmpeg-kit-android-lib/src/main/java/com/arthenica/ffmpegkit/FFprobeKit.java b/android/ffmpeg-kit-android-lib/src/main/java/com/arthenica/ffmpegkit/FFprobeKit.java index 860a289..3db4611 100644 --- a/android/ffmpeg-kit-android-lib/src/main/java/com/arthenica/ffmpegkit/FFprobeKit.java +++ b/android/ffmpeg-kit-android-lib/src/main/java/com/arthenica/ffmpegkit/FFprobeKit.java @@ -23,8 +23,8 @@ import java.util.List; import java.util.concurrent.ExecutorService; /** - *
Main class to run
FFprobe
commands. Supports executing commands both - * synchronously and asynchronously. + *Main class to run
FFprobe
commands. Supports executing commands both synchronously and + * asynchronously. ** FFprobeSession session = FFprobeKit.execute("-hide_banner -v error -show_entries format=size -of default=noprint_wrappers=1 file1.mp4"); * @@ -67,7 +67,10 @@ public class FFprobeKit { } /** - *Asynchronously executes FFprobe with arguments provided. + *
Starts an asynchronous FFprobe execution with arguments provided. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * {@jlink ExecuteCallback} if you want to be notified about the result. * * @param arguments FFprobe command options/arguments as string array * @param executeCallback callback that will be called when the execution is completed @@ -83,7 +86,10 @@ public class FFprobeKit { } /** - *
Asynchronously executes FFprobe with arguments provided. + *
Starts an asynchronous FFprobe execution with arguments provided. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * {@jlink ExecuteCallback} if you want to be notified about the result. * * @param arguments FFprobe command options/arguments as string array * @param executeCallback callback that will be notified when execution is completed @@ -101,7 +107,10 @@ public class FFprobeKit { } /** - *
Asynchronously executes FFprobe with arguments provided. + *
Starts an asynchronous FFprobe execution with arguments provided. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * {@jlink ExecuteCallback} if you want to be notified about the result. * * @param arguments FFprobe command options/arguments as string array * @param executeCallback callback that will be called when the execution is completed @@ -119,7 +128,10 @@ public class FFprobeKit { } /** - *
Asynchronously executes FFprobe with arguments provided. + *
Starts an asynchronous FFprobe execution with arguments provided. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * {@jlink ExecuteCallback} if you want to be notified about the result. * * @param arguments FFprobe command options/arguments as string array * @param executeCallback callback that will be notified when execution is completed @@ -151,9 +163,11 @@ public class FFprobeKit { } /** - *
Asynchronously executes FFprobe command provided. Space character is used to split command - * into arguments. You can use single or double quote characters to specify arguments inside - * your command. + *
Starts an asynchronous FFprobe execution for the given command. Space character is used to split the command + * into arguments. You can use single or double quote characters to specify arguments inside your command. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * {@jlink ExecuteCallback} if you want to be notified about the result. * * @param command FFprobe command * @param executeCallback callback that will be called when the execution is completed @@ -165,9 +179,11 @@ public class FFprobeKit { } /** - *
Asynchronously executes FFprobe command provided. Space character is used to split command - * into arguments. You can use single or double quote characters to specify arguments inside - * your command. + *
Starts an asynchronous FFprobe execution for the given command. Space character is used to split the command + * into arguments. You can use single or double quote characters to specify arguments inside your command. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * {@jlink ExecuteCallback} if you want to be notified about the result. * * @param command FFprobe command * @param executeCallback callback that will be notified when execution is completed @@ -181,9 +197,11 @@ public class FFprobeKit { } /** - *
Asynchronously executes FFprobe command provided. Space character is used to split command - * into arguments. You can use single or double quote characters to specify arguments inside - * your command. + *
Starts an asynchronous FFprobe execution for the given command. Space character is used to split the command + * into arguments. You can use single or double quote characters to specify arguments inside your command. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * {@jlink ExecuteCallback} if you want to be notified about the result. * * @param command FFprobe command * @param executeCallback callback that will be called when the execution is completed @@ -201,9 +219,11 @@ public class FFprobeKit { } /** - *
Asynchronously executes FFprobe command provided. Space character is used to split command - * into arguments. You can use single or double quote characters to specify arguments inside - * your command. + *
Starts an asynchronous FFprobe execution for the given command. Space character is used to split the command + * into arguments. You can use single or double quote characters to specify arguments inside your command. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * {@jlink ExecuteCallback} if you want to be notified about the result. * * @param command FFprobe command * @param executeCallback callback that will be called when the execution is completed @@ -253,7 +273,10 @@ public class FFprobeKit { } /** - *
Extracts media information for the file specified with path asynchronously. + *
Starts an asynchronous FFprobe execution to extract the media information for the specified file. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * {@jlink ExecuteCallback} if you want to be notified about the result. * * @param path path or uri of a media file * @param executeCallback callback that will be called when the execution is completed @@ -269,7 +292,10 @@ public class FFprobeKit { } /** - *
Extracts media information for the file specified with path asynchronously. + *
Starts an asynchronous FFprobe execution to extract the media information for the specified file. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * {@jlink ExecuteCallback} if you want to be notified about the result. * * @param path path or uri of a media file * @param executeCallback callback that will be notified when execution is completed @@ -289,7 +315,10 @@ public class FFprobeKit { } /** - *
Extracts media information for the file specified with path asynchronously. + *
Starts an asynchronous FFprobe execution to extract the media information for the specified file. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * {@jlink ExecuteCallback} if you want to be notified about the result. * * @param path path or uri of a media file * @param executeCallback callback that will be called when the execution is completed @@ -307,7 +336,10 @@ public class FFprobeKit { } /** - *
Extracts media information for the file specified with path asynchronously. + *
Starts an asynchronous FFprobe execution to extract the media information for the specified file. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * {@jlink ExecuteCallback} if you want to be notified about the result. * * @param path path or uri of a media file * @param executeCallback callback that will be notified when execution is completed @@ -343,7 +375,11 @@ public class FFprobeKit { } /** - *
Extracts media information using the command provided asynchronously. + *
Starts an asynchronous FFprobe execution to extract media information using a command. The command passed to + * this method must generate the output in JSON format in order to successfully extract media information from it. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * {@jlink ExecuteCallback} if you want to be notified about the result. * * @param command FFprobe command that prints media information for a file in JSON format * @param executeCallback callback that will be notified when execution is completed @@ -359,7 +395,12 @@ public class FFprobeKit { } /** - * Extracts media information using the command arguments provided asynchronously. + *
Starts an asynchronous FFprobe execution to extract media information using command arguments. The command + * passed to this method must generate the output in JSON format in order to successfully extract media information + * from it. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * {@jlink ExecuteCallback} if you want to be notified about the result. * * @param arguments FFprobe command arguments that print media information for a file in JSON format * @param executeCallback callback that will be notified when execution is completed diff --git a/apple/src/FFmpegKit.h b/apple/src/FFmpegKit.h index 286621f..bcf8c85 100644 --- a/apple/src/FFmpegKit.h +++ b/apple/src/FFmpegKit.h @@ -29,8 +29,8 @@ #import "StatisticsCallback.h" /** - *
Main class to run
FFmpeg
commands. Supports executing commands both - * synchronously and asynchronously. + *Main class to run
FFmpeg
commands. Supports executing commands both synchronously and + * asynchronously. ** FFmpegSession *session = [FFmpegKit execute:@"-i file1.mp4 -c:v libxvid file1.avi"]; * @@ -52,7 +52,10 @@ + (FFmpegSession*)executeWithArguments:(NSArray*)arguments; /** - *Asynchronously executes FFmpeg with arguments provided. + *
Starts an asynchronous FFmpeg execution with arguments provided. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * ExecuteCallback if you want to be notified about the result. * * @param arguments FFmpeg command options/arguments as string array * @param executeCallback callback that will be called when the execution is completed @@ -61,7 +64,10 @@ + (FFmpegSession*)executeWithArgumentsAsync:(NSArray*)arguments withExecuteCallback:(ExecuteCallback)executeCallback; /** - *
Asynchronously executes FFmpeg with arguments provided. + *
Starts an asynchronous FFmpeg execution with arguments provided. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * ExecuteCallback if you want to be notified about the result. * * @param arguments FFmpeg command options/arguments as string array * @param executeCallback callback that will be called when the execution is completed @@ -72,7 +78,10 @@ + (FFmpegSession*)executeWithArgumentsAsync:(NSArray*)arguments withExecuteCallback:(ExecuteCallback)executeCallback withLogCallback:(LogCallback)logCallback withStatisticsCallback:(StatisticsCallback)statisticsCallback; /** - *
Asynchronously executes FFmpeg with arguments provided. + *
Starts an asynchronous FFmpeg execution with arguments provided. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * ExecuteCallback if you want to be notified about the result. * * @param arguments FFmpeg command options/arguments as string array * @param executeCallback callback that will be called when the execution is completed @@ -82,7 +91,10 @@ + (FFmpegSession*)executeWithArgumentsAsync:(NSArray*)arguments withExecuteCallback:(ExecuteCallback)executeCallback onDispatchQueue:(dispatch_queue_t)queue; /** - *
Asynchronously executes FFmpeg with arguments provided. + *
Starts an asynchronous FFmpeg execution with arguments provided. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * ExecuteCallback if you want to be notified about the result. * * @param arguments FFmpeg command options/arguments as string array * @param executeCallback callback that will be called when the execution is completed @@ -104,9 +116,11 @@ + (FFmpegSession*)execute:(NSString*)command; /** - *
Asynchronously executes FFmpeg command provided. Space character is used to split command - * into arguments. You can use single or double quote characters to specify arguments inside - * your command. + *
Starts an asynchronous FFmpeg execution for the given command. Space character is used to split the command + * into arguments. You can use single or double quote characters to specify arguments inside your command. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * ExecuteCallback if you want to be notified about the result. * * @param command FFmpeg command * @param executeCallback callback that will be called when the execution is completed @@ -115,9 +129,11 @@ + (FFmpegSession*)executeAsync:(NSString*)command withExecuteCallback:(ExecuteCallback)executeCallback; /** - *
Asynchronously executes FFmpeg command provided. Space character is used to split command - * into arguments. You can use single or double quote characters to specify arguments inside - * your command. + *
Starts an asynchronous FFmpeg execution for the given command. Space character is used to split the command + * into arguments. You can use single or double quote characters to specify arguments inside your command. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * ExecuteCallback if you want to be notified about the result. * * @param command FFmpeg command * @param executeCallback callback that will be called when the execution is completed @@ -128,9 +144,11 @@ + (FFmpegSession*)executeAsync:(NSString*)command withExecuteCallback:(ExecuteCallback)executeCallback withLogCallback:(LogCallback)logCallback withStatisticsCallback:(StatisticsCallback)statisticsCallback; /** - *
Asynchronously executes FFmpeg command provided. Space character is used to split command - * into arguments. You can use single or double quote characters to specify arguments inside - * your command. + *
Starts an asynchronous FFmpeg execution for the given command. Space character is used to split the command + * into arguments. You can use single or double quote characters to specify arguments inside your command. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * ExecuteCallback if you want to be notified about the result. * * @param command FFmpeg command * @param executeCallback callback that will be called when the execution is completed @@ -140,9 +158,11 @@ + (FFmpegSession*)executeAsync:(NSString*)command withExecuteCallback:(ExecuteCallback)executeCallback onDispatchQueue:(dispatch_queue_t)queue; /** - *
Asynchronously executes FFmpeg command provided. Space character is used to split command - * into arguments. You can use single or double quote characters to specify arguments inside - * your command. + *
Starts an asynchronous FFmpeg execution for the given command. Space character is used to split the command + * into arguments. You can use single or double quote characters to specify arguments inside your command. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * ExecuteCallback if you want to be notified about the result. * * @param command FFmpeg command * @param executeCallback callback that will be called when the execution is completed diff --git a/apple/src/FFmpegKitConfig.h b/apple/src/FFmpegKitConfig.h index a7f9a69..59ddb62 100644 --- a/apple/src/FFmpegKitConfig.h +++ b/apple/src/FFmpegKitConfig.h @@ -189,14 +189,20 @@ typedef NS_ENUM(NSUInteger, Signal) { + (void)getMediaInformationExecute:(MediaInformationSession*)mediaInformationSession withTimeout:(int)waitTimeout; /** - *
Asynchronously executes the FFmpeg session provided. + *
Starts an asynchronous FFmpeg execution for the given session. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * ExecuteCallback if you want to be notified about the result. * * @param ffmpegSession FFmpeg session which includes command options/arguments */ + (void)asyncFFmpegExecute:(FFmpegSession*)ffmpegSession; /** - *
Asynchronously executes the FFmpeg session provided. + *
Starts an asynchronous FFmpeg execution for the given session. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * ExecuteCallback if you want to be notified about the result. * * @param ffmpegSession FFmpeg session which includes command options/arguments * @param queue dispatch queue that will be used to run this asynchronous operation @@ -204,14 +210,20 @@ typedef NS_ENUM(NSUInteger, Signal) { + (void)asyncFFmpegExecute:(FFmpegSession*)ffmpegSession onDispatchQueue:(dispatch_queue_t)queue; /** - *
Asynchronously executes the FFprobe session provided. + *
Starts an asynchronous FFprobe execution for the given session. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * ExecuteCallback if you want to be notified about the result. * * @param ffprobeSession FFprobe session which includes command options/arguments */ + (void)asyncFFprobeExecute:(FFprobeSession*)ffprobeSession; /** - *
Asynchronously executes the FFprobe session provided. + *
Starts an asynchronous FFprobe execution for the given session. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * ExecuteCallback if you want to be notified about the result. * * @param ffprobeSession FFprobe session which includes command options/arguments * @param queue dispatch queue that will be used to run this asynchronous operation @@ -219,7 +231,10 @@ typedef NS_ENUM(NSUInteger, Signal) { + (void)asyncFFprobeExecute:(FFprobeSession*)ffprobeSession onDispatchQueue:(dispatch_queue_t)queue; /** - *
Asynchronously executes the media information session provided. + *
Starts an asynchronous FFprobe execution for the given media information session. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * ExecuteCallback if you want to be notified about the result. * * @param mediaInformationSession media information session which includes command options/arguments * @param waitTimeout max time to wait until media information is transmitted @@ -227,7 +242,10 @@ typedef NS_ENUM(NSUInteger, Signal) { + (void)asyncGetMediaInformationExecute:(MediaInformationSession*)mediaInformationSession withTimeout:(int)waitTimeout; /** - *
Asynchronously executes the media information session provided. + *
Starts an asynchronous FFprobe execution for the given media information session. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * ExecuteCallback if you want to be notified about the result. * * @param mediaInformationSession media information session which includes command options/arguments * @param queue dispatch queue that will be used to run this asynchronous operation diff --git a/apple/src/FFprobeKit.h b/apple/src/FFprobeKit.h index 1a11c90..132e644 100644 --- a/apple/src/FFprobeKit.h +++ b/apple/src/FFprobeKit.h @@ -27,8 +27,8 @@ #import "MediaInformationJsonParser.h" /** - *
Main class to run
FFprobe
commands. Supports executing commands both - * synchronously and asynchronously. + *Main class to run
FFprobe
commands. Supports executing commands both synchronously and + * asynchronously. ** FFprobeSession *session = [FFprobeKit execute:@"-hide_banner -v error -show_entries format=size -of default=noprint_wrappers=1 file1.mp4"]; * @@ -54,7 +54,10 @@ + (FFprobeSession*)executeWithArguments:(NSArray*)arguments; /** - *Asynchronously executes FFprobe with arguments provided. + *
Starts an asynchronous FFprobe execution with arguments provided. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * ExecuteCallback if you want to be notified about the result. * * @param arguments FFprobe command options/arguments as string array * @param executeCallback callback that will be called when the execution is completed @@ -63,7 +66,10 @@ + (FFprobeSession*)executeWithArgumentsAsync:(NSArray*)arguments withExecuteCallback:(ExecuteCallback)executeCallback; /** - *
Asynchronously executes FFprobe with arguments provided. + *
Starts an asynchronous FFprobe execution with arguments provided. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * ExecuteCallback if you want to be notified about the result. * * @param arguments FFprobe command options/arguments as string array * @param executeCallback callback that will be notified when execution is completed @@ -73,7 +79,10 @@ + (FFprobeSession*)executeWithArgumentsAsync:(NSArray*)arguments withExecuteCallback:(ExecuteCallback)executeCallback withLogCallback:(LogCallback)logCallback; /** - *
Asynchronously executes FFprobe with arguments provided. + *
Starts an asynchronous FFprobe execution with arguments provided. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * ExecuteCallback if you want to be notified about the result. * * @param arguments FFprobe command options/arguments as string array * @param executeCallback callback that will be called when the execution is completed @@ -83,7 +92,10 @@ + (FFprobeSession*)executeWithArgumentsAsync:(NSArray*)arguments withExecuteCallback:(ExecuteCallback)executeCallback onDispatchQueue:(dispatch_queue_t)queue; /** - *
Asynchronously executes FFprobe with arguments provided. + *
Starts an asynchronous FFprobe execution with arguments provided. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * ExecuteCallback if you want to be notified about the result. * * @param arguments FFprobe command options/arguments as string array * @param executeCallback callback that will be notified when execution is completed @@ -104,9 +116,11 @@ + (FFprobeSession*)execute:(NSString*)command; /** - *
Asynchronously executes FFprobe command provided. Space character is used to split command - * into arguments. You can use single or double quote characters to specify arguments inside - * your command. + *
Starts an asynchronous FFprobe execution for the given command. Space character is used to split the command + * into arguments. You can use single or double quote characters to specify arguments inside your command. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * ExecuteCallback if you want to be notified about the result. * * @param command FFprobe command * @param executeCallback callback that will be called when the execution is completed @@ -115,9 +129,11 @@ + (FFprobeSession*)executeAsync:(NSString*)command withExecuteCallback:(ExecuteCallback)executeCallback; /** - *
Asynchronously executes FFprobe command provided. Space character is used to split command - * into arguments. You can use single or double quote characters to specify arguments inside - * your command. + *
Starts an asynchronous FFprobe execution for the given command. Space character is used to split the command + * into arguments. You can use single or double quote characters to specify arguments inside your command. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * ExecuteCallback if you want to be notified about the result. * * @param command FFprobe command * @param executeCallback callback that will be notified when execution is completed @@ -127,9 +143,11 @@ + (FFprobeSession*)executeAsync:(NSString*)command withExecuteCallback:(ExecuteCallback)executeCallback withLogCallback:(LogCallback)logCallback; /** - *
Asynchronously executes FFprobe command provided. Space character is used to split command - * into arguments. You can use single or double quote characters to specify arguments inside - * your command. + *
Starts an asynchronous FFprobe execution for the given command. Space character is used to split the command + * into arguments. You can use single or double quote characters to specify arguments inside your command. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * ExecuteCallback if you want to be notified about the result. * * @param command FFprobe command * @param executeCallback callback that will be called when the execution is completed @@ -139,9 +157,11 @@ + (FFprobeSession*)executeAsync:(NSString*)command withExecuteCallback:(ExecuteCallback)executeCallback onDispatchQueue:(dispatch_queue_t)queue; /** - *
Asynchronously executes FFprobe command provided. Space character is used to split command - * into arguments. You can use single or double quote characters to specify arguments inside - * your command. + *
Starts an asynchronous FFprobe execution for the given command. Space character is used to split the command + * into arguments. You can use single or double quote characters to specify arguments inside your command. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * ExecuteCallback if you want to be notified about the result. * * @param command FFprobe command * @param executeCallback callback that will be called when the execution is completed @@ -169,7 +189,10 @@ + (MediaInformationSession*)getMediaInformation:(NSString*)path withTimeout:(int)waitTimeout; /** - *
Extracts media information for the file specified with path asynchronously. + *
Starts an asynchronous FFprobe execution to extract the media information for the specified file. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * ExecuteCallback if you want to be notified about the result. * * @param path path or uri of a media file * @param executeCallback callback that will be called when the execution is completed @@ -178,7 +201,10 @@ + (MediaInformationSession*)getMediaInformationAsync:(NSString*)path withExecuteCallback:(ExecuteCallback)executeCallback; /** - *
Extracts media information for the file specified with path asynchronously. + *
Starts an asynchronous FFprobe execution to extract the media information for the specified file. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * ExecuteCallback if you want to be notified about the result. * * @param path path or uri of a media file * @param executeCallback callback that will be notified when execution is completed @@ -189,7 +215,10 @@ + (MediaInformationSession*)getMediaInformationAsync:(NSString*)path withExecuteCallback:(ExecuteCallback)executeCallback withLogCallback:(LogCallback)logCallback withTimeout:(int)waitTimeout; /** - *
Extracts media information for the file specified with path asynchronously. + *
Starts an asynchronous FFprobe execution to extract the media information for the specified file. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * ExecuteCallback if you want to be notified about the result. * * @param path path or uri of a media file * @param executeCallback callback that will be called when the execution is completed @@ -199,7 +228,10 @@ + (MediaInformationSession*)getMediaInformationAsync:(NSString*)path withExecuteCallback:(ExecuteCallback)executeCallback onDispatchQueue:(dispatch_queue_t)queue; /** - *
Extracts media information for the file specified with path asynchronously. + *
Starts an asynchronous FFprobe execution to extract the media information for the specified file. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * ExecuteCallback if you want to be notified about the result. * * @param path path or uri of a media file * @param executeCallback callback that will be notified when execution is completed @@ -219,7 +251,11 @@ + (MediaInformationSession*)getMediaInformationFromCommand:(NSString*)command; /** - *
Extracts media information using the command provided asynchronously. + *
Starts an asynchronous FFprobe execution to extract media information using a command. The command passed to + * this method must generate the output in JSON format in order to successfully extract media information from it. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * ExecuteCallback if you want to be notified about the result. * * @param command FFprobe command that prints media information for a file in JSON format * @param executeCallback callback that will be notified when execution is completed diff --git a/flutter/flutter/README.md b/flutter/flutter/README.md index 3c2ae0b..b521434 100644 --- a/flutter/flutter/README.md +++ b/flutter/flutter/README.md @@ -77,6 +77,33 @@ same source code but is built with different settings (Architectures, API Level, [LTS Releases](https://github.com/tanersener/ffmpeg-kit#10-lts-releases) section of the project README to see how they compare to each other. +#### 2.5 Android and iOS Support + +The following table shows the Android API level and iOS deployment target required in `ffmpeg_kit_flutter` releases. + +
Main Release | +LTS Release | +||
---|---|---|---|
Android API Level |
+iOS Minimum Deployment Target |
+Android API Level |
+iOS Minimum Deployment Target |
+
24 | +12.1 | +16 | +9.3 | +
Package | +Main Release | +LTS Release | +||||
---|---|---|---|---|---|---|
+ | Name | +Android API Level |
+iOS Minimum Deployment Target |
+Name | +Android API Level |
+iOS Minimum Deployment Target |
+
min | +min | +24 | +12.1 | +min-lts | +16 | +9.3 | +
min-gpl | +min-gpl | +24 | +12.1 | +min-gpl-lts | +16 | +9.3 | +
https | +(*) https | +24 | +12.1 | +https-lts | +16 | +9.3 | +
https-gpl | +https-gpl | +24 | +12.1 | +https-gpl-lts | +16 | +9.3 | +
audio | +audio | +24 | +12.1 | +audio-lts | +16 | +9.3 | +
video | +video | +24 | +12.1 | +video-lts | +16 | +9.3 | +
full | +full | +24 | +12.1 | +full-lts | +16 | +9.3 | +
full-gpl | +full-gpl | +24 | +12.1 | +full-gpl-lts | +16 | +9.3 | +
Asynchronously executes FFmpeg with command provided. + *
Starts an asynchronous FFmpeg execution for the given command. Space character is used to split the command + * into arguments. You can use single or double quote characters to specify arguments inside your command. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * ExecuteCallback if you want to be notified about the result. * * @param command FFmpeg command * @param executeCallback callback that will be called when the execution is completed @@ -723,7 +727,10 @@ export class FFmpegKit { } /** - *
Asynchronously executes FFmpeg with arguments provided. + *
Starts an asynchronous FFmpeg execution with arguments provided. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * ExecuteCallback if you want to be notified about the result. * * @param commandArguments FFmpeg command options/arguments as string array * @param executeCallback callback that will be called when the execution is completed @@ -951,7 +958,10 @@ export class FFmpegKitConfig { } /** - *
Asynchronously executes the FFmpeg session provided. + *
Starts an asynchronous FFmpeg execution for the given session. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * ExecuteCallback if you want to be notified about the result. * * @param ffmpegSession FFmpeg session which includes command options/arguments */ @@ -962,7 +972,10 @@ export class FFmpegKitConfig { } /** - *
Asynchronously executes the FFprobe session provided. + *
Starts an asynchronous FFprobe execution for the given session. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * ExecuteCallback if you want to be notified about the result. * * @param ffprobeSession FFprobe session which includes command options/arguments */ @@ -973,7 +986,10 @@ export class FFmpegKitConfig { } /** - *
Asynchronously executes the media information session provided. + *
Starts an asynchronous FFprobe execution for the given media information session. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * ExecuteCallback if you want to be notified about the result. * * @param mediaInformationSession media information session which includes command options/arguments * @param waitTimeout max time to wait until media information is transmitted @@ -1812,7 +1828,11 @@ export class FFmpegSession extends AbstractSession { export class FFprobeKit { /** - *
Asynchronously executes FFprobe with arguments provided. + *
Starts an asynchronous FFprobe execution for the given command. Space character is used to split the command + * into arguments. You can use single or double quote characters to specify arguments inside your command. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * ExecuteCallback if you want to be notified about the result. * * @param command FFprobe command * @param executeCallback callback that will be called when the execution is completed @@ -1824,7 +1844,10 @@ export class FFprobeKit { } /** - *
Asynchronously executes FFprobe with arguments provided. + *
Starts an asynchronous FFprobe execution with arguments provided. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * ExecuteCallback if you want to be notified about the result. * * @param commandArguments FFprobe command options/arguments as string array * @param executeCallback callback that will be called when the execution is completed @@ -1840,7 +1863,10 @@ export class FFprobeKit { } /** - *
Extracts the media information for the specified file asynchronously. + *
Starts an asynchronous FFprobe execution to extract the media information for the specified file. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * ExecuteCallback if you want to be notified about the result. * * @param path path or uri of a media file * @param executeCallback callback that will be notified when execution is completed @@ -1854,7 +1880,11 @@ export class FFprobeKit { } /** - *
Extracts media information using the command provided asynchronously. + *
Starts an asynchronous FFprobe execution to extract media information using a command. The command passed to + * this method must generate the output in JSON format in order to successfully extract media information from it. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * ExecuteCallback if you want to be notified about the result. * * @param command FFprobe command that prints media information for a file in JSON format * @param executeCallback callback that will be notified when execution is completed @@ -1867,7 +1897,12 @@ export class FFprobeKit { } /** - *
Extracts media information using the command arguments provided asynchronously. + *
Starts an asynchronous FFprobe execution to extract media information using command arguments. The command + * passed to this method must generate the output in JSON format in order to successfully extract media information + * from it. + * + *
Note that this method returns immediately and does not wait the execution to complete. You must use an + * ExecuteCallback if you want to be notified about the result. * * @param commandArguments FFprobe command arguments that prints media information for a file in JSON format * @param executeCallback callback that will be notified when execution is completed