Commit 67464c07 authored by Rafaël Carré's avatar Rafaël Carré Committed by Rémi Denis-Courmont

ffmpeg_ReleaseFrameBuf: simplify

Signed-off-by: default avatarRémi Denis-Courmont <remi@remlab.net>
parent 1e48de3d
......@@ -1032,24 +1032,16 @@ static void ffmpeg_ReleaseFrameBuf( struct AVCodecContext *p_context,
decoder_sys_t *p_sys = p_dec->p_sys;
if( p_sys->p_va )
{
vlc_va_Release( p_sys->p_va, p_ff_pic );
}
else if( !p_ff_pic->opaque )
{
else if( p_ff_pic->opaque )
decoder_UnlinkPicture( p_dec, (picture_t*)p_ff_pic->opaque);
else if( p_ff_pic->type == FF_BUFFER_TYPE_INTERNAL )
/* We can end up here without the AVFrame being allocated by
* avcodec_default_get_buffer() if VA is used and the frame is
* released when the decoder is closed
*/
if( p_ff_pic->type == FF_BUFFER_TYPE_INTERNAL )
avcodec_default_release_buffer( p_context, p_ff_pic );
}
else
{
picture_t *p_pic = (picture_t*)p_ff_pic->opaque;
avcodec_default_release_buffer( p_context, p_ff_pic );
decoder_UnlinkPicture( p_dec, p_pic );
}
for( int i = 0; i < 4; i++ )
p_ff_pic->data[i] = NULL;
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment