Commit 18cbe963 authored by Julian Scheel's avatar Julian Scheel Committed by Martin Storsjö

omxil: bcm: h264: Don't wait for error free frame.

The bcm h264 decoder is not able to detect when the first error free frame has
been decoded for certain h264 streams. To avoid not getting any frames out of
the decoder, disable the StartWithValidFrame flag until that is fixed at bcm.
See https://github.com/huceke/omxplayer/issues/96 for details.
Signed-off-by: default avatarJulian Scheel <julian@jusst.de>
Signed-off-by: default avatarMartin Storsjö <martin@martin.st>
parent fd890ca4
......@@ -50,6 +50,7 @@
/* Defined in the broadcom version of OMX_Index.h */
#define OMX_IndexConfigRequestCallback 0x7f000063
#define OMX_IndexParamBrcmPixelAspectRatio 0x7f00004d
#define OMX_IndexParamBrcmVideoDecodeErrorConcealment 0x7f000080
/* Defined in the broadcom version of OMX_Core.h */
#define OMX_EventParamOrConfigChanged 0x7F000001
......@@ -745,6 +746,21 @@ static OMX_ERRORTYPE InitialiseComponent(decoder_t *p_dec,
if(omx_error != OMX_ErrorNone) goto error;
}
if(!strncmp(p_sys->psz_component, "OMX.broadcom.", 13) &&
p_sys->in.p_fmt->i_codec == VLC_CODEC_H264)
{
OMX_PARAM_BRCMVIDEODECODEERRORCONCEALMENTTYPE concanParam;
OMX_INIT_STRUCTURE(concanParam);
concanParam.bStartWithValidFrame = OMX_FALSE;
omx_error = OMX_SetParameter(omx_handle,
OMX_IndexParamBrcmVideoDecodeErrorConcealment, &concanParam);
if (omx_error == OMX_ErrorNone)
msg_Dbg(p_dec, "StartWithValidFrame disabled.");
else
msg_Dbg(p_dec, "Could not disable StartWithValidFrame.");
}
/* Allocate our array for the omx buffers and enable ports */
for(i = 0; i < p_sys->ports; i++)
{
......
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