use different signals when the audio invalidates vs the video

Both audio and video renderers were working off the same invalidation signal
(i.e. changing audio would also trigger a re-render of the video). This is
obviously suboptimal and now they are separate.
This commit is contained in:
itsmattkc
2019-11-17 13:44:50 +09:00
parent b1f4bf3dbb
commit 9d154e1909
8 changed files with 48 additions and 20 deletions
+10 -5
View File
@@ -112,12 +112,17 @@ void VideoRenderBackend::CloseInternal()
cache_frame_load_buffer_.clear();
}
void VideoRenderBackend::ViewerNodeChangedEvent(ViewerOutput *node)
void VideoRenderBackend::ConnectViewer(ViewerOutput *node)
{
if (node != nullptr) {
// FIXME: Hardcoded format, mode, and divider
SetParameters(VideoRenderingParams(node->video_params(), olive::PIX_FMT_RGBA16F, olive::kOffline, 2));
}
connect(node, SIGNAL(VideoChangedBetween(const rational&, const rational&)), this, SLOT(InvalidateCache(const rational&, const rational&)));
// FIXME: Hardcoded format, mode, and divider
SetParameters(VideoRenderingParams(node->video_params(), olive::PIX_FMT_RGBA16F, olive::kOffline, 2));
}
void VideoRenderBackend::DisconnectViewer(ViewerOutput *node)
{
disconnect(node, SIGNAL(VideoChangedBetween(const rational&, const rational&)), this, SLOT(InvalidateCache(const rational&, const rational&)));
}
const VideoRenderingParams &VideoRenderBackend::params() const