]> git.sesse.net Git - kdenlive/commitdiff
Fix proxy clips for playlists distortion
authorJean-Baptiste Mardelle <jb@kdenlive.org>
Wed, 10 Oct 2012 15:10:44 +0000 (17:10 +0200)
committerJean-Baptiste Mardelle <jb@kdenlive.org>
Wed, 10 Oct 2012 15:10:44 +0000 (17:10 +0200)
src/projectlist.cpp

index b6358b8c3015b3fceda98ea336c38a0cf102c004..d60e3081db98577306709b5a425629c4e1a0344e 100644 (file)
@@ -2724,8 +2724,12 @@ void ProjectList::slotCreateProxy(const QString id)
         slotGotProxy(path);
         return;
     }
-
-    ProxyJob *job = new ProxyJob(item->clipType(), id, QStringList() << path << item->clipUrl().path() << item->referencedClip()->producerProperty("_exif_orientation") << m_doc->getDocumentProperty("proxyparams").simplified() << QString::number(m_render->frameRenderWidth()) << QString::number(m_render->renderHeight()));
+    QString sourcePath = item->clipUrl().path();
+    if (item->clipType() == PLAYLIST) {
+       // Special case: playlists use the special 'consumer' producer to support resizing
+       sourcePath.prepend("consumer:");
+    }
+    ProxyJob *job = new ProxyJob(item->clipType(), id, QStringList() << path << sourcePath << item->referencedClip()->producerProperty("_exif_orientation") << m_doc->getDocumentProperty("proxyparams").simplified() << QString::number(m_render->frameRenderWidth()) << QString::number(m_render->renderHeight()));
     if (job->isExclusive() && hasPendingJob(item, job->jobType)) {
         delete job;
         return;