| FFmpegKit Android API 6.0

Loading...
Searching...
No Matches
Data Structures | Macros | Functions | Variables
ffmpegkit.c File Reference

Go to the source code of this file.

## Data Structures
struct | CallbackData

## Macros
#define | LogType 1
#define | StatisticsType 2
#define | SESSION_MAP_SIZE 1000

## Functions
int | ffmpeg_execute (int argc, char **argv)
static const char * | avutil_log_get_level_str (int level)
static void | avutil_log_format_line (void *avcl, int level, const char *fmt, va_list vl, AVBPrint part[4], int *print_prefix)
static void | avutil_log_sanitize (uint8_t *line)
void | mutexInit ()
void | monitorInit ()
void | mutexUnInit ()
void | monitorUnInit ()
void | mutexLock ()
void | mutexUnlock ()
void | monitorWait (int milliSeconds)
void | monitorNotify ()
void | logCallbackDataAdd (int level, AVBPrint *data)
void | statisticsCallbackDataAdd (int frameNumber, float fps, float quality, int64_t size, double time, double bitrate, double speed)
void | addSession (long id)
struct CallbackData * | callbackDataRemove ()
void | removeSession (long id)
void | cancelSession (long id)
int | cancelRequested (long id)
void | resetMessagesInTransmit (long id)
void | ffmpegkit_log_callback_function (void *ptr, int level, const char *format, va_list vargs)
void | ffmpegkit_statistics_callback_function (int frameNumber, float fps, float quality, int64_t size, double time, double bitrate, double speed)
void * | callbackThreadFunction ()
int | saf_open (int safId)
int | saf_close (int fd)
static void | enableNativeRedirection ()
jint | JNI_OnLoad (JavaVM *vm, void *reserved)
JNIEXPORT void JNICALL | Java_com_arthenica_ffmpegkit_FFmpegKitConfig_setNativeLogLevel (JNIEnv *env, jclass object, jint level)
JNIEXPORT jint JNICALL | Java_com_arthenica_ffmpegkit_FFmpegKitConfig_getNativeLogLevel (JNIEnv *env, jclass object)
JNIEXPORT void JNICALL | Java_com_arthenica_ffmpegkit_FFmpegKitConfig_enableNativeRedirection (JNIEnv *env, jclass object)
JNIEXPORT void JNICALL | Java_com_arthenica_ffmpegkit_FFmpegKitConfig_disableNativeRedirection (JNIEnv *env, jclass object)
JNIEXPORT jstring JNICALL | Java_com_arthenica_ffmpegkit_FFmpegKitConfig_getNativeFFmpegVersion (JNIEnv *env, jclass object)
JNIEXPORT jstring JNICALL | Java_com_arthenica_ffmpegkit_FFmpegKitConfig_getNativeVersion (JNIEnv *env, jclass object)
JNIEXPORT jint JNICALL | Java_com_arthenica_ffmpegkit_FFmpegKitConfig_nativeFFmpegExecute (JNIEnv *env, jclass object, jlong id, jobjectArray stringArray)
JNIEXPORT void JNICALL | Java_com_arthenica_ffmpegkit_FFmpegKitConfig_nativeFFmpegCancel (JNIEnv *env, jclass object, jlong id)
JNIEXPORT int JNICALL | Java_com_arthenica_ffmpegkit_FFmpegKitConfig_registerNewNativeFFmpegPipe (JNIEnv *env, jclass object, jstring ffmpegPipePath)
JNIEXPORT jstring JNICALL | Java_com_arthenica_ffmpegkit_FFmpegKitConfig_getNativeBuildDate (JNIEnv *env, jclass object)
JNIEXPORT int JNICALL | Java_com_arthenica_ffmpegkit_FFmpegKitConfig_setNativeEnvironmentVariable (JNIEnv *env, jclass object, jstring variableName, jstring variableValue)
JNIEXPORT void JNICALL | Java_com_arthenica_ffmpegkit_FFmpegKitConfig_ignoreNativeSignal (JNIEnv *env, jclass object, jint signum)
JNIEXPORT int JNICALL | Java_com_arthenica_ffmpegkit_FFmpegKitConfig_messagesInTransmit (JNIEnv *env, jclass object, jlong id)

