From patchwork Tue Jan 4 09:08:33 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ming Qian X-Patchwork-Id: 33053 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a6b:cd86:0:0:0:0:0 with SMTP id d128csp16812079iog; Tue, 4 Jan 2022 01:10:10 -0800 (PST) X-Google-Smtp-Source: ABdhPJyE/En+sbVt9V91vmHHFhU1wt3DAlxH2hL3ubo223vA0ZnY6M15xUFwd7hBK2c7spLr+acI X-Received: by 2002:a17:907:6e1d:: with SMTP id sd29mr39948006ejc.381.1641287410497; Tue, 04 Jan 2022 01:10:10 -0800 (PST) Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id s2si13467873ejn.539.2022.01.04.01.10.10; Tue, 04 Jan 2022 01:10:10 -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=@nxp.com header.s=selector2 header.b=hjK2jgpy; arc=fail (body hash mismatch); 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=nxp.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id CF36A68B286; Tue, 4 Jan 2022 11:09:29 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on2043.outbound.protection.outlook.com [40.107.21.43]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 20BC268B277 for ; Tue, 4 Jan 2022 11:09:23 +0200 (EET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=QLMk4tYlhNaOdZMhusTq51mOFj9NdeOlDPeWWoBNYvaf+g4N8exiSXFGi00u3qurly28lunA1Z7BxaZxbbKKx6qNqGz1GaWi/ffhnyj+3G01wOcBQ8NwG7bUBpiC100NublldHnhijSxu7pPxXFCEsRv/1JG/oxZhLnprwEMJleIsACRpYrkWQ/FN0MTzumdUnsJob7EQEaxEpDgfymROLzH5fppobu//0kl8w1MndO58vFxtTkchDJt0bKPeSAgTQQTy9iWSYS3dV7Qa8jkFqoaS0qX8I80VgEwFnQoGPF4msFuOSgL2NDxk/Yyk6uVZKioowZ4qNtrCC+vw+xfNw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=sOl8h7zZbwId1ndVWNfSuTnyBznBZuTUg8GWCnfm6uc=; b=KYecrySs0C0uL1xaCNJ8uZSej/fZ61D/KD+R1/CVXhT1ROImOHh7ZUVS8G5LN68/lac1+DGYVH4cUgiaA4wLfBtIu3uITFyPjIkwT5fxiovJlFV5Rx5+d/HJrnp/4mBQHXVSO+rIW/NjSGX6ZiccU+M+tL4A18VdQ7DUfuKIn0G4BBRj2ccPqBnGZNXgkF0EOiBBHrC9idO0oPgOG/+pOpaUAr4WiKlXljYIOYyWZme8Ufz86gxCrEf6R8eK6uYZQODgc0xm8YfTxUIx2ma6GqqUL99CN9zH3FQ1S26aJENfyBjDfnD5kTDzz4Ey1DO4S46KXefTBV4Jcf9kkdZZaw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nxp.com; dmarc=pass action=none header.from=nxp.com; dkim=pass header.d=nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=sOl8h7zZbwId1ndVWNfSuTnyBznBZuTUg8GWCnfm6uc=; b=hjK2jgpyuZvTaGjJarV7/knpY3EBMYT367KmwbiNa0oNYRGL+JYak5lyK7Pwx2HZ79E3zRSEiWgEQSQABTYdjMRlpRyd8hbquTAi7ueXPMHzG04RwmutMvObehbm9a65/dOalSIBhg5JBHEF868VOCXrmUauPQ759K01hltZwVA= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nxp.com; Received: from AM6PR04MB6341.eurprd04.prod.outlook.com (2603:10a6:20b:d8::14) by AM5PR0401MB2435.eurprd04.prod.outlook.com (2603:10a6:203:36::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4844.14; Tue, 4 Jan 2022 09:09:13 +0000 Received: from AM6PR04MB6341.eurprd04.prod.outlook.com ([fe80::b9f1:7371:3484:95b2]) by AM6PR04MB6341.eurprd04.prod.outlook.com ([fe80::b9f1:7371:3484:95b2%4]) with mapi id 15.20.4844.016; Tue, 4 Jan 2022 09:09:13 +0000 From: Ming Qian To: ffmpeg-devel@ffmpeg.org Date: Tue, 4 Jan 2022 17:08:33 +0800 Message-Id: <20220104090836.31660-4-ming.qian@nxp.com> X-Mailer: git-send-email 2.33.0 In-Reply-To: <20220104090836.31660-1-ming.qian@nxp.com> References: <20220104090836.31660-1-ming.qian@nxp.com> X-ClientProxiedBy: SI2PR01CA0001.apcprd01.prod.exchangelabs.com (2603:1096:4:191::13) To AM6PR04MB6341.eurprd04.prod.outlook.com (2603:10a6:20b:d8::14) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 6cf4d478-dc98-4ebc-7ca9-08d9cf61e023 X-MS-TrafficTypeDiagnostic: AM5PR0401MB2435:EE_ X-Microsoft-Antispam-PRVS: X-MS-Oob-TLC-OOBClassifiers: OLM:2000; X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: T9PUTX+Fivqoey9htTldnCp8CkG9xL3h9lDwt7biLvLw0oGYpx8tWq+1ZvNXtM6u8VFIt0vzYzsYrkUOh9WzGHEC87bomJSgiLr2JTJWAL1pH6eoEPZBafRquE4jzGQfqepbUVWcDX/CiE5inm/MLkm6/YcF3vpRFn/+EySnaqBw1WmN92FOW30y73iBxlYfIqtdiGkv7256l6Kv785vhytBB5UhE28aGwZfgRk3qt9hd4YsA3VgvTN1kVjE+I1tgaQaqrdzwa6WoAPkWllUnyB8TGfSaHDoHT2SD3hF1RwawMq3YWeVDvL0a4NmFpAlOeYH4Ezo8GLy/CzYBo77azNHrAjjpyCOhINF6k7FjwsCKnpitiOWQeg36dN2LVTuRV5B5Kgoyn3NvM6PLH63ll4rjdQtSCQo/FkK463oWGD/8us01o79xa+MXIrs6Z3tN5dCYZ/kA+CKklIX7nITG6TFNXYyDOcO7qkJWqgIFDJQHgpzzmDyPYuWrN24i/lhAG05dLEXnMGT7Cr2X9pf6TVNT5dMZBVEQjAp9QieGLx0HL5jXjHIUxl2vY9GviP7t4YAL8oa/KFaSfYEaKF1oWM2+jZB7cE5pzgVfiql72ox/kgNmvAbg4CMP92A1F1nO53JEl07iqhXh5GsRItwJN09u1DTgfOuj1ThEg+bntFAaAFUtgzRgu1HdW4N5uAxxKz3xKugVPHS17WWKhXbHw== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AM6PR04MB6341.eurprd04.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(366004)(26005)(36756003)(5660300002)(6506007)(83380400001)(38350700002)(38100700002)(52116002)(186003)(6916009)(316002)(66556008)(508600001)(66476007)(66946007)(86362001)(1076003)(6666004)(8936002)(8676002)(6486002)(44832011)(6512007)(2906002)(2616005); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: 1K9JkTbOW8QsxQ6JgWS2/5fwMv2MDYUvcp44E0O/Niu8KLtnL+8MB++EyjboBuO1RL4IeIwQsOrMK5GwbtMMMpsoG654/x68jqsFpnpEdNtLIY7Lk0YvZrh9yioF4xAsYDX60+L24n1nQmdVEZrRGbNEF/8/StfgdMbYhFIUesni5Wgd8nkq8NfGgx1ZOnoqd6Q30QT7lB+bs06EwghWvp/dm30ubgcKEAzFhPzylvX12N9sOx/Va1xZULLm9vr6VajFmtTJYMhILuCMCE8+P9iA32d47V0wONnw1cjDNpTw26dy34C4zf7eFS8/tT1q/Si235a/gLonyb/HEyjW0q979nDqpcTsHizoRgtLKtSkdwNGBKPm7RUnQXIAu+fs5aufXvWgUfnS9auQK9Nlm36elrJpGf9Iy/cBk3yc4ekUjCy7oEym/NaV7zHyjJyy9CY2T1Jr883skf3/JYx+iT8VnggC5oYoVeO+B/yVJBxgdB9gToFbLHYbNwyXmiiOCOi8byUAcDnZmd3X9jDyc9htOJC3bJbPguvdVqxjGuxdpEIDxCKFWIJfXGAx/JCru0A717EWtDnkhFHH/yb2NVt21bZu/sM+iuND+P8gNoGpkaENFw6zgp7KqWadV+SQzPciXnqesN784xLKRcYx0PEAKqk16QlRBrqbl2TGkNcMFJeTnOMr/GngE/xrTWg+GTJH1okJqBNiKkSmFK6OA5F+RtLKKKQ7/G7jDNT+cXHraa13bj00lrWMCO3nEK3BMdF4+PKK2ybvbqY+6Mv69+eu3pA3itXmv78vv1iOVTIfjocimJGhlFfGEFFYoBMQzSSVWRvU+yplWX1aQaPMf8XrxeC/xXHoSh44ut+SHS2ctw+u7E/c2bqyLmhxizqyAmixVB/Hw6KkIskRwk6JrwutAhJutr4W2lQd+mEPUzLcAT1nzB5WGsQm2Yk/pN6rEts7LDF8QFlc7F4du316BmFBCRgr0wlJ7f5+bzED1gBcenFO3BABCxoR9IWMCK9TKAPHkdeCdETxZBExF4/QbH26fFwc3nR4kqzs52HC0+AvUwfqIiUoXrGJXqf5pIUxk5ELho/TUV1NXJGd9lWzu7T8yWoMtZwWlZFN8bUMfavqLDZfrPF7AZMB5F71iyfwNIfC3JTO8/6U9K12dlAFC+F+i3qT/lg2OpeNj3yYI86wqO6AknMJBV49OWJ7gH9lXId63i/8t4AKd8wo1W9z2S8in6JvVkB1ER1Hsa2NW4tObu5bDpQ3GvFHrWLXqyPnr+Eic41eBlPU6smagcRzw/pyLELIfsHWawePr223Swiw2RTDvIoyFlrElel57e+jdQUBc1tMBjjm1eyuT0WSgKBRjrwe5sIdP1jZ/c6FJqOlZ5j9GdsEgule+17TPrdxLVcEqRfy13Bfai7E6IMaFw8OwduXesZ9iKtRc4fgZSUc6CZT5cib7je1eYQh0RoeTC27Uh6f2NvvYmKbVAWRB8+jpY3KxnehsFKp6tOMx94uM0yE1f9AyVDWpxtz9//4TjwAQKmxdfwUe5Ab4SutiFBhOP0dpMQqj9iZ+THeykHdgW5ELxjsxr6SEJDehpZvn+3xJovB60kyGsItEKkmEwcYL3MkkkXqAGlk9Siy/6c= X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 6cf4d478-dc98-4ebc-7ca9-08d9cf61e023 X-MS-Exchange-CrossTenant-AuthSource: AM6PR04MB6341.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Jan 2022 09:09:13.0553 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 3NdqLvnzx0Pk7vakJPfhkzSvkp4i73tIBNGpY2bflpnjao7l2vLuutTr9SZ8cqZk5B+L5PIp+04Hz6CQjfzRgw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0401MB2435 Subject: [FFmpeg-devel] [PATCH v5 4/7] avcodec/v4l2_context: set resolution change if decoded format changed 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 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: FNgJLx+yfSrp The dynamic resoltuion change occurs when he decoder detects a coded frame with one or more of the following parameters different from those previously established (and reflected by corresponding queries): 1. coded resolution (OUTPUT width and height) 2. visible resolution (selection rectangles) 3. the minimum number of buffers needed for decoding 4. bit-depth of the bitstream has been changed when the bit-depth is changed, the pixel format will be changed, so the format is changed after a source change event, we should handle it and reinit the capture queue. Signed-off-by: Ming Qian --- libavcodec/v4l2_context.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/libavcodec/v4l2_context.c b/libavcodec/v4l2_context.c index a181f884d2a6..0a0f5b226960 100644 --- a/libavcodec/v4l2_context.c +++ b/libavcodec/v4l2_context.c @@ -85,9 +85,11 @@ static inline unsigned int v4l2_resolution_changed(V4L2Context *ctx, struct v4l2 { struct v4l2_format *fmt1 = &ctx->format; int ret = V4L2_TYPE_IS_MULTIPLANAR(ctx->type) ? + fmt1->fmt.pix_mp.pixelformat != fmt2->fmt.pix_mp.pixelformat || fmt1->fmt.pix_mp.width != fmt2->fmt.pix_mp.width || fmt1->fmt.pix_mp.height != fmt2->fmt.pix_mp.height : + fmt1->fmt.pix.pixelformat != fmt2->fmt.pix.pixelformat || fmt1->fmt.pix.width != fmt2->fmt.pix.width || fmt1->fmt.pix.height != fmt2->fmt.pix.height;