mediacodec_eos.patch (1041B)
1 diff --git a/media/ffvpx/libavcodec/mediacodecdec.c b/media/ffvpx/libavcodec/mediacodecdec.c 2 --- a/media/ffvpx/libavcodec/mediacodecdec.c 3 +++ b/media/ffvpx/libavcodec/mediacodecdec.c 4 @@ -727,3 +727,9 @@ DECLARE_MEDIACODEC_ADEC(amrwb, "AMR-WB", AV_CODEC_ID_AMR_WB, NULL) 5 #if CONFIG_MP3_MEDIACODEC_DECODER 6 DECLARE_MEDIACODEC_ADEC(mp3, "MP3", AV_CODEC_ID_MP3, NULL) 7 #endif 8 + 9 +int moz_avcodec_mediacodec_is_eos(AVCodecContext* avctx) { 10 + // Note that MediaCodecH264DecContext is used by all codec types. 11 + MediaCodecH264DecContext *s = avctx->priv_data; 12 + return s->ctx->eos; 13 +} 14 diff --git a/media/ffvpx/libavcodec/mediacodecdec_common.c b/media/ffvpx/libavcodec/mediacodecdec_common.c 15 --- a/media/ffvpx/libavcodec/mediacodecdec_common.c 16 +++ b/media/ffvpx/libavcodec/mediacodecdec_common.c 17 @@ -85,7 +85,7 @@ 18 19 #define INPUT_DEQUEUE_TIMEOUT_US 8000 20 #define OUTPUT_DEQUEUE_TIMEOUT_US 8000 21 -#define OUTPUT_DEQUEUE_BLOCK_TIMEOUT_US 1000000 22 +#define OUTPUT_DEQUEUE_BLOCK_TIMEOUT_US 8000 23 24 enum { 25 ENCODING_PCM_16BIT = 0x00000002,