Send a null AVFrame to indicate end of stream to allow renderers to do render thread cleanup

This commit is contained in:
Cameron Gutman
2020-05-13 18:55:21 -07:00
parent 5ed7e03b2e
commit 51e9ab83ad
9 changed files with 48 additions and 0 deletions

View File

@@ -391,6 +391,11 @@ int VAAPIRenderer::getDecoderColorspace()
void
VAAPIRenderer::renderFrame(AVFrame* frame)
{
if (frame == nullptr) {
// End of stream - nothing to do for us
return;
}
VASurfaceID surface = (VASurfaceID)(uintptr_t)frame->data[3];
AVHWDeviceContext* deviceContext = (AVHWDeviceContext*)m_HwContext->data;
AVVAAPIDeviceContext* vaDeviceContext = (AVVAAPIDeviceContext*)deviceContext->hwctx;