## Variables
static atomic_short | sessionMap [SESSION_MAP_SIZE]
static atomic_int | sessionInTransitMessageCountMap [SESSION_MAP_SIZE]
static pthread_mutex_t | lockMutex
static pthread_mutex_t | monitorMutex
static pthread_cond_t | monitorCondition
pthread_t | callbackThread
int | redirectionEnabled
struct CallbackData * | callbackDataHead
struct CallbackData * | callbackDataTail
static JavaVM * | globalVm
static jclass | configClass
static jmethodID | logMethod
static jmethodID | statisticsMethod
static jmethodID | safOpenMethod
static jmethodID | safCloseMethod
static jclass | stringClass
static jmethodID | stringConstructor
const char * | configClassName = "com/arthenica/ffmpegkit/FFmpegKitConfig"
const char * | stringClassName = "java/lang/String"
volatile int | handleSIGQUIT = 1
volatile int | handleSIGINT = 1
volatile int | handleSIGTERM = 1
volatile int | handleSIGXCPU = 1
volatile int | handleSIGPIPE = 1
__thread long | globalSessionId = 0
int | configuredLogLevel = AV_LOG_INFO
JNINativeMethod | configMethods []

## Macro Definition Documentation

## ◆ LogType

#define LogType 1

Definition at line 33 of file ffmpegkit.c.

## ◆ SESSION_MAP_SIZE

#define SESSION_MAP_SIZE 1000

Session control variables

Definition at line 56 of file ffmpegkit.c.

## ◆ StatisticsType

#define StatisticsType 2

Definition at line 34 of file ffmpegkit.c.

## Function Documentation

## ◆ addSession()

void addSession | ( | long | id | ) |

Adds a session id to the session map.

Parameters

  id | session id

Definition at line 361 of file ffmpegkit.c.

## ◆ avutil_log_format_line()

static void avutil_log_format_line | ( | void * | avcl,
|  | int | level,
|  | const char * | fmt,
|  | va_list | vl,
|  | AVBPrint | part[4],
|  | int * | print_prefix
| ) |  |
| static

Definition at line 160 of file ffmpegkit.c.

## ◆ avutil_log_get_level_str()

static const char * avutil_log_get_level_str | ( | int | level | ) |
| static

Definition at line 135 of file ffmpegkit.c.

## ◆ avutil_log_sanitize()

static void avutil_log_sanitize | ( | uint8_t * | line | ) |
| static

Definition at line 192 of file ffmpegkit.c.

## ◆ callbackDataRemove()

struct CallbackData * callbackDataRemove | ( |  | ) |

Removes head of callback data list.

Definition at line 368 of file ffmpegkit.c.

## ◆ callbackThreadFunction()

void * callbackThreadFunction | ( |  | ) |

Forwards callback messages to Java classes.

Definition at line 501 of file ffmpegkit.c.

## ◆ cancelRequested()

int cancelRequested | ( | long | id | ) |

Checks whether a cancel request for the given session id exists in the session map.

Parameters

  id | session id

Returns
  1 if exists, false otherwise

Definition at line 421 of file ffmpegkit.c.

## ◆ cancelSession()

void cancelSession | ( | long | id | ) |

Adds a cancel session request to the session map.

Parameters

  id | session id

Definition at line 411 of file ffmpegkit.c.

## ◆ enableNativeRedirection()

static void enableNativeRedirection | ( |  | ) |
| static

Used by JNI methods to enable redirection.

Definition at line 587 of file ffmpegkit.c.

## ◆ ffmpeg_execute()

int ffmpeg_execute | ( | int | argc,
|  | char ** | argv
| ) |  |

Forward declaration for function defined in fftools_ffmpeg.c

Definition at line 4378 of file fftools_ffmpeg.c.

## ◆ ffmpegkit_log_callback_function()

void ffmpegkit_log_callback_function | ( | void * | ptr,
|  | int | level,
|  | const char * | format,
|  | va_list | vargs
| ) |  |

Callback function for FFmpeg logs.

Parameters

  ptr | pointer to AVClass struct
  level | log level
  format | format string
  vargs | arguments

Definition at line 446 of file ffmpegkit.c.

## ◆ ffmpegkit_statistics_callback_function()

void ffmpegkit_statistics_callback_function | ( | int | frameNumber,
|  | float | fps,
|  | float | quality,
|  | int64_t | size,
|  | double | time,
|  | double | bitrate,
|  | double | speed
| ) |  |

