large scale renderer rework

- Abstracts all OpenGL functionality including UI objects
- Cleans up several rendering codepaths
- Improves threading functionality
- Removes old code and problematic functions
This commit is contained in:
itsmattkc
2020-11-10 11:24:51 +11:00
parent 52b98f3fa3
commit 1d61f89920
42 changed files with 927 additions and 820 deletions
+7 -2
View File
@@ -33,7 +33,10 @@ ConformTask::ConformTask(AudioStreamPtr stream, const AudioParams& params) :
bool ConformTask::Run()
{
if (stream_->footage()->decoder().isEmpty()) {
// Conforming is done by the renderer now, but I would like to use something like this just to
// show progress
/*if (stream_->footage()->decoder().isEmpty()) {
SetError(tr("Failed to find decoder to conform audio stream"));
return false;
} else {
@@ -49,7 +52,9 @@ bool ConformTask::Run()
} else {
return true;
}
}
}*/
return true;
}
OLIVE_NAMESPACE_EXIT
+2 -11
View File
@@ -115,17 +115,8 @@ bool ExportTask::Run()
void FrameColorConvert(ColorProcessorPtr processor, FramePtr frame)
{
// OCIO conversion requires a frame in 32F format
if (frame->format() != PixelFormat::PIX_FMT_RGBA32F
&& frame->format() != PixelFormat::PIX_FMT_RGB32F) {
PixelFormat::Format dst;
if (PixelFormat::FormatHasAlphaChannel(frame->format())) {
dst = PixelFormat::PIX_FMT_RGBA32F;
} else {
dst = PixelFormat::PIX_FMT_RGB32F;
}
frame = PixelFormat::ConvertPixelFormat(frame, dst);
if (frame->format() != PixelFormat::PIX_FMT_RGBA32F) {
frame = PixelFormat::ConvertPixelFormat(frame, PixelFormat::PIX_FMT_RGBA32F);
}
// Color conversion must be done with unassociated alpha, and the pipeline is always associated
+2 -2
View File
@@ -110,8 +110,8 @@ void ProjectImportTask::Import(Folder *folder, QFileInfoList import, int &counte
} else {
FootagePtr item = Decoder::ProbeMedia(model_->project(), file_info.absoluteFilePath(),
&IsCancelled());
FootagePtr item = Decoder::Probe(model_->project(), file_info.absoluteFilePath(),
&IsCancelled());
if (item) {
// See if this footage is an image sequence