@@ -28,10 +28,18 @@ namespace olive {
|
||||
ExportTask::ExportTask(ViewerOutput *viewer_node,
|
||||
ColorManager* color_manager,
|
||||
const ExportParams& params) :
|
||||
RenderTask(viewer_node, params.video_params(), params.audio_params()),
|
||||
color_manager_(color_manager),
|
||||
params_(params)
|
||||
{
|
||||
set_viewer(viewer_node);
|
||||
|
||||
// Adjust video params to have no divider
|
||||
VideoParams vp = viewer_node->GetVideoParams();
|
||||
vp.set_divider(1);
|
||||
set_video_params(vp);
|
||||
|
||||
set_audio_params(viewer_node->GetAudioParams());
|
||||
|
||||
SetTitle(tr("Exporting \"%1\"").arg(viewer_node->GetLabel()));
|
||||
SetNativeProgressSignallingEnabled(false);
|
||||
}
|
||||
|
||||
@@ -24,13 +24,17 @@
|
||||
|
||||
namespace olive {
|
||||
|
||||
PreCacheTask::PreCacheTask(Footage *footage, int index, Sequence* sequence) :
|
||||
RenderTask(new ViewerOutput(), sequence->GetVideoParams(), sequence->GetAudioParams())
|
||||
PreCacheTask::PreCacheTask(Footage *footage, int index, Sequence* sequence)
|
||||
{
|
||||
// Set video and audio params
|
||||
set_video_params(sequence->GetVideoParams());
|
||||
set_audio_params(sequence->GetAudioParams());
|
||||
|
||||
// Create new project
|
||||
project_ = new Project();
|
||||
|
||||
// Create viewer with same parameters as the sequence
|
||||
set_viewer(new ViewerOutput());
|
||||
viewer()->setParent(project_);
|
||||
viewer()->SetVideoParams(sequence->GetVideoParams());
|
||||
viewer()->SetAudioParams(sequence->GetAudioParams());
|
||||
|
||||
@@ -26,10 +26,7 @@
|
||||
|
||||
namespace olive {
|
||||
|
||||
RenderTask::RenderTask(ViewerOutput *viewer, const VideoParams &vparams, const AudioParams &aparams) :
|
||||
viewer_(viewer),
|
||||
video_params_(vparams),
|
||||
audio_params_(aparams),
|
||||
RenderTask::RenderTask() :
|
||||
running_tickets_(0),
|
||||
native_progress_signalling_(true)
|
||||
{
|
||||
|
||||
@@ -36,7 +36,7 @@ class RenderTask : public Task
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
RenderTask(ViewerOutput* viewer, const VideoParams &vparams, const AudioParams &aparams);
|
||||
RenderTask();
|
||||
|
||||
virtual ~RenderTask() override;
|
||||
|
||||
@@ -62,16 +62,31 @@ protected:
|
||||
return viewer_;
|
||||
}
|
||||
|
||||
void set_viewer(ViewerOutput *v)
|
||||
{
|
||||
viewer_ = v;
|
||||
}
|
||||
|
||||
const VideoParams& video_params() const
|
||||
{
|
||||
return video_params_;
|
||||
}
|
||||
|
||||
void set_video_params(const VideoParams& video_params)
|
||||
{
|
||||
video_params_ = video_params;
|
||||
}
|
||||
|
||||
const AudioParams& audio_params() const
|
||||
{
|
||||
return audio_params_;
|
||||
}
|
||||
|
||||
void set_audio_params(const AudioParams& audio_params)
|
||||
{
|
||||
audio_params_ = audio_params;
|
||||
}
|
||||
|
||||
virtual void CancelEvent() override
|
||||
{
|
||||
finished_watcher_mutex_.lock();
|
||||
|
||||
Reference in New Issue
Block a user