Callback function for FFmpeg statistics.

Parameters

  frameNumber | last processed frame number
  fps | frames processed per second
  quality | quality of the output stream (video only)
  size | size in bytes
  time | processed output duration
  bitrate | output bit rate in kbits/s
  speed | processing speed = processed duration / operation duration

Definition at line 494 of file ffmpegkit.c.

## ◆ Java_com_arthenica_ffmpegkit_FFmpegKitConfig_disableNativeRedirection()

JNIEXPORT void JNICALL Java_com_arthenica_ffmpegkit_FFmpegKitConfig_disableNativeRedirection | ( | JNIEnv * | env,
|  | jclass | object
| ) |  |

Disables log and statistics redirection.

Parameters

  env | pointer to native method interface
  object | reference to the class on which this method is invoked

Definition at line 734 of file ffmpegkit.c.

## ◆ Java_com_arthenica_ffmpegkit_FFmpegKitConfig_enableNativeRedirection()

JNIEXPORT void JNICALL Java_com_arthenica_ffmpegkit_FFmpegKitConfig_enableNativeRedirection | ( | JNIEnv * | env,
|  | jclass | object
| ) |  |

Enables log and statistics redirection.

Parameters

  env | pointer to native method interface
  object | reference to the class on which this method is invoked

Definition at line 724 of file ffmpegkit.c.

## ◆ Java_com_arthenica_ffmpegkit_FFmpegKitConfig_getNativeBuildDate()

JNIEXPORT jstring JNICALL Java_com_arthenica_ffmpegkit_FFmpegKitConfig_getNativeBuildDate | ( | JNIEnv * | env,
|  | jclass | object
| ) |  |

Returns FFmpegKit library build date natively.

Parameters

  env | pointer to native method interface
  object | reference to the class on which this method is invoked

Returns
  FFmpegKit library build date

Definition at line 874 of file ffmpegkit.c.

## ◆ Java_com_arthenica_ffmpegkit_FFmpegKitConfig_getNativeFFmpegVersion()

JNIEXPORT jstring JNICALL Java_com_arthenica_ffmpegkit_FFmpegKitConfig_getNativeFFmpegVersion | ( | JNIEnv * | env,
|  | jclass | object
| ) |  |

Returns FFmpeg version bundled within the library natively.

Parameters

  env | pointer to native method interface
  object | reference to the class on which this method is invoked

Returns
  FFmpeg version string

Definition at line 759 of file ffmpegkit.c.

## ◆ Java_com_arthenica_ffmpegkit_FFmpegKitConfig_getNativeLogLevel()

JNIEXPORT jint JNICALL Java_com_arthenica_ffmpegkit_FFmpegKitConfig_getNativeLogLevel | ( | JNIEnv * | env,
|  | jclass | object
| ) |  |

Returns current log level.

Parameters

  env | pointer to native method interface
  object | reference to the class on which this method is invoked

Definition at line 714 of file ffmpegkit.c.

## ◆ Java_com_arthenica_ffmpegkit_FFmpegKitConfig_getNativeVersion()

JNIEXPORT jstring JNICALL Java_com_arthenica_ffmpegkit_FFmpegKitConfig_getNativeVersion | ( | JNIEnv * | env,
|  | jclass | object
| ) |  |

Returns FFmpegKit library version natively.

Parameters

  env | pointer to native method interface
  object | reference to the class on which this method is invoked

Returns
  FFmpegKit version string

Definition at line 770 of file ffmpegkit.c.

## ◆ Java_com_arthenica_ffmpegkit_FFmpegKitConfig_ignoreNativeSignal()

JNIEXPORT void JNICALL Java_com_arthenica_ffmpegkit_FFmpegKitConfig_ignoreNativeSignal | ( | JNIEnv * | env,
|  | jclass | object,
|  | jint | signum
| ) |  |

Registers a new ignored signal. Ignored signals are not handled by the library.

Parameters

  env | pointer to native method interface
  object | reference to the class on which this method is invoked
  signum | signal number

Definition at line 907 of file ffmpegkit.c.

## ◆ Java_com_arthenica_ffmpegkit_FFmpegKitConfig_messagesInTransmit()

JNIEXPORT int JNICALL Java_com_arthenica_ffmpegkit_FFmpegKitConfig_messagesInTransmit | ( | JNIEnv * | env,
|  | jclass | object,
|  | jlong | id
| ) |  |

Returns the number of native messages which are not transmitted to the Java callbacks for the given session.

Parameters

  env | pointer to native method interface
  object | reference to the class on which this method is invoked
  id | session id

Definition at line 929 of file ffmpegkit.c.

## ◆ Java_com_arthenica_ffmpegkit_FFmpegKitConfig_nativeFFmpegCancel()

JNIEXPORT void JNICALL Java_com_arthenica_ffmpegkit_FFmpegKitConfig_nativeFFmpegCancel | ( | JNIEnv * | env,
|  | jclass | object,
|  | jlong | id
| ) |  |

Cancels an ongoing FFmpeg operation natively.

Parameters

  env | pointer to native method interface
  object | reference to the class on which this method is invoked
  id | session id

Definition at line 849 of file ffmpegkit.c.

## ◆ Java_com_arthenica_ffmpegkit_FFmpegKitConfig_nativeFFmpegExecute()

JNIEXPORT jint JNICALL Java_com_arthenica_ffmpegkit_FFmpegKitConfig_nativeFFmpegExecute | ( | JNIEnv * | env,
|  | jclass | object,
|  | jlong | id,
|  | jobjectArray | stringArray
| ) |  |

Synchronously executes FFmpeg natively with arguments provided.

Parameters

  env | pointer to native method interface
  object | reference to the class on which this method is invoked
  id | session id
  stringArray | reference to the object holding FFmpeg command arguments

Returns
  zero on successful execution, non-zero on error

Definition at line 783 of file ffmpegkit.c.

## ◆ Java_com_arthenica_ffmpegkit_FFmpegKitConfig_registerNewNativeFFmpegPipe()

JNIEXPORT int JNICALL Java_com_arthenica_ffmpegkit_FFmpegKitConfig_registerNewNativeFFmpegPipe | ( | JNIEnv * | env,
|  | jclass | object,
|  | jstring | ffmpegPipePath
| ) |  |

Creates natively a new named pipe to use in FFmpeg operations.

Parameters

  env | pointer to native method interface
  object | reference to the class on which this method is invoked
  ffmpegPipePath | full path of ffmpeg pipe

Returns
  zero on successful creation, non-zero on error

Definition at line 861 of file ffmpegkit.c.

## ◆ Java_com_arthenica_ffmpegkit_FFmpegKitConfig_setNativeEnvironmentVariable()

JNIEXPORT int JNICALL Java_com_arthenica_ffmpegkit_FFmpegKitConfig_setNativeEnvironmentVariable | ( | JNIEnv * | env,
|  | jclass | object,
|  | jstring | variableName,
|  | jstring | variableValue
| ) |  |

Sets an environment variable natively

Parameters

  env | pointer to native method interface
  object | reference to the class on which this method is invoked
  variableName | environment variable name
  variableValue | environment variable value

Returns
  zero on success, non-zero on error

Definition at line 889 of file ffmpegkit.c.

## ◆ Java_com_arthenica_ffmpegkit_FFmpegKitConfig_setNativeLogLevel()

JNIEXPORT void JNICALL Java_com_arthenica_ffmpegkit_FFmpegKitConfig_setNativeLogLevel | ( | JNIEnv * | env,
|  | jclass | object,
|  | jint | level
| ) |  |

Sets log level.

Parameters

  env | pointer to native method interface
  object | reference to the class on which this method is invoked
  level | log level

Definition at line 704 of file ffmpegkit.c.

## ◆ JNI_OnLoad()

jint JNI_OnLoad | ( | JavaVM * | vm,
|  | void * | reserved
| ) |  |

Called when 'ffmpegkit' native library is loaded.

Parameters

  vm | pointer to the running virtual machine
  reserved | reserved

Returns
  JNI version needed by 'ffmpegkit' library

Definition at line 615 of file ffmpegkit.c.

## ◆ logCallbackDataAdd()

void logCallbackDataAdd | ( | int | level,
|  | AVBPrint * | data
| ) |  |

Adds log data to the end of callback data list.

Parameters

  level | log level
  data | log data

Definition at line 276 of file ffmpegkit.c.

## ◆ monitorInit()

void monitorInit | ( |  | ) |

Definition at line 209 of file ffmpegkit.c.

## ◆ monitorNotify()

void monitorNotify | ( |  | ) |

Definition at line 264 of file ffmpegkit.c.

