From 6859d22b9666e99ce1f15f86f4233afa8af371ff Mon Sep 17 00:00:00 2001 From: Till Theato Date: Fri, 12 Nov 2010 23:21:58 +0000 Subject: [PATCH] Add option to speed up project loading: Replace all avformat producers with avformat-novalidate to skip the validation during the producer init (takes place in MLT) while loading the project. Not enabled by default yet. svn path=/trunk/kdenlive/; revision=5091 --- effects/frei0r_pixeliz0r.xml | 2 +- src/abstractclipitem.h | 2 +- src/kdenlivedoc.cpp | 3 ++- src/kdenlivesettings.kcfg | 5 +++++ src/renderer.cpp | 11 +++++++++-- src/widgets/configmisc_ui.ui | 17 ++++++++++++----- 6 files changed, 30 insertions(+), 10 deletions(-) diff --git a/effects/frei0r_pixeliz0r.xml b/effects/frei0r_pixeliz0r.xml index 11b7c8db..ab59583d 100644 --- a/effects/frei0r_pixeliz0r.xml +++ b/effects/frei0r_pixeliz0r.xml @@ -1,6 +1,6 @@ - Pixelizor + Pixelize Pixelize input image. Gephex crew diff --git a/src/abstractclipitem.h b/src/abstractclipitem.h index f24e0ab2..f42bcdd3 100644 --- a/src/abstractclipitem.h +++ b/src/abstractclipitem.h @@ -67,7 +67,7 @@ public: bool isItemLocked() const; void closeAnimation(); - virtual OPERATIONTYPE operationMode(QPointF pos) = 0; + virtual OPERATIONTYPE operationMode(QPointF pos) = 0; virtual GenTime startPos() const ; virtual void setTrack(int track); virtual GenTime endPos() const ; diff --git a/src/kdenlivedoc.cpp b/src/kdenlivedoc.cpp index b2383dc4..fb87c65c 100644 --- a/src/kdenlivedoc.cpp +++ b/src/kdenlivedoc.cpp @@ -193,7 +193,8 @@ KdenliveDoc::KdenliveDoc(const KUrl &url, const KUrl &projectFolder, QUndoGroup break; } } - progressDialog->progressBar()->setValue(i); + if (i % 10 == 0) + progressDialog->progressBar()->setValue(i); } if (success) { diff --git a/src/kdenlivesettings.kcfg b/src/kdenlivesettings.kcfg index aa4056fb..49d65f06 100644 --- a/src/kdenlivesettings.kcfg +++ b/src/kdenlivesettings.kcfg @@ -658,6 +658,11 @@ false + + + + false + diff --git a/src/renderer.cpp b/src/renderer.cpp index 26ecea87..239a8e06 100644 --- a/src/renderer.cpp +++ b/src/renderer.cpp @@ -869,7 +869,7 @@ int Render::setSceneList(QString playlist, int position) m_isBlocked = true; int error = 0; - kDebug() << "////// RENDER, SET SCENE LIST: " << playlist; + //kDebug() << "////// RENDER, SET SCENE LIST: " << playlist; if (m_mltConsumer) { if (!m_mltConsumer->is_stopped()) { @@ -926,6 +926,13 @@ int Render::setSceneList(QString playlist, int position) } blockSignals(true); + + // TODO: Better way to do this + if (KdenliveSettings::projectloading_avformatnovalidate()) + playlist.replace(">avformat", ">avformat-novalidate"); + else + playlist.replace(">avformat-novalidate", ">avformat"); + m_mltProducer = new Mlt::Producer(*m_mltProfile, "xml-string", playlist.toUtf8().constData()); if (!m_mltProducer || !m_mltProducer->is_valid()) { @@ -2054,7 +2061,7 @@ int Render::mltChangeClipSpeed(ItemInfo info, ItemInfo speedIndependantInfo, dou QString id = clipparent.get("id"); if (speed <= 0 && speed > -1) speed = 1.0; //kDebug() << "CLIP SERVICE: " << serv; - if (serv == "avformat" && (speed != 1.0 || strobe > 1)) { + if ((serv == "avformat" || serv == "avformat-novalidate") && (speed != 1.0 || strobe > 1)) { mlt_service_lock(service.get_service()); QString url = QString::fromUtf8(clipparent.get("resource")); url.append('?' + QString::number(speed)); diff --git a/src/widgets/configmisc_ui.ui b/src/widgets/configmisc_ui.ui index 99eefb6d..44d030bb 100644 --- a/src/widgets/configmisc_ui.ui +++ b/src/widgets/configmisc_ui.ui @@ -6,8 +6,8 @@ 0 0 - 329 - 245 + 389 + 304 @@ -32,7 +32,7 @@ - + Default Durations @@ -100,7 +100,7 @@ - + Qt::Vertical @@ -127,7 +127,7 @@ - + Automatically import image sequences @@ -141,6 +141,13 @@ + + + + Do not validate the video files when loading a project (faster) + + + -- 2.39.2