Skip to content

Commit

Permalink
add support for GPU Size & Position in slideshow
Browse files Browse the repository at this point in the history
  • Loading branch information
ddennedy committed Apr 17, 2023
1 parent 069c4e5 commit 68b7833
Showing 1 changed file with 20 additions and 10 deletions.
30 changes: 20 additions & 10 deletions src/widgets/slideshowgeneratorwidget.cpp
Expand Up @@ -342,16 +342,26 @@ void SlideshowGeneratorWidget::attachAffineFilter(SlideshowConfig &config, Mlt::
beginRect.h = beginRect.h + (beginScale * beginRect.h);
}

Mlt::Filter filter(MLT.profile(), "affine");
filter.anim_set("transition.rect", beginRect, 0);
filter.anim_set("transition.rect", endRect, endPosition);
filter.set("transition.fill", 1);
filter.set("transition.distort", 0);
filter.set("transition.valign", "middle");
filter.set("transition.halign", "center");
filter.set("transition.threads", 0);
filter.set("background", "color:#000000");
filter.set(kShotcutFilterProperty, "affineSizePosition");
Mlt::Filter filter(MLT.profile(), Settings.playerGPU() ? "movit.rect" : "affine");
if (Settings.playerGPU()) {
filter.anim_set("rect", beginRect, 0);
filter.anim_set("rect", endRect, endPosition);
filter.set("fill", 1);
filter.set("distort", 0);
filter.set("valign", "middle");
filter.set("halign", "center");
filter.set(kShotcutFilterProperty, "movitSizePosition");
} else {
filter.anim_set("transition.rect", beginRect, 0);
filter.anim_set("transition.rect", endRect, endPosition);
filter.set("transition.fill", 1);
filter.set("transition.distort", 0);
filter.set("transition.valign", "middle");
filter.set("transition.halign", "center");
filter.set("transition.threads", 0);
filter.set("background", "color:#000000");
filter.set(kShotcutFilterProperty, "affineSizePosition");
}
filter.set(kShotcutAnimInProperty, producer->frames_to_time(endPosition + 1, mlt_time_clock));
filter.set(kShotcutAnimOutProperty, producer->frames_to_time(0, mlt_time_clock));
producer->attach(filter);
Expand Down

0 comments on commit 68b7833

Please sign in to comment.