From patchwork Mon Jan 9 16:36:39 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Zhao Zhili X-Patchwork-Id: 39937 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:bc95:b0:ad:ade2:bfd2 with SMTP id fx21csp2922359pzb; Mon, 9 Jan 2023 00:37:01 -0800 (PST) X-Google-Smtp-Source: AMrXdXujZ8VD6+o2T8H/4zO13i3+FjNZNKJYO2hG5h84Qv+c/j2tWa7dmxszY4nPtM4HgCFKPU2F X-Received: by 2002:a05:6402:2072:b0:487:6d4a:444c with SMTP id bd18-20020a056402207200b004876d4a444cmr36226158edb.28.1673253421705; Mon, 09 Jan 2023 00:37:01 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1673253421; cv=none; d=google.com; s=arc-20160816; b=Yv4O9LCorszsMK+6ZBE+9IT3Ry9gRVl8eM9qpRuIDd9fGaSF2peOMPRoKY/MpmGUdn ko4dVyHA7VBOdENYszzFfn70W7yfUCNwTr2hKuepERw9TrjvHg1QPbqEVVbw5T4CTZbR /G6joogksKj0nKgb7nnVw0CWSFnPcafbOexMvd8zLLhyOQSIXVAZ/gXasKE7/bHl2Vib KA8VxXEi+fX/gNXJRZrJvEL/LbuMVJHt/09kAhcIHgT/VSRqE8EfBZhRzTFmVOBrQqqc PDw8I0sl7wC1A5e9/B5w99zInEa0QN4JXM3AUBszxi0hDVhc7XwieMqcECiB5My9zvjp Q0JA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:cc:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:mime-version:date:to:from:message-id :dkim-signature:delivered-to; bh=6KiaBE2Z/zwIj8hgpli+5M1DIV1awUDCphbFDR00Jmo=; b=fp5Ca0hJ111ZiRDNGNNhBHBlq0SNk8uxBHoJ5mKA8LiXx4RqrGjpcJuqnJr5/EERMc wrmfRBhFlT76TOsu6ommQid8yVZESygvsVH1v2vuIFf4A72G1SEunbkpXOR3pKjDE8Fi tPJXjvjdf8C3FbQQa44hJDWNB2fFHPZ9MgF1Q7Dag5GJPrEHI7DcQlqO8jgWVjYQuS7/ U7uA2YQHleQoDizp5k05HJUn1/LQYwsY/BP36w23nbhv9IMT0nWCTBpoRy04qFHXU/6g w6Y1uiSGXFwL1JveL5zEOrWxsxihyfIwlo0IhJ5ibzEltQLaqvmXn5kc7nUTwTPRXu0R MMTQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@foxmail.com header.s=s201512 header.b=b14Je95V; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=foxmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id v18-20020aa7d652000000b004992c445fdbsi4128369edr.80.2023.01.09.00.36.57; Mon, 09 Jan 2023 00:37:01 -0800 (PST) Received-SPF: pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) client-ip=79.124.17.100; Authentication-Results: mx.google.com; dkim=neutral (body hash did not verify) header.i=@foxmail.com header.s=s201512 header.b=b14Je95V; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=foxmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 5323568BC19; Mon, 9 Jan 2023 10:36:53 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from out203-205-251-82.mail.qq.com (out203-205-251-82.mail.qq.com [203.205.251.82]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 93E9968B8B9 for ; Mon, 9 Jan 2023 10:36:44 +0200 (EET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=foxmail.com; s=s201512; t=1673253400; bh=6Bp7Xud1598HvhuXhn/stR/1ijmetcl80QJUFtshiQU=; h=From:To:Cc:Subject:Date; b=b14Je95V5R6m9QL8S9FQVNv6B9z4KoqmdWtw4ZdwkdX8krOUvae47yl4SeYpKI/A4 +YHJmLpPvz9L4dVtCesT7QfDi1uEuYdbZ259FsPeoDC2/DU/feFTDbxAxc8AtseKSV kASzV/t3lJMkGxQoMQ/f3s9T5+0WNfeBnExUfCLY= Received: from localhost.localdomain ([59.37.125.102]) by newxmesmtplogicsvrszb1-0.qq.com (NewEsmtp) with SMTP id 927AC0DD; Mon, 09 Jan 2023 16:36:39 +0800 X-QQ-mid: xmsmtpt1673253399tpgnpgkqz Message-ID: X-QQ-XMAILINFO: N26DAMVpW7UEPrxRPJ+lAZzm/d5khPbZMiX5fyao+YPkaLBha+xmnbxpMv7rvB 3NKBP+wJcMIfXg+MTVem0+GPR+ORFdyBB8bpkYkLhsYqIco/tMnaWB0+RUcbtBvLlEqO05rcQFed CWGuIRal6A1pWv/EN4Ln7zrFoJ2fMBf4mZNjIGzABcdAjod7pNx6fAkgrWEi9MyEs2oUjq6UbKx7 w1CcakMSpWYG8s0FqN2/4IkVUy88sKJSGzuxqwg9IwmWKnITJIXkRgq+dndmZG1tBJGsfbPL7uZt 3Jg+Do8VQvR6x2ahh513uqdQUiHPHO+7gY19oDI5uyxlsFhw/pMvMA5UeDlp2vfL12eGvbEiqwhZ x//i9qlXxSMQ8OCZD4BbaZAZWV/2saGl/GJOvYtPIky33HkTEBOapy9mvtxAti7X1D6U93UbmbnR 4pLAiM/b8x+K+wVSWA4O8b+KaEO8e/PL/BE8Ua9VINw6KaFGTavlq/tCzBG20UuMndlbf9a6sBAV zi8yugb7cq5M1kb78Lgqkf8LTpXE+r10wAYTQ39SXeyuTO1ZeeDoyPgGw36bOcMU2sEGFJLEyrHp lBquWFHFEg4I69bvYBDDizRFXqFbD1+ts3DzTZbf4fE09zWOpr6ZjsbzReNRAGAJHPwi0axyZOuy 1mYST1lEu3hE9PQAQRShv5tn/FRbxMCpZuHS9g/Hzp7mHLb1iF6NYumhUKGFkltOT3Xnj+lpDGnv 5o3A1W06WiBcjWsVlWGKiiqBYCtvF9m5tILZAs1qQAYNF7rrs34+N2VDOBVTNzd4EYBmp0EIopgH z+Pb95T5DAk9I+AH4v9mGpSrrlMpjgkjyy4HqDfHXsg7v0qI8UqAjlJM/Z/cFoYFUdM6zRF6Roqi cRrOt4P5ihv8DexHnN2OAuyIDRVBOhWMi342k6DkM0JUpfHtYM+/H712DrDZHzJSfO3Mjgm+5Tdh D2mCeHCGd4pNFywcgF720HC4pv5bYDTq8TKFfT3u8= From: Zhao Zhili To: ffmpeg-devel@ffmpeg.org Date: Tue, 10 Jan 2023 00:36:39 +0800 X-OQ-MSGID: <20230109163640.343220-1-quinkblack@foxmail.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 1/2] avcodec/mediacodec_wrapper: get api level via NDK method 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 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: q5ryR3BCwqkK From: Zhao Zhili android_get_device_api_level() is a static inline method before API level 29. It was implemented via __system_property_get(). We can do the same thing, but I don't want to mess up with __system_property_get. Signed-off-by: Zhao Zhili --- libavcodec/mediacodec_wrapper.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/libavcodec/mediacodec_wrapper.c b/libavcodec/mediacodec_wrapper.c index 4d6e9487b8..b675623a0b 100644 --- a/libavcodec/mediacodec_wrapper.c +++ b/libavcodec/mediacodec_wrapper.c @@ -2513,6 +2513,10 @@ FFAMediaCodec* ff_AMediaCodec_createEncoderByType(const char *mime_type, int ndk int ff_Build_SDK_INT(AVCodecContext *avctx) { int ret = -1; + +#if __ANDROID_API__ >= 24 + ret = android_get_device_api_level(); +#else JNIEnv *env = NULL; jclass versionClass; jfieldID sdkIntFieldID; @@ -2522,5 +2526,8 @@ int ff_Build_SDK_INT(AVCodecContext *avctx) sdkIntFieldID = (*env)->GetStaticFieldID(env, versionClass, "SDK_INT", "I"); ret = (*env)->GetStaticIntField(env, versionClass, sdkIntFieldID); (*env)->DeleteLocalRef(env, versionClass); +#endif + av_log(avctx, AV_LOG_DEBUG, "device api level %d\n", ret); + return ret; } From patchwork Mon Jan 9 16:36:40 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Zhao Zhili X-Patchwork-Id: 39938 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:bc95:b0:ad:ade2:bfd2 with SMTP id fx21csp2922409pzb; Mon, 9 Jan 2023 00:37:08 -0800 (PST) X-Google-Smtp-Source: AMrXdXseKGIWYOw1503Vp9VYDZFRN0HCJqawiMRQww04duQzsOoxOJGZa2f97GFCL+QZgmapuQcD X-Received: by 2002:a17:907:a48b:b0:84d:12db:fd22 with SMTP id vp11-20020a170907a48b00b0084d12dbfd22mr14147688ejc.71.1673253428206; Mon, 09 Jan 2023 00:37:08 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1673253428; cv=none; d=google.com; s=arc-20160816; b=oVvj2qrHgxoNEyAffiTpXzZphoOlIh2j8CbhnV5Ps7swz0yLAkk9qD7JtfwP+6FBVG 5++GdKfTYZOJtEJsoEh0sdGJE7huS26uyWfft/rM0LjHcU3EQL+I3zSawWPuH8IGN2iZ xWFcrOqoJa2yyWJct1FTA23tW8E5tyBi5JyI5Vj5T+31y9gVdV2szF3GJn85UU99FVej GUh0a/+sMwdV0y0za226cUVJ2qUcTtxagQYami/Vj6iczuc1KCIS/LCvpruxCYvJWyJi 5RMae31nJ1lBxoYle5e9vW3wZlXYBr0MS6p2wBqGrgFddxLRG671kECnrLDkhfYjMhgY eSnA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:cc:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:mime-version:references:in-reply-to:date :to:from:message-id:dkim-signature:delivered-to; bh=VtAMTzft5uSW35fav6NoboM0RpBKnPMm1IrSU/hYZyU=; b=GgV2wyHhDoAf36WBBRUjDf31UTiHkQoprXUynrL2gi5Acm8WZL7Vyh5V4fwTxel8Ks qQPIaASnnkGBtmkCUcVWyracmTkwObMl6BL43TFfo/HWhMkB+dCOpOn0UL5b6oVS1qQt TVA4FcsZbqDpMdYG1H5xLxIuhqkVD2a9V52yR3r6970U9arOuBGcR0pl6MkC20Ch5OiF csrfMskkVjcew0/8YgeHnsQRgKnmDcHcUQleOcpSn4sfn4f2+4+DZN2ScNy8Olp6Q3Bi 1LyhggpOkaCoe0bo0d5uUO2wfeDwHMD4HOOWtpV2+C2bRrAbYMIE11q2gbY7pIKCMT15 /8Gg== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@foxmail.com header.s=s201512 header.b=bqbGVR9Q; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=foxmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id wg10-20020a17090705ca00b0078def76da94si9779787ejb.437.2023.01.09.00.37.07; Mon, 09 Jan 2023 00:37:08 -0800 (PST) Received-SPF: pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) client-ip=79.124.17.100; Authentication-Results: mx.google.com; dkim=neutral (body hash did not verify) header.i=@foxmail.com header.s=s201512 header.b=bqbGVR9Q; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=foxmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 5D04968BC53; Mon, 9 Jan 2023 10:36:55 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from out203-205-251-27.mail.qq.com (out203-205-251-27.mail.qq.com [203.205.251.27]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 222D768BBB4 for ; Mon, 9 Jan 2023 10:36:45 +0200 (EET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=foxmail.com; s=s201512; t=1673253401; bh=r0rroDhRoURfCKuB+/ePQEstit+CaEIaZtqDbvbj+vw=; h=From:To:Cc:Subject:Date:In-Reply-To:References; b=bqbGVR9QKARbZBX4iAGArJHi13/tEC6nLXwrediJb/Gn1VvMy65uzTx47K4m1wFSF jWCd5BejIbjF8OHHxtsF10XHtSFfrOmCt9XwszkYxpSVhHLtk0ZCqWpK1SUTu2XvLE fOTDid0xERzaDvycIJzweWFGpNCbUnVVJlDiDhtw= Received: from localhost.localdomain ([59.37.125.102]) by newxmesmtplogicsvrszb1-0.qq.com (NewEsmtp) with SMTP id 927AC0DD; Mon, 09 Jan 2023 16:36:39 +0800 X-QQ-mid: xmsmtpt1673253400thpyrawdb Message-ID: X-QQ-XMAILINFO: Nfm/+M6ONQ57NScTVzcg5FfwytMJdoiZk0lKzYDBnxkOimE7XZwduiHfP/Y+p3 pERqP0UpESAt8nb+VcR7Xy/Obq8JRgjJ+8lmCnjCwUqwIXh6euV/bSt/AZrE9ey9Xrn50iUAC1Cc nrwszzWk6H+RACJG5PIU5ngUnkkWSo9TCgqK0WFQRMVi6sbVVELLTl4HDVaS84l52UzECWftLycu MMSMtpQs4Z+TK06cAAu0JhiWFiMB2saR6CTVNmA/OC6JLZlAFn6OkdPQ8DlDUNzOadmPHKz56IZH t6H8n1naVG55ZT6Om15L/thMOAOOIauYtqNI+a+qw6BpS9Kn2la7Yjtuw3WdFiiqELnMgGsi/jwR ExSner/CSim+jtwaNaNmVGqHE0NaZyfkrBj2LFLvwPtalXFIwTkEHGsxtQSgQgiKihZ7HK2HSfGX U97V6uBDgT1KI5X+5wUfFuL0xKEZ/XBnAPsvZw84/AFr9NNCdFit4R4DiS3NWfJSm9fCnHJy+DEP fPwnuyKAswIBoHUxvGBcM4ZjYElw69a7fHpCWpxUdKBxtAaU8GHJOGkjWiMTfHY9XlJMepYvpHUM jHNlhoNaSIjIZgMHZecD/sG30BsArSiv6wuGtRBLOxfdzYRh6lwKIwZKVp5nBwmojTl/JiEBi3m4 p1jusMvb3f02yvR0uSmevZDXg+hY9j4qZr0aBDxHXbvHJ6oLMJ89hhxSQKGF2+GP3E/0KeYmq/Dy OGwmMx7Bu6SbtO23DDd6XXUnVKjkaRMM7NPQXlMKdmMnA7ORlkBAvS8FOZHcpxPJwYd+GW/O83nQ hLBiU1fAUTcK31Oj0vgtwzNHSb8q8ZesXmCuqgBHMumY693Ik+fAv6jSEjo0NQV9XOygOSziW05R QaJRtmoSCbmImTZt0tQD7hb11XBGAVDpQUl0j98YKmMTxk6xZl1vdwP1ThFLktjbCrwDEEsGU8g1 IAm5Fuy3wZCnwbq2DQ7dg6sHhsMMm8hoijBVDIcJ4yTZpOThNGmQ== From: Zhao Zhili To: ffmpeg-devel@ffmpeg.org Date: Tue, 10 Jan 2023 00:36:40 +0800 X-OQ-MSGID: <20230109163640.343220-2-quinkblack@foxmail.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230109163640.343220-1-quinkblack@foxmail.com> References: <20230109163640.343220-1-quinkblack@foxmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 2/2] avcodec/mediacodecdec: check ff_Build_SDK_INT return value 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 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: BjhaijvjKMvt From: Zhao Zhili Signed-off-by: Zhao Zhili --- libavcodec/mediacodecdec.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavcodec/mediacodecdec.c b/libavcodec/mediacodecdec.c index 11f655a9aa..6ef23d7369 100644 --- a/libavcodec/mediacodecdec.c +++ b/libavcodec/mediacodecdec.c @@ -415,7 +415,7 @@ static av_cold int mediacodec_decode_init(AVCodecContext *avctx) s->ctx->codec_name, ret); sdk_int = ff_Build_SDK_INT(avctx); - if (sdk_int <= 23 && + if (sdk_int > 0 && sdk_int <= 23 && strcmp(s->ctx->codec_name, "OMX.amlogic.mpeg2.decoder.awesome") == 0) { av_log(avctx, AV_LOG_INFO, "Enabling workaround for %s on API=%d\n", s->ctx->codec_name, sdk_int);