## ◆ monitorUnInit()

void monitorUnInit | ( |  | ) |

Definition at line 229 of file ffmpegkit.c.

## ◆ monitorWait()

void monitorWait | ( | int | milliSeconds | ) |

Definition at line 242 of file ffmpegkit.c.

## ◆ mutexInit()

void mutexInit | ( |  | ) |

Definition at line 200 of file ffmpegkit.c.

## ◆ mutexLock()

void mutexLock | ( |  | ) |

Definition at line 234 of file ffmpegkit.c.

## ◆ mutexUnInit()

void mutexUnInit | ( |  | ) |

Definition at line 225 of file ffmpegkit.c.

## ◆ mutexUnlock()

void mutexUnlock | ( |  | ) |

Definition at line 238 of file ffmpegkit.c.

## ◆ removeSession()

void removeSession | ( | long | id | ) |

Removes a session id from the session map.

Parameters

  id | session id

Definition at line 402 of file ffmpegkit.c.

## ◆ resetMessagesInTransmit()

void resetMessagesInTransmit | ( | long | id | ) |

Resets the number of messages in transmit for this session.

Parameters

  id | session id

Definition at line 434 of file ffmpegkit.c.

## ◆ saf_close()

int saf_close | ( | int | fd | ) |

Used by saf protocol; is expected to be called from a Java thread, therefore we don't need attach/detach

Definition at line 578 of file ffmpegkit.c.

## ◆ saf_open()

int saf_open | ( | int | safId | ) |

Used by saf protocol; is expected to be called from a Java thread, therefore we don't need attach/detach

Definition at line 569 of file ffmpegkit.c.

## ◆ statisticsCallbackDataAdd()

void statisticsCallbackDataAdd | ( | int | frameNumber,
|  | float | fps,
|  | float | quality,
|  | int64_t | size,
|  | double | time,
|  | double | bitrate,
|  | double | speed
| ) |  |

Adds statistics data to the end of callback data list.

Definition at line 315 of file ffmpegkit.c.

## Variable Documentation

## ◆ callbackDataHead

struct CallbackData* callbackDataHead

Definition at line 68 of file ffmpegkit.c.

## ◆ callbackDataTail

struct CallbackData* callbackDataTail

Definition at line 69 of file ffmpegkit.c.

## ◆ callbackThread

pthread_t callbackThread

Definition at line 65 of file ffmpegkit.c.

## ◆ configClass

jclass configClass
| static

Global reference of Config class in Java

Definition at line 75 of file ffmpegkit.c.

## ◆ configClassName

const char* configClassName = "com/arthenica/ffmpegkit/FFmpegKitConfig"

Full name of the Config class

Definition at line 96 of file ffmpegkit.c.

## ◆ configMethods

JNINativeMethod configMethods[]

