File indexing completed on 2024-12-01 04:28:36
0001 /* 0002 SPDX-FileCopyrightText: 2021 Jean-Baptiste Mardelle <jb@kdenlive.org> 0003 0004 SPDX-License-Identifier: GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL 0005 */ 0006 0007 #pragma once 0008 0009 #include "abstracttask.h" 0010 #include <QTemporaryFile> 0011 0012 class QProcess; 0013 0014 class CustomJobTask : public AbstractTask 0015 { 0016 public: 0017 CustomJobTask(const ObjectId &owner, const QString &jobName, const QMap<QString, QString> &jobParams, int in, int out, const QString &jobId, 0018 QObject *object); 0019 static void start(QObject *object, const QString &jobId); 0020 0021 protected: 0022 void run() override; 0023 0024 private Q_SLOTS: 0025 void processLogInfo(); 0026 0027 private: 0028 int m_jobDuration; 0029 bool m_isFfmpegJob; 0030 QMap<QString, QString> m_parameters; 0031 int m_inPoint; 0032 int m_outPoint; 0033 QString m_jobId; 0034 std::unique_ptr<QProcess> m_jobProcess; 0035 QString m_errorMessage; 0036 QString m_logDetails; 0037 QTemporaryFile m_tmpFrameFile; 0038 };