An execution of FFmpeg. More...
Public Member Functions | |
QtlMovieFFmpegProcess (const QStringList &ffmpegArguments, int inputDurationInSeconds, const QString &temporaryDirectory, const QtlMovieSettings *settings, QtlLogger *log, QObject *parent=0, QtlDataPull *dataPull=0) | |
Constructor. More... | |
virtual bool | start () Q_DECL_OVERRIDE |
Start the process. More... | |
![]() | |
QtlMovieProcess (const QtlMovieExecFile *execFile, const QStringList &arguments, bool hasBinaryOutput, const QtlMovieSettings *settings, QtlLogger *log, QObject *parent=0, QtlDataPull *dataPull=0) | |
Constructor. More... | |
virtual void | abort () Q_DECL_OVERRIDE |
Abort process execution. More... | |
QStringList | arguments () const |
Get the command line arguments. More... | |
const QtlMovieExecFile * | execFile () const |
Get the command executable file. More... | |
QIODevice * | outputDevice () const |
Return the device from which standard output can be read. More... | |
void | setArguments (const QStringList &arguments) |
Set the command line arguments. More... | |
void | setPriority (Qtl::ProcessPriority priority) |
Set the process priority. More... | |
bool | useDataPullProgressReport (bool on) |
Use the progress report from the QtlDataPull when possible. More... | |
bool | useDataPullProgressReport () const |
Check if progress report from the QtlDataPull is active. More... | |
![]() | |
QtlMovieAction (const QtlMovieSettings *settings, QtlLogger *log, QObject *parent=0) | |
Constructor. More... | |
virtual | ~QtlMovieAction () |
Virtual destructor. More... | |
virtual void | debug (const QString &line, const QColor &color=QColor()) Q_DECL_OVERRIDE |
Log a line of debug text. More... | |
QString | description () const |
Get the description of the action. More... | |
int | elapsedSeconds () const |
Get the number of seconds since the action started. More... | |
bool | isCompleted () const |
Check if the action is completed. More... | |
bool | isSilent () const |
Check if unimportant messages are skipped. More... | |
bool | isStarted () const |
Check if the action was started (and possibly completed in the meantime). More... | |
virtual void | line (const QString &line, const QColor &color=QColor()) Q_DECL_OVERRIDE |
Log a line of text. More... | |
void | setDescription (const QString &description) |
Set the description of the action. More... | |
void | setSilent (bool silent) |
Set if unimportant messages are skipped. More... | |
const QtlMovieSettings * | settings () const |
Get the application settings. More... | |
virtual void | text (const QString &text) Q_DECL_OVERRIDE |
Log text. More... | |
Protected Member Functions | |
virtual void | processOutputLine (QProcess::ProcessChannel channel, const QString &line) Q_DECL_OVERRIDE |
Process one text line from standard error. More... | |
virtual void | updateEnvironment (QProcessEnvironment &env) Q_DECL_OVERRIDE |
Update the QProcessEnvironment for the target process before it starts. More... | |
![]() | |
QStringList | getJobVariable (const QString &name) const |
Get the value of a variable in the job. More... | |
void | setJobVariable (const QString &name, const QStringList &value) |
Store a variable in the parent job. More... | |
![]() | |
virtual void | emitCompleted (bool success, const QString &message=QString()) |
Emit the completed() signal. More... | |
virtual void | emitProgress (int current, int maximum, int remainingSeconds=-1) |
Emit the progress() signal. More... | |
Private Member Functions | |
QtlMovieFFmpegProcess () Q_DECL_EQ_DELETE | |
bool | createFontConfig (const QString &templateFile, const QString &actualFile) |
Create the temporary fontconfig configuration file. More... | |
Private Attributes | |
int | _inputDurationInSeconds |
Input file duration. More... | |
QString | _tempDir |
Directory of temporary files. More... | |
Additional Inherited Members | |
![]() | |
void | readyReadOutputData () |
Emitted when some binary data are available from standard output. More... | |
![]() | |
void | completed (bool success) |
Emitted when the action completes. More... | |
void | progress (const QString &description, int current, int maximum, int elapsedSeconds, int remainingSeconds) |
Emitted when some progress in the reporting is available. More... | |
void | started () |
Emitted when the action starts. More... | |
An execution of FFmpeg.
Availability of standard output data is signaled by readyReadOutputData(). Standard output data can be read from outputDevice().
Standard error lines, except "progress report" ones, are logged. All "progress report" lines (starting with "frame=") are analyzed. The progress report is signaled by progress().
QtlMovieFFmpegProcess::QtlMovieFFmpegProcess | ( | const QStringList & | ffmpegArguments, |
int | inputDurationInSeconds, | ||
const QString & | temporaryDirectory, | ||
const QtlMovieSettings * | settings, | ||
QtlLogger * | log, | ||
QObject * | parent = 0 , |
||
QtlDataPull * | dataPull = 0 |
||
) |
Constructor.
[in] | ffmpegArguments | FFmpeg command line arguments. |
[in] | inputDurationInSeconds | Input file play duration in seconds or zero if unknown. Used as a hint to indicate progress. |
[in] | temporaryDirectory | Directory of temporary files. |
[in] | settings | Application settings. |
[in] | log | Message logger. |
[in] | parent | Optional parent object. |
[in] | dataPull | If non zero, used to feed the standard input of the process. |
|
private |
|
virtual |
Start the process.
Reimplemented from QtlMovieProcess.
|
protectedvirtual |
Process one text line from standard error.
[in] | channel | Origin of the line (QProcess::StandardOutput or QProcess::StandardError). |
[in] | line | Text line. |
Reimplemented from QtlMovieProcess.
Reimplemented in QtlMovieFFmpegVolumeDetect.
|
protectedvirtual |
Update the QProcessEnvironment for the target process before it starts.
[in] | env | A set of environment variables to update. |
Reimplemented from QtlMovieProcess.
|
private |
Create the temporary fontconfig configuration file.
[in] | templateFile | Absolute path of template file. |
[in] | actualFile | Absolute path of actual file to create. |
|
private |
Input file duration.
|
private |
Directory of temporary files.