Initial value:
= {
{"enableNativeRedirection", "()V", (void*) Java_com_arthenica_ffmpegkit_FFmpegKitConfig_enableNativeRedirection},
{"disableNativeRedirection", "()V", (void*) Java_com_arthenica_ffmpegkit_FFmpegKitConfig_disableNativeRedirection},
{"setNativeLogLevel", "(I)V", (void*) Java_com_arthenica_ffmpegkit_FFmpegKitConfig_setNativeLogLevel},
{"getNativeLogLevel", "()I", (void*) Java_com_arthenica_ffmpegkit_FFmpegKitConfig_getNativeLogLevel},
{"getNativeFFmpegVersion", "()Ljava/lang/String;", (void*) Java_com_arthenica_ffmpegkit_FFmpegKitConfig_getNativeFFmpegVersion},
{"getNativeVersion", "()Ljava/lang/String;", (void*) Java_com_arthenica_ffmpegkit_FFmpegKitConfig_getNativeVersion},
{"nativeFFmpegExecute", "(J[Ljava/lang/String;)I", (void*) Java_com_arthenica_ffmpegkit_FFmpegKitConfig_nativeFFmpegExecute},
{"nativeFFmpegCancel", "(J)V", (void*) Java_com_arthenica_ffmpegkit_FFmpegKitConfig_nativeFFmpegCancel},
{"nativeFFprobeExecute", "(J[Ljava/lang/String;)I", (void*) Java_com_arthenica_ffmpegkit_FFmpegKitConfig_nativeFFprobeExecute},
{"registerNewNativeFFmpegPipe", "(Ljava/lang/String;)I", (void*) Java_com_arthenica_ffmpegkit_FFmpegKitConfig_registerNewNativeFFmpegPipe},
{"getNativeBuildDate", "()Ljava/lang/String;", (void*) Java_com_arthenica_ffmpegkit_FFmpegKitConfig_getNativeBuildDate},
{"setNativeEnvironmentVariable", "(Ljava/lang/String;Ljava/lang/String;)I", (void*) Java_com_arthenica_ffmpegkit_FFmpegKitConfig_setNativeEnvironmentVariable},
{"ignoreNativeSignal", "(I)V", (void*) Java_com_arthenica_ffmpegkit_FFmpegKitConfig_ignoreNativeSignal},
{"messagesInTransmit", "(J)I", (void*) Java_com_arthenica_ffmpegkit_FFmpegKitConfig_messagesInTransmit}
}
Java_com_arthenica_ffmpegkit_FFmpegKitConfig_getNativeBuildDate
JNIEXPORT jstring JNICALL Java_com_arthenica_ffmpegkit_FFmpegKitConfig_getNativeBuildDate(JNIEnv *env, jclass object)
Definition ffmpegkit.c:874
Java_com_arthenica_ffmpegkit_FFmpegKitConfig_nativeFFmpegExecute
JNIEXPORT jint JNICALL Java_com_arthenica_ffmpegkit_FFmpegKitConfig_nativeFFmpegExecute(JNIEnv *env, jclass object, jlong id, jobjectArray stringArray)
Definition ffmpegkit.c:783
Java_com_arthenica_ffmpegkit_FFmpegKitConfig_enableNativeRedirection
JNIEXPORT void JNICALL Java_com_arthenica_ffmpegkit_FFmpegKitConfig_enableNativeRedirection(JNIEnv *env, jclass object)
Definition ffmpegkit.c:724
Java_com_arthenica_ffmpegkit_FFmpegKitConfig_setNativeLogLevel
JNIEXPORT void JNICALL Java_com_arthenica_ffmpegkit_FFmpegKitConfig_setNativeLogLevel(JNIEnv *env, jclass object, jint level)
Definition ffmpegkit.c:704
Java_com_arthenica_ffmpegkit_FFmpegKitConfig_nativeFFmpegCancel
JNIEXPORT void JNICALL Java_com_arthenica_ffmpegkit_FFmpegKitConfig_nativeFFmpegCancel(JNIEnv *env, jclass object, jlong id)
Definition ffmpegkit.c:849
Java_com_arthenica_ffmpegkit_FFmpegKitConfig_getNativeLogLevel
JNIEXPORT jint JNICALL Java_com_arthenica_ffmpegkit_FFmpegKitConfig_getNativeLogLevel(JNIEnv *env, jclass object)
Definition ffmpegkit.c:714
Java_com_arthenica_ffmpegkit_FFmpegKitConfig_getNativeFFmpegVersion
JNIEXPORT jstring JNICALL Java_com_arthenica_ffmpegkit_FFmpegKitConfig_getNativeFFmpegVersion(JNIEnv *env, jclass object)
Definition ffmpegkit.c:759
Java_com_arthenica_ffmpegkit_FFmpegKitConfig_ignoreNativeSignal
JNIEXPORT void JNICALL Java_com_arthenica_ffmpegkit_FFmpegKitConfig_ignoreNativeSignal(JNIEnv *env, jclass object, jint signum)
Definition ffmpegkit.c:907
Java_com_arthenica_ffmpegkit_FFmpegKitConfig_getNativeVersion
JNIEXPORT jstring JNICALL Java_com_arthenica_ffmpegkit_FFmpegKitConfig_getNativeVersion(JNIEnv *env, jclass object)
Definition ffmpegkit.c:770
Java_com_arthenica_ffmpegkit_FFmpegKitConfig_registerNewNativeFFmpegPipe
JNIEXPORT int JNICALL Java_com_arthenica_ffmpegkit_FFmpegKitConfig_registerNewNativeFFmpegPipe(JNIEnv *env, jclass object, jstring ffmpegPipePath)
Definition ffmpegkit.c:861
Java_com_arthenica_ffmpegkit_FFmpegKitConfig_disableNativeRedirection
JNIEXPORT void JNICALL Java_com_arthenica_ffmpegkit_FFmpegKitConfig_disableNativeRedirection(JNIEnv *env, jclass object)
Definition ffmpegkit.c:734
Java_com_arthenica_ffmpegkit_FFmpegKitConfig_setNativeEnvironmentVariable
JNIEXPORT int JNICALL Java_com_arthenica_ffmpegkit_FFmpegKitConfig_setNativeEnvironmentVariable(JNIEnv *env, jclass object, jstring variableName, jstring variableValue)
Definition ffmpegkit.c:889
Java_com_arthenica_ffmpegkit_FFmpegKitConfig_messagesInTransmit
JNIEXPORT int JNICALL Java_com_arthenica_ffmpegkit_FFmpegKitConfig_messagesInTransmit(JNIEnv *env, jclass object, jlong id)
Definition ffmpegkit.c:929
Java_com_arthenica_ffmpegkit_FFmpegKitConfig_nativeFFprobeExecute
JNIEXPORT jint JNICALL Java_com_arthenica_ffmpegkit_FFmpegKitConfig_nativeFFprobeExecute(JNIEnv *env, jclass object, jlong id, jobjectArray stringArray)
Definition ffprobekit.c:48

Prototypes of native functions defined by Config class.

Definition at line 115 of file ffmpegkit.c.

## ◆ configuredLogLevel

int configuredLogLevel = AV_LOG_INFO

Holds the default log level

Definition at line 112 of file ffmpegkit.c.

## ◆ globalSessionId

__thread long globalSessionId = 0

Holds the id of the current session

Definition at line 109 of file ffmpegkit.c.

## ◆ globalVm

JavaVM* globalVm
| static

Global reference to the virtual machine running

Definition at line 72 of file ffmpegkit.c.

## ◆ handleSIGINT

volatile int handleSIGINT = 1

Definition at line 103 of file ffmpegkit.c.

## ◆ handleSIGPIPE

volatile int handleSIGPIPE = 1

Definition at line 106 of file ffmpegkit.c.

## ◆ handleSIGQUIT

volatile int handleSIGQUIT = 1

Fields that control the handling of SIGNALs

Definition at line 102 of file ffmpegkit.c.

## ◆ handleSIGTERM

volatile int handleSIGTERM = 1

Definition at line 104 of file ffmpegkit.c.

## ◆ handleSIGXCPU

volatile int handleSIGXCPU = 1

Definition at line 105 of file ffmpegkit.c.

## ◆ lockMutex

pthread_mutex_t lockMutex
| static

Redirection control variables

Definition at line 61 of file ffmpegkit.c.

## ◆ logMethod

jmethodID logMethod
| static

Global reference of log redirection method in Java

Definition at line 78 of file ffmpegkit.c.

## ◆ monitorCondition

pthread_cond_t monitorCondition
| static

Definition at line 63 of file ffmpegkit.c.

## ◆ monitorMutex

pthread_mutex_t monitorMutex
| static

Definition at line 62 of file ffmpegkit.c.

## ◆ redirectionEnabled

int redirectionEnabled

Definition at line 66 of file ffmpegkit.c.

## ◆ safCloseMethod

jmethodID safCloseMethod
| static

Global reference of safClose method in Java

Definition at line 87 of file ffmpegkit.c.

## ◆ safOpenMethod

jmethodID safOpenMethod
| static

Global reference of safOpen method in Java

Definition at line 84 of file ffmpegkit.c.

## ◆ sessionInTransitMessageCountMap

atomic_int sessionInTransitMessageCountMap[SESSION_MAP_SIZE]
| static

Definition at line 58 of file ffmpegkit.c.

## ◆ sessionMap

atomic_short sessionMap[SESSION_MAP_SIZE]
| static

Definition at line 57 of file ffmpegkit.c.

## ◆ statisticsMethod

jmethodID statisticsMethod
| static

Global reference of statistics redirection method in Java

Definition at line 81 of file ffmpegkit.c.

## ◆ stringClass

jclass stringClass
| static

Global reference of String class in Java

Definition at line 90 of file ffmpegkit.c.

## ◆ stringClassName

const char* stringClassName = "java/lang/String"

Full name of String class

Definition at line 99 of file ffmpegkit.c.

## ◆ stringConstructor

jmethodID stringConstructor
| static

Global reference of String constructor in Java

Definition at line 93 of file ffmpegkit.c.