Merge branch 'master' into cache-update
This commit is contained in:
@@ -65,9 +65,9 @@ bool PreCacheTask::Run()
|
||||
// Get list of invalidated ranges
|
||||
TimeRange intersection;
|
||||
|
||||
if (footage_->GetTimelinePoints()->workarea()->enabled()) {
|
||||
if (footage_->GetWorkArea()->enabled()) {
|
||||
// If we're caching only in-out, limit the range to that
|
||||
intersection = footage_->GetTimelinePoints()->workarea()->range();
|
||||
intersection = footage_->GetWorkArea()->range();
|
||||
} else {
|
||||
// Otherwise use full length
|
||||
intersection = TimeRange(0, footage_->GetVideoLength());
|
||||
|
||||
@@ -44,6 +44,8 @@ bool RenderTask::Render(ColorManager* manager,
|
||||
const QMatrix4x4 &force_matrix, VideoParams::Format force_format,
|
||||
ColorProcessorPtr force_color_output)
|
||||
{
|
||||
QMetaObject::invokeMethod(RenderManager::instance(), "SetAggressiveGarbageCollection", Q_ARG(bool, true));
|
||||
|
||||
// Run watchers in another thread so they can accept signals even while this thread is blocked
|
||||
QThread watcher_thread;
|
||||
watcher_thread.start();
|
||||
@@ -232,6 +234,8 @@ bool RenderTask::Render(ColorManager* manager,
|
||||
watcher_thread.quit();
|
||||
watcher_thread.wait();
|
||||
|
||||
QMetaObject::invokeMethod(RenderManager::instance(), "SetAggressiveGarbageCollection", Q_ARG(bool, false));
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
@@ -27,8 +27,7 @@
|
||||
#include "node/color/colormanager/colormanager.h"
|
||||
#include "node/output/viewer/viewer.h"
|
||||
#include "task/task.h"
|
||||
#include "threading/threadticket.h"
|
||||
#include "threading/threadticketwatcher.h"
|
||||
#include "render/renderticket.h"
|
||||
|
||||
namespace olive {
|
||||
|
||||
|
||||
Reference in New Issue
Block a user