Package com.arthenica.ffmpegkit
Interface Session
-
- All Known Implementing Classes:
AbstractSession,FFmpegSession,FFprobeSession,MediaInformationSession
public interface SessionCommon interface for all
FFmpegKitsessions.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description voidaddLog(Log log)Adds a new log entry for this session.voidcancel()Cancels running the session.java.util.List<Log>getAllLogs()Returns all log entries generated for this session.java.util.List<Log>getAllLogs(int waitTimeout)Returns all log entries generated for this session.java.lang.StringgetAllLogsAsString()Returns all log entries generated for this session as a concatenated string.java.lang.StringgetAllLogsAsString(int waitTimeout)Returns all log entries generated for this session as a concatenated string.java.lang.String[]getArguments()Returns command arguments as an array.java.lang.StringgetCommand()Returns command arguments as a concatenated string.java.util.DategetCreateTime()Returns session create time.longgetDuration()Returns the time taken to execute this session.java.util.DategetEndTime()Returns session end time.ExecuteCallbackgetExecuteCallback()Returns the session specific execute callback function.java.lang.StringgetFailStackTrace()Returns the stack trace of the exception received while executing this session.java.util.concurrent.Future<?>getFuture()Returns the future created for this session, if it is executed asynchronously.LogCallbackgetLogCallback()Returns the session specific log callback function.LogRedirectionStrategygetLogRedirectionStrategy()Returns session specific log redirection strategy.java.util.List<Log>getLogs()Returns all log entries delivered for this session.java.lang.StringgetLogsAsString()Returns all log entries delivered for this session as a concatenated string.java.lang.StringgetOutput()Returns the log output generated while running the session.ReturnCodegetReturnCode()Returns the return code for this session.longgetSessionId()Returns the session identifier.java.util.DategetStartTime()Returns session start time.SessionStategetState()Returns the state of the session.booleanisFFmpeg()Returns whether it is anFFmpegsession or not.booleanisFFprobe()Returns whether it is anFFprobesession or not.booleanthereAreAsynchronousMessagesInTransmit()Returns whether there are still asynchronous messages being transmitted for this session or not.
-
-
-
Method Detail
-
getExecuteCallback
ExecuteCallback getExecuteCallback()
Returns the session specific execute callback function.- Returns:
- session specific execute callback function
-
getLogCallback
LogCallback getLogCallback()
Returns the session specific log callback function.- Returns:
- session specific log callback function
-
getSessionId
long getSessionId()
Returns the session identifier.- Returns:
- session identifier
-
getCreateTime
java.util.Date getCreateTime()
Returns session create time.- Returns:
- session create time
-
getStartTime
java.util.Date getStartTime()
Returns session start time.- Returns:
- session start time
-
getEndTime
java.util.Date getEndTime()
Returns session end time.- Returns:
- session end time
-
getDuration
long getDuration()
Returns the time taken to execute this session.- Returns:
- time taken to execute this session in milliseconds or zero (0) if the session is not over yet
-
getArguments
java.lang.String[] getArguments()
Returns command arguments as an array.- Returns:
- command arguments as an array
-
getCommand
java.lang.String getCommand()
Returns command arguments as a concatenated string.- Returns:
- command arguments as a concatenated string
-
getAllLogs
java.util.List<Log> getAllLogs(int waitTimeout)
Returns all log entries generated for this session. If there are asynchronous messages that are not delivered yet, this method waits for them until the given timeout.- Parameters:
waitTimeout- wait timeout for asynchronous messages in milliseconds- Returns:
- list of log entries generated for this session
-
getAllLogs
java.util.List<Log> getAllLogs()
Returns all log entries generated for this session. If there are asynchronous messages that are not delivered yet, this method waits for them.- Returns:
- list of log entries generated for this session
-
getLogs
java.util.List<Log> getLogs()
Returns all log entries delivered for this session. Note that if there are asynchronous log messages that are not delivered yet, this method will not wait for them and will return immediately.- Returns:
- list of log entries received for this session
-
getAllLogsAsString
java.lang.String getAllLogsAsString(int waitTimeout)
Returns all log entries generated for this session as a concatenated string. If there are asynchronous messages that are not delivered yet, this method waits for them until the given timeout.- Parameters:
waitTimeout- wait timeout for asynchronous messages in milliseconds- Returns:
- all log entries generated for this session as a concatenated string
-
getAllLogsAsString
java.lang.String getAllLogsAsString()
Returns all log entries generated for this session as a concatenated string. If there are asynchronous messages that are not delivered yet, this method waits for them.- Returns:
- all log entries generated for this session as a concatenated string
-
getLogsAsString
java.lang.String getLogsAsString()
Returns all log entries delivered for this session as a concatenated string. Note that if there are asynchronous log messages that are not delivered yet, this method will not wait for them and will return immediately.- Returns:
- list of log entries received for this session
-
getOutput
java.lang.String getOutput()
Returns the log output generated while running the session.- Returns:
- log output generated
-
getState
SessionState getState()
Returns the state of the session.- Returns:
- state of the session
-
getReturnCode
ReturnCode getReturnCode()
Returns the return code for this session. Note that return code is only set for sessions that end with COMPLETED state. If a session is not started, still running or failed then this method returns null.- Returns:
- the return code for this session if the session is COMPLETED, null if session is not started, still running or failed
-
getFailStackTrace
java.lang.String getFailStackTrace()
Returns the stack trace of the exception received while executing this session.The stack trace is only set for sessions that end with FAILED state. For sessions that has COMPLETED state this method returns null.
- Returns:
- stack trace of the exception received while executing this session, null if session is not started, still running or completed
-
getLogRedirectionStrategy
LogRedirectionStrategy getLogRedirectionStrategy()
Returns session specific log redirection strategy.- Returns:
- session specific log redirection strategy
-
thereAreAsynchronousMessagesInTransmit
boolean thereAreAsynchronousMessagesInTransmit()
Returns whether there are still asynchronous messages being transmitted for this session or not.- Returns:
- true if there are still asynchronous messages being transmitted, false otherwise
-
addLog
void addLog(Log log)
Adds a new log entry for this session.- Parameters:
log- log entry
-
getFuture
java.util.concurrent.Future<?> getFuture()
Returns the future created for this session, if it is executed asynchronously.- Returns:
- future that runs this session asynchronously
-
isFFmpeg
boolean isFFmpeg()
Returns whether it is anFFmpegsession or not.- Returns:
- true if it is an
FFmpegsession, false otherwise
-
isFFprobe
boolean isFFprobe()
Returns whether it is anFFprobesession or not.- Returns:
- true if it is an
FFprobesession, false otherwise
-
cancel
void cancel()
Cancels running the session.
-
-