summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJean-Baptiste Mardelle <jb@kdenlive.org>2016-09-17 15:52:09 (GMT)
committerJean-Baptiste Mardelle <jb@kdenlive.org>2016-09-17 15:52:09 (GMT)
commitf14fdfdd4ea7285eda64e3027936389efa3a9392 (patch)
tree7e69a06d6aa79f0e61a28779473ce509cee377c7
parentf5ff8112c4dc458d8269611ab6b91a37a7b84522 (diff)
Automatically proxy playlist if enabled
BUG: 368802
-rw-r--r--src/bin/bin.cpp13
1 files changed, 9 insertions, 4 deletions
diff --git a/src/bin/bin.cpp b/src/bin/bin.cpp
index d2b9657..c7e9fc0 100644
--- a/src/bin/bin.cpp
+++ b/src/bin/bin.cpp
@@ -1869,14 +1869,16 @@ void Bin::slotProducerReady(requestClipInfo info, ClipController *controller)
m_doc->watchFile(clip->url());
}
if (m_doc->useProxy()) {
- if (t == AV || t == Video || t == Playlist) {
+ if (t == AV || t == Video) {
int width = clip->getProducerIntProperty(QStringLiteral("meta.media.width"));
if (m_doc->autoGenerateProxy(width)) {
// Start proxy
m_doc->slotProxyCurrentItem(true, QList <ProjectClip *>() << clip);
}
- }
- else if (t == Image && m_doc->autoGenerateImageProxy(clip->getProducerIntProperty(QStringLiteral("meta.media.width")))) {
+ } else if (t == Playlist) {
+ // always proxy playlists
+ m_doc->slotProxyCurrentItem(true, QList <ProjectClip *>() << clip);
+ } else if (t == Image && m_doc->autoGenerateImageProxy(clip->getProducerIntProperty(QStringLiteral("meta.media.width")))) {
// Start proxy
m_doc->slotProxyCurrentItem(true, QList <ProjectClip *>() << clip);
}
@@ -3313,7 +3315,10 @@ void Bin::refreshProxySettings()
QList <ProjectClip*> toProxy;
foreach (ProjectClip *clp, clipList) {
ClipType t = clp->clipType();
- if ((t == AV || t == Video || t == Playlist)
+ if (t == Playlist) {
+ toProxy << clp;
+ continue;
+ } else if ((t == AV || t == Video)
&& m_doc->autoGenerateProxy(clp->getProducerIntProperty(QStringLiteral("meta.media.width")))) {
// Start proxy
toProxy << clp;