two step process and configurable colorspaces

This commit is contained in:
itsmattkc
2019-03-20 01:42:40 +11:00
parent 0a5c3fe36e
commit 7d337e6de2
17 changed files with 559 additions and 244 deletions
+11 -11
View File
@@ -27,17 +27,17 @@
#include "project/previewgenerator.h"
#include "timeline/clip.h"
Footage::Footage() {
ready = (false);
preview_gen = (nullptr);
invalid = (false);
in = (0);
out = (0);
speed = (1.0);
alpha_is_premultiplied = (false);
proxy = (false);
start_number = 0;
Footage::Footage() :
ready(false),
preview_gen(nullptr),
invalid(false),
in(0),
out(0),
speed(1.0),
alpha_is_associated(true),
proxy(false),
start_number(0)
{
ready_lock.lock();
}
+6 -1
View File
@@ -81,9 +81,14 @@ struct Footage {
bool ready;
bool invalid;
double speed;
bool alpha_is_premultiplied;
bool alpha_is_associated;
int start_number;
#ifndef NO_OCIO
// color management
QString colorspace;
#endif
// proxy config
bool proxy;
QString proxy_path;
+2 -2
View File
@@ -280,7 +280,7 @@ bool LoadThread::load_worker(QFile& f, QXmlStreamReader& stream, int type) {
int folder = 0;
MediaPtr item = std::make_shared<Media>();
FootagePtr f(new Footage());
FootagePtr f = std::make_shared<Footage>();
f->using_inout = false;
@@ -347,7 +347,7 @@ bool LoadThread::load_worker(QFile& f, QXmlStreamReader& stream, int type) {
} else if (attr.name() == "speed") {
f->speed = attr.value().toDouble();
} else if (attr.name() == "alphapremul") {
f->alpha_is_premultiplied = (attr.value() == "1");
f->alpha_is_associated = (attr.value() == "1");
} else if (attr.name() == "proxy") {
f->proxy = (attr.value() == "1");
} else if (attr.name() == "proxypath") {