Class BaseStdReader<T>
java.lang.Object
com.github.kokorin.jaffree.process.BaseStdReader<T>
- Type Parameters:
T- type of parsed result
- All Implemented Interfaces:
StdReader<T>
- Direct Known Subclasses:
FFmpegResultReader,FFprobeLogReader
BaseStdReader reads std output, parses result and logs, and sends logs
to SLF4J with corresponding log level.-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected TGet the list of error messages produced by the running process.protected abstract ThandleLogMessage(LogMessage logMessage) Parses single ffmpeg/ffprobe log message.read(InputStream stdOut) Reads providedInputStreamuntil it's depleted.
-
Constructor Details
-
BaseStdReader
public BaseStdReader()
-
-
Method Details
-
read
Reads providedInputStreamuntil it's depleted.This method parses every line to detect ffmpeg log level. Lines with INFO log level are additionally parsed for a result (which may be null because of too strict log level).
- Specified by:
readin interfaceStdReader<T>- Parameters:
stdOut- input stream to read from- Returns:
- T if found or null
- Throws:
JaffreeException- if IOException appears or program ends with error message.- See Also:
-
getErrorLogMessages
Get the list of error messages produced by the running process.- Specified by:
getErrorLogMessagesin interfaceStdReader<T>- Returns:
- error messages
-
defaultResult
- Returns:
- default result
-
handleLogMessage
Parses single ffmpeg/ffprobe log message.- Parameters:
logMessage- log message- Returns:
- parsed result or null
-