#include "ui_clipstabilize_ui.h"
#include <KUrl>
-#include <mlt++/Mlt.h>
#include <QProcess>
+#include <QFuture>
+
+class QTimer;
+namespace Mlt{
+ class Profile;
+ class Playlist;
+ class Consumer;
+ class Filter;
+};
class ClipStabilize : public QDialog, public Ui::ClipStabilize_UI
{
Q_OBJECT
public:
- ClipStabilize(KUrl::List urls, const QString ¶ms, QWidget * parent = 0);
+ ClipStabilize(KUrl::List urls, const QString ¶ms, Mlt::Filter* filter,QWidget * parent = 0);
~ClipStabilize();
private slots:
void slotShowStabilizeInfo();
void slotStartStabilize();
- void slotStabilizeFinished(int exitCode, QProcess::ExitStatus exitStatus);
- void slotUpdateParams(int ix = -1);
+ void slotStabilizeFinished(bool success);
+ void slotRunStabilize();
+ void slotAbortStabilize();
+ void slotUpdateParams();
private:
- QProcess m_stabilizeProcess;
+ QFuture<void> m_stabilizeRun;
QString filtername;
- Mlt::Profile profile;
+ Mlt::Profile *m_profile;
+ Mlt::Consumer *m_consumer;
+ Mlt::Playlist *m_playlist;
KUrl::List m_urls;
int m_duration;
+ Mlt::Filter* m_filter;
+ QTimer *m_timer;
+ QHash<QString,QHash<QString,QString> > m_ui_params;
+ QVBoxLayout *vbox;
+ void fillParameters(QStringList);
signals:
void addClip(KUrl url);