vlc | branch: master | Thomas Guillem <tho...@gllm.fr> | Fri Jul 24 15:18:46 2015 +0200| [5bba18bc19eb6f323ffa7db50ca1a9802f92091f] | committer: Thomas Guillem
mediacodec: refactor block check > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=5bba18bc19eb6f323ffa7db50ca1a9802f92091f --- modules/codec/omxil/mediacodec.c | 56 +++++++++++++++++++------------------- 1 file changed, 28 insertions(+), 28 deletions(-) diff --git a/modules/codec/omxil/mediacodec.c b/modules/codec/omxil/mediacodec.c index 363353d..b7f8f94 100644 --- a/modules/codec/omxil/mediacodec.c +++ b/modules/codec/omxil/mediacodec.c @@ -914,24 +914,24 @@ static picture_t *DecodeVideo(decoder_t *p_dec, block_t **pp_block) if (p_sys->error_state) goto endclean; - if (p_block && p_block->i_flags & BLOCK_FLAG_INTERLACED_MASK - && !p_sys->api->b_support_interlaced) - { - b_error = true; - goto endclean; - } - - if (p_block && p_block->i_flags & (BLOCK_FLAG_DISCONTINUITY|BLOCK_FLAG_CORRUPTED)) { - if (DecodeFlush(p_dec) != VLC_SUCCESS) - b_error = true; - goto endclean; - } - if (b_new_block) { bool b_csd_changed = false, b_size_changed = false; p_sys->b_new_block = false; + if (p_block->i_flags & BLOCK_FLAG_INTERLACED_MASK + && !p_sys->api->b_support_interlaced) + { + b_error = true; + goto endclean; + } + + if (p_block->i_flags & (BLOCK_FLAG_DISCONTINUITY|BLOCK_FLAG_CORRUPTED)) { + if (DecodeFlush(p_dec) != VLC_SUCCESS) + b_error = true; + goto endclean; + } + if (p_dec->fmt_in.i_codec == VLC_CODEC_H264) H264ProcessBlock(p_dec, p_block, &b_csd_changed, &b_size_changed); else if (p_dec->fmt_in.i_codec == VLC_CODEC_HEVC) @@ -953,23 +953,23 @@ static picture_t *DecodeVideo(decoder_t *p_dec, block_t **pp_block) } if (b_csd_changed) b_delayed_start = true; - } - /* try delayed opening if there is a new extra data */ - if (!p_sys->api->b_started) - { - switch (p_dec->fmt_in.i_codec) - { - case VLC_CODEC_VC1: - if (p_dec->fmt_in.i_extra) - b_delayed_start = true; - default: - break; - } - if (b_delayed_start && StartMediaCodec(p_dec) != VLC_SUCCESS) + /* try delayed opening if there is a new extra data */ + if (!p_sys->api->b_started) { - b_error = true; - goto endclean; + switch (p_dec->fmt_in.i_codec) + { + case VLC_CODEC_VC1: + if (p_dec->fmt_in.i_extra) + b_delayed_start = true; + default: + break; + } + if (b_delayed_start && StartMediaCodec(p_dec) != VLC_SUCCESS) + { + b_error = true; + goto endclean; + } } } if (!p_sys->api->b_started) _______________________________________________ vlc-commits mailing list vlc-commits@videolan.org https://mailman.videolan.org/listinfo/vlc-commits