From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTP id 658FC49F75 for ; Wed, 17 Apr 2024 04:38:59 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 6503F68D2E6; Wed, 17 Apr 2024 07:38:07 +0300 (EEST) Received: from out203-205-221-192.mail.qq.com (out203-205-221-192.mail.qq.com [203.205.221.192]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id DF42B68D02E for ; Wed, 17 Apr 2024 07:37:54 +0300 (EEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=foxmail.com; s=s201512; t=1713328666; bh=Yp+obAj1bIdedzU0YwBoKdR4rOC+yWg4F4J9N/6Zveo=; h=From:To:Cc:Subject:Date:In-Reply-To:References; b=cJ9PW/zofxRln1NTx1yVO00JM5pNQwJM4g42/uxmJYyn9Q8IzF2ZVZ/QjdWIF0a2+ PoaxZLtWtAdv0XVB/qRJsCmcnzIMDWnuUKlo4drt1aZ6OodfTGv873QAvPaL2p5scJ 2h2Vi7WDUhRgY0htrFcvHfyrZm16Tc6DAio6ZgvU= Received: from localhost.localdomain ([119.147.10.204]) by newxmesmtplogicsvrsza30-0.qq.com (NewEsmtp) with SMTP id 96A0DC1B; Wed, 17 Apr 2024 12:37:42 +0800 X-QQ-mid: xmsmtpt1713328665tfxm4e6c7 Message-ID: X-QQ-XMAILINFO: MmPNY57tR1Xnz9xIJ2y+iWjAGO3V0cOIJpUYayCHQ4ey+yvx5grFx4eCf/gftT KgL/wt19ii6ZhL99t/DCysNbpNlTk8i8LPt1F9WkOlMSYvxM8kG1SJmDIwywUtB3hhW0mRvThvTy dlPNllkUtpu1TppxnirLfnaeuvLsJ0NFnsAOJsd9D4Rf92oCwDckn9yP8RJm0rw5iZhgjnrsaURD uh6OVXdKj+R2m5XWm2tRGamLWk8bst3IXCl15BpOCEow/v/AX2CkKMXejXu0Xc2rkfAC2bqFIniH iGoiz0pL1KkLRvhTlzBT4wx3aKyz88XFvIezlFMkJBhUki1gnLtkldtpExbMZ270Ak/Hrn6qXSb/ xFpmzB8hk96uRhFgB7eLfjgAj+2QWX7S+h5JCs0seJRNI/X0zG/iKHMra3kBbiBRWvszGHU6QFKc iIg+LODxL9WP7S4YjnrwnKqbiBz4vpCSKBpzAWkHsbAvvqRIpGrWuIWFxk3ErWQ/D3i/HDNXE+UP uI468gkeBPtOF60WX4/O7HyfhYVnbV3xgZ11fYl0dlq1yzqXf0MMQ21Mq6H05veMrP5diObelepU seICxV/2w05UBlFMTKBQYgnTQtFxKZllQwUEbSr8UFxSr4G/7RM4NoWcAYmn6HspKNTdcqmMMzaX JLveEIqly5W5GHakOz8VDlW/iDoX9MUZU6ifsWgkBf6AtOoLhuRp9l7VNGojoP+SJmQQT/NRnTjN 63csxquCl0BxOeK4KQpITUnHyzLX22HuovCqXl9WF/KL8gLcYVWP76/BMSkiggJY2T5nlbHRTrIF uElSLbCNujUmwVFZXm/eSdXZai48bHPGs+Ws/LYS+ll/r1ZIwEupP8JJ72PprZy+XErsbw2bqZzJ mbPHAbyNualBZ+TyVqLo+miwZg1bJ103uGFwh1A2CUCe6SPUrTF3a8rkDCVOxXtLAsJgKQGS6wxo Z33/OwUnyEXeZmcOUPz7Rqs/3wEN9MdYfgvPRe+0BcallwTBwl+GQlNF/w7a8Q X-QQ-XMRINFO: OWPUhxQsoeAVDbp3OJHYyFg= From: Zhao Zhili To: ffmpeg-devel@ffmpeg.org Date: Wed, 17 Apr 2024 12:37:41 +0800 X-OQ-MSGID: <20240417043742.505853-7-quinkblack@foxmail.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20240417043742.505853-1-quinkblack@foxmail.com> References: <20240417043742.505853-1-quinkblack@foxmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 7/8] avcodec/mediacodecenc: add AV_CODEC_CAP_ENCODER_FLUSH support X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Cc: Zhao Zhili Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: From: Zhao Zhili Signed-off-by: Zhao Zhili --- libavcodec/mediacodecenc.c | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/libavcodec/mediacodecenc.c b/libavcodec/mediacodecenc.c index 64816ccf0a..c87a0d86c5 100644 --- a/libavcodec/mediacodecenc.c +++ b/libavcodec/mediacodecenc.c @@ -705,6 +705,15 @@ static av_cold int mediacodec_close(AVCodecContext *avctx) return 0; } +static av_cold void mediacodec_flush(AVCodecContext *avctx) +{ + MediaCodecEncContext *s = avctx->priv_data; + if (s->bsf) + av_bsf_flush(s->bsf); + av_frame_unref(s->frame); + ff_AMediaCodec_flush(s->codec); +} + static const AVCodecHWConfigInternal *const mediacodec_hw_configs[] = { &(const AVCodecHWConfigInternal) { .public = { @@ -755,13 +764,15 @@ const FFCodec ff_ ## short_name ## _mediacodec_encoder = { \ CODEC_LONG_NAME(long_name " Android MediaCodec encoder"), \ .p.type = AVMEDIA_TYPE_VIDEO, \ .p.id = codec_id, \ - .p.capabilities = AV_CODEC_CAP_DR1 | AV_CODEC_CAP_DELAY \ - | AV_CODEC_CAP_HARDWARE, \ + .p.capabilities = AV_CODEC_CAP_DR1 | AV_CODEC_CAP_DELAY | \ + AV_CODEC_CAP_HARDWARE | \ + AV_CODEC_CAP_ENCODER_FLUSH, \ .priv_data_size = sizeof(MediaCodecEncContext), \ .p.pix_fmts = avc_pix_fmts, \ .init = mediacodec_init, \ FF_CODEC_RECEIVE_PACKET_CB(mediacodec_encode), \ .close = mediacodec_close, \ + .flush = mediacodec_flush, \ .p.priv_class = &short_name ## _mediacodec_class, \ .caps_internal = FF_CODEC_CAP_INIT_CLEANUP, \ .p.wrapper_name = "mediacodec", \ -- 2.25.1 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".