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;
Ui::CutJobDialog_UI ui;
ui.setupUi(d);
ui.extra_params->setVisible(false);
- ui.add_clip->setChecked(KdenliveSettings::add_clip_cut());
+ ui.add_clip->setChecked(KdenliveSettings::add_new_clip());
ui.file_url->fileDialog()->setOperationMode(KFileDialog::Saving);
ui.extra_params->setMaximumHeight(QFontMetrics(font()).lineSpacing() * 5);
ui.file_url->setUrl(KUrl(dest));
}
}
QString extraParams = ui.extra_params->toPlainText().simplified();
- KdenliveSettings::setAdd_clip_cut(ui.add_clip->isChecked());
+ KdenliveSettings::setAdd_new_clip(ui.add_clip->isChecked());
delete d;
QStringList jobParams;
- jobParams << dest << item->clipUrl().path() << timeIn << timeOut << QString::number(duration) << QString::number(KdenliveSettings::add_clip_cut());
+ jobParams << dest << item->clipUrl().path() << timeIn << timeOut << QString::number(duration) << QString::number(KdenliveSettings::add_new_clip());
if (!extraParams.isEmpty()) jobParams << extraParams;
CutClipJob *job = new CutClipJob(item->clipType(), id, jobParams);
if (job->isExclusive() && hasPendingJob(item, job->jobType)) {
ui.extra_params->setVisible(false);
d->adjustSize();
ui.button_more->setIcon(KIcon("configure"));
- ui.add_clip->setChecked(KdenliveSettings::add_clip_cut());
+ ui.add_clip->setChecked(KdenliveSettings::add_new_clip());
ui.extra_params->setPlainText(params.simplified().section(' ', 0, -2));
QString mess = desc;
mess.append(' ' + i18np("(%1 clip)", "(%1 clips)", ids.count()));
return;
}
params = ui.extra_params->toPlainText().simplified();
- KdenliveSettings::setAdd_clip_cut(ui.add_clip->isChecked());
+ KdenliveSettings::setAdd_new_clip(ui.add_clip->isChecked());
int index = 0;
foreach(const QString &id, ids) {
ProjectItem *item = getItemById(id);
int max = item->clipMaxDuration();
QString duration = QString::number(max);
jobParams << duration;
- jobParams << QString::number(KdenliveSettings::add_clip_cut());
+ jobParams << QString::number(KdenliveSettings::add_new_clip());
jobParams << params;
CutClipJob *job = new CutClipJob(item->clipType(), id, jobParams);
if (job->isExclusive() && hasPendingJob(item, job->jobType)) {
foreach(const QString&id, ids) {
ProjectItem *item = getItemById(id);
if (!item) continue;
+ QStringList jobArgs;
+ jobArgs << preParams;
if (ids.count() == 1) {
- consumer += ':' + destination;
+ jobArgs << consumer + ':' + destination;
}
else {
- consumer += ':' + destination + item->clipUrl().fileName() + ".mlt";
+ jobArgs << consumer + ':' + destination + item->clipUrl().fileName() + ".mlt";
}
- preParams << consumer << jobParams;
+ jobArgs << jobParams;
- MeltJob *job = new MeltJob(item->clipType(), id, preParams);
+ MeltJob *job = new MeltJob(item->clipType(), id, jobArgs);
if (autoAdd) {
job->setAddClipToProject(true);
kDebug()<<"// ADDING TRUE";