From patchwork Tue Apr 6 05:35:38 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 26768 Return-Path: X-Original-To: patchwork@ffaux-bg.ffmpeg.org Delivered-To: patchwork@ffaux-bg.ffmpeg.org Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by ffaux.localdomain (Postfix) with ESMTP id EEE3B448B03 for ; Tue, 6 Apr 2021 08:36:03 +0300 (EEST) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id C5500689805; Tue, 6 Apr 2021 08:36:03 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-oln040092075098.outbound.protection.outlook.com [40.92.75.98]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 85D6B687F21 for ; Tue, 6 Apr 2021 08:35:57 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=EipD624aO9nRl1sDM+pjDU2Z6tbdCT5OuAglSTiDzBK2+wAmvzn859+IWHAP3lg/TeO5eaP+Pb/Ga43xTXMiHkfC4iA/ASwDWU0r/8HlDgQd8camQqJzoR5KEqytXuEZCUhHDvAKnWReck4QZ9599CHlHRJukxDWkHto/pS0Ek/BfYwEiJ8tfCLrM2xEtiuLBqxjbnz3EvOEF5IrWYxn/40KqpSVvK3h8XoLhZxoNTDpVJUrV4QX6o+NI6+pE/wNUDtTQ1RYa9B9LB+kPc/ugEorUDpIgZ8bHgd+TzewL+gbFRmX3BeLZUE+CMyrnkSwCyn6fkzQa+E3DIbQczx9Ag== 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-SenderADCheck; bh=W3IEizyjIWsN68I7zvj811RkPPlJM3lSlybxuG3nkv0=; b=A8UE9maUFUFzFFP7q9lQ74z+EF6rshFHgyJPnwEPu33ArXJ6acOgUPku9/tw3LWqFEQ/0L1E619oxwilT5yeDmOK4P0EKydaHV84RDuCXZKKxqwVq0lDMEUQcPaP+LLLifkNhLo8xl3Gg6THwPFIn9v2kOf/ly8JawDsNk+O7I0wY8r0I8gHri9DegQQzYV7yPUkBLerYJkRuTGnFnpflE5RCJTr4N071+ftSt+lZ/BH2xjhHM9vnJYwDBOIEI5X7U3WxUZoV8SAAUMhD8APjY1TyVqtACtuz2UkH4nfFnkzWADeNEXYOZXgjCr/jmA6XSWXLkvZ2RAdoWgS3c0nSw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=W3IEizyjIWsN68I7zvj811RkPPlJM3lSlybxuG3nkv0=; b=dJoFaFkP+y6WzP8jCj60/3ecU5+UEhL0+f7urz1IbQ01iJszw0s5w8P0QBdt3KLtAeYpyV7TwsXzKdsq5PP3wVTpPb/q243VQJI9tcMuqPw14FXnHlnvkHN0XvfoCweQbV8UYR75eydBh+9IswDPXiDt5knZ3XkgFSpDyJ7y3uH6pmNg/Lm0xzUgIroUR+pqg+/d0HQ/OKeQrQQIbh7ckNcwwjQ5DF1ahJN15W0L8osncRfocy8Wfq+pwbST8b48OLWVgbtNmjmCiiRWEY460/AfOfWLQrgdjWywH0AXja8NKDiRQIVNKkoCynCWUmbmas6LKodetYkT9RobsgBt0A== Received: from HE1EUR04FT014.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::53) by HE1EUR04HT185.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::124) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28; Tue, 6 Apr 2021 05:35:56 +0000 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com (2a01:111:e400:7e0d::48) by HE1EUR04FT014.mail.protection.outlook.com (2a01:111:e400:7e0d::164) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28 via Frontend Transport; Tue, 6 Apr 2021 05:35:56 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:B6AAF96F144971D58D0989EADA1588F09CDBC87B57E3B8AC0169653A00D905D6; UpperCasedChecksum:504EEB7D176D5D632046CEC61405FA0A229B3BF769336560BEBD77B4A07C5D11; SizeAsReceived:7394; Count:46 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::8128:5de5:4e94:9a21]) by HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::8128:5de5:4e94:9a21%3]) with mapi id 15.20.3999.032; Tue, 6 Apr 2021 05:35:56 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Tue, 6 Apr 2021 07:35:38 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 X-TMN: [oMxtfaQMktYfm2XWYWyRxT5NGlO/Rm+t] X-ClientProxiedBy: AM3PR05CA0145.eurprd05.prod.outlook.com (2603:10a6:207:3::23) To HE1PR0301MB2154.eurprd03.prod.outlook.com (2603:10a6:3:2a::22) X-Microsoft-Original-Message-ID: <20210406053546.451969-1-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.137.96) by AM3PR05CA0145.eurprd05.prod.outlook.com (2603:10a6:207:3::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.27 via Frontend Transport; Tue, 6 Apr 2021 05:35:55 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 46 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: eba3c936-5de5-4cc9-d326-08d8f8bdd98f X-MS-Exchange-SLBlob-MailProps: S/btQ8cKWiSbyvoxwwqtt9ZF5aXTIDASvIDv4cRUxy9L1PKUQ7/whDszniCdNy5hzanRo6rlb1Rm22IzODpwJo7fnDWH+Vbcp0qTHDUh1IKaB3MBSgGERM3/yytDCcKueV/7Thi1GMafkBM+YJKE7fKx4oAghJUKUo41B3gX5tpQXZP0gQX6UIyUgIjY5IT4ZD9G53L4eHTfTx9Q1dhvDan8/36EnIClmUmmgB1gRNFc2wnU7QivRBC1oJJl0Id0vQNUNrDl2h2UcEfWxoCSL6N+aB752KdfhQor5y/sVbYsWD5RLdu/2ScpgrBCvO4Wc4Zo4Fr9i7q8wzEQcDBBXvpCW+62z7+KldhzCliei4+YYMkZ6Vnq4CA378EcyToNtSBDhLpw9FLrHSvvBe4DzbXJdsVaep4emNvUYIX/LhEcgYwugNKbRI23HvKGHs9BPX225p9PPRw+/IW5R5s3LqVeL0Bnb1VKLJh+/C7eovuMXGk6JwXdNJ88kZimzWn8psch4H75DDVsgtBJlm174kx2eEN++rHfFcmzhhHKufm5IMb6lFwqFRelq0diWl/dh+iy7mvJOROLNJI3YmuAw6mLUCLISb324I3f58hVFC81tbeHtAdZMv3X/TLjZ+1siwSCIvCKwCchxEw07TToayjsS14f0ZFhgvoKB/7j+2kNrQhJH1KKniVvhYvg7ECb+OR67L74SqrWOlv+QGXXEELIjX93rX2UQX8BoDaa7YpjlE3QtKeVKvDtug3qB1ampYdHqmEv4ns= X-MS-TrafficTypeDiagnostic: HE1EUR04HT185: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: pdCIXkWg07TwhTJLx/o/BuACbM5PM9Cviz3PZOA0mUCerS7h3mPMFkiko7gAQj+LRpWtsigEdseSa/2Oa142V3QzII632/KMQ8eFlvEUc1gTjlajEPZdzLFumQh1M5DC+CygacOrfYJGrPU13Dg4iUNRv8V7yg1q0ITl5b3n+VRxApWdQv7T5U3VQvHy1ilZOZofiIahqUDUxAyNGBb73V9n2awctl5E31y49PL15W3cQsj6/4ui6LosGHI/HP/6471ttkSAjaNn7s2b0W6H4KQXJtITiQJ+dE+RQbzUXHxwFRrhqHJxpJOmbDcCcGBpP3IrwSH+GcVT/0luhFSKkmHa8pf8+BGixN0dv14Gufe7XFxZFcekS0DTyNyU9DDO0NgGH6nQSIzY12SjqvX/wA== X-MS-Exchange-AntiSpam-MessageData: j/hQ28sEoEUBlEDx0vmfiEebiGNZPK/nd5IfW6iVS88gFkaWt95/NcJz0r3eWAwUnPAZ+zpPegBUESsf39CAl/2GJ7W6oM8xahcO/mWpWQdF5omkE491Ni0TpfREqlRdsUU8zEc9lUU7jTnNSRYxmA== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: eba3c936-5de5-4cc9-d326-08d8f8bdd98f X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Apr 2021 05:35:56.0621 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR04FT014.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR04HT185 Subject: [FFmpeg-devel] [PATCH 1/9] avcodec/encode: Fix check for allowed LJPEG pixel formats X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 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: Andreas Rheinhardt Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" The pix_fmts of the LJPEG encoder already contain all supported pixel formats (including the ones only supported when strictness is unofficial or less); yet the check in ff_encode_preinit() ignored this list in case strictness is unofficial or less. But the encoder presumed that it is always applied and blacklists some of the entries in pix_fmts when strictness is > unofficial. The result is that if one uses an entry not on that list and sets strictness to unofficial, said entry passes both checks and this can lead to segfaults lateron (e.g. when using gray). Fix this by removing the exception for LJPEG in ff_encode_preinit(). Signed-off-by: Andreas Rheinhardt --- libavcodec/encode.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavcodec/encode.c b/libavcodec/encode.c index a93bb3ccf7..89df5235da 100644 --- a/libavcodec/encode.c +++ b/libavcodec/encode.c @@ -565,7 +565,7 @@ FF_ENABLE_DEPRECATION_WARNINGS if (avctx->pix_fmt == avctx->codec->pix_fmts[i]) break; if (avctx->codec->pix_fmts[i] == AV_PIX_FMT_NONE - && !((avctx->codec_id == AV_CODEC_ID_MJPEG || avctx->codec_id == AV_CODEC_ID_LJPEG) + && !(avctx->codec_id == AV_CODEC_ID_MJPEG && avctx->strict_std_compliance <= FF_COMPLIANCE_UNOFFICIAL)) { char buf[128]; snprintf(buf, sizeof(buf), "%d", avctx->pix_fmt); From patchwork Tue Apr 6 05:40:09 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 26769 Return-Path: X-Original-To: patchwork@ffaux-bg.ffmpeg.org Delivered-To: patchwork@ffaux-bg.ffmpeg.org Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by ffaux.localdomain (Postfix) with ESMTP id A230744A9DD for ; Tue, 6 Apr 2021 08:40:32 +0300 (EEST) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 725E7689D57; Tue, 6 Apr 2021 08:40:32 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-oln040092075078.outbound.protection.outlook.com [40.92.75.78]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 6C7A56804FE for ; Tue, 6 Apr 2021 08:40:25 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=aWdesvkzd8yISwHhcFiq3JCvY8CNoVnJ7kFFltb2ZF2nkRF20VL3VjNwZlzhCrOPo1bI44il9sVyKxUElAVi46IFMFSzdqxhI2c/tmwJfR/HZyRFOrhT6R2EMe+tG+zr6KAtbsDEMpClnn9WAb0ze9syr7nFdSQ6I2yERSdRPCoi87iCAyIKDBP5Oz4kLq3Q11cF8eD0xFLmanosxDtj4Quw++OfoXXwxnPH/l4E1pJqDy0TAsVWWTaO3GJvKpWOIO84sizxq8uWPrMXBjmW+CKDq5FQ+dYrKavSYEV35mo1oakBU0hl+cS28xsTzvM7ni7z8g0KJ9nwFQC3/xfdDQ== 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-SenderADCheck; bh=t0ukrHuZJJGCNqCfLP9TMB6pl5MpBtuf5lQp6aiB9tY=; b=TD4b3x45g5CMYVhDPoFegLSqJ0Li4X3FYI1pt2UOKOb+wZCC5Qi14V+HFG5zDN8ByjgeRhqMrn7CewtjJPzeiff1VGAugr1QtzUu6sQhyXBJQN+sTrbSER5w+bq8McBLRW/2UoQYatoIRCZDEqovZ1gG1rQ92LWPFmgLlKI8iF6QssQ1aMH1Jacdygj8/ROi57QZnlkM8Q9Hz58VUyJALfG1au/nD1NGY9fysZP19JhVbzOMSQmyTMAWLI+R8HTQe5dP4FtXQAezbrU57odVJNsyJcJztES3eAxA/sETIc+gll9Cp/bC/y1ACB63Rav42qOJhq41BLLOI/WMCssIlw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=t0ukrHuZJJGCNqCfLP9TMB6pl5MpBtuf5lQp6aiB9tY=; b=HvJQdql/3FQkYTTEvVqmfPIx17sF1sjKvSEvheoipWRuknksxhyFs81SH/etITBHy+4E27AGzPkC4bgR/yGLoPrj5y0MGeEt87659R1wtQV0vUkp0DgO/iLYfZOhTLkpOuRU8lSHNxP5yu8uYe4ymNDWOA/+p5vFnGkpDdSmjk9OfmFROrqbox3aNR9kankmWH875dZT2P7UqOJI9Bnz7fUkQBBXtfWOJcbnZdq2a4WWY/8RFOZVRCyrzKgzLrCShAhzx0OPVVNZDBEcXw4r3P4ivxd6sobg3x4Q7g6wZjr8O/PrjvobyxGOzLitRpDCjlp+HC/2Y/UHifJazS2uEQ== Received: from HE1EUR04FT014.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::41) by HE1EUR04HT128.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::223) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28; Tue, 6 Apr 2021 05:40:24 +0000 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com (2a01:111:e400:7e0d::48) by HE1EUR04FT014.mail.protection.outlook.com (2a01:111:e400:7e0d::164) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28 via Frontend Transport; Tue, 6 Apr 2021 05:40:24 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:E68518861FB30A9C797A19AE97D37344D0F784906256D47B00C389D84F1656AB; UpperCasedChecksum:C1832D775363FB21543EAECE12CD3FA6D564DA864E16CFC677F5A29620CF97F7; SizeAsReceived:7606; Count:48 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::8128:5de5:4e94:9a21]) by HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::8128:5de5:4e94:9a21%3]) with mapi id 15.20.3999.032; Tue, 6 Apr 2021 05:40:24 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Tue, 6 Apr 2021 07:40:09 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [nWVXJkGXzGVaJ5wjFq9J0oxmzmgB6DGj] X-ClientProxiedBy: AM0PR03CA0024.eurprd03.prod.outlook.com (2603:10a6:208:14::37) To HE1PR0301MB2154.eurprd03.prod.outlook.com (2603:10a6:3:2a::22) X-Microsoft-Original-Message-ID: <20210406054016.452174-1-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.137.96) by AM0PR03CA0024.eurprd03.prod.outlook.com (2603:10a6:208:14::37) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28 via Frontend Transport; Tue, 6 Apr 2021 05:40:23 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: 5058fda6-cde8-4332-a6c6-08d8f8be7969 X-MS-Exchange-SLBlob-MailProps: S/btQ8cKWiSbyvoxwwqtt9ZF5aXTIDASftzQYSlv0fj3ABkP+jOTiiPk1PSgngSk8UHzvLj1VTYNxrV04YllFOCNtO0M7lDv32j6CY8xK+OM2WtG8/DJIYUcYDsqUnh77KDkaGTVMlybrMP63PSm2S8VFHiPF88AxyOw7VYCH0a09vBwUSVcKp0IAry+u1VSsjE41kvPCmaP8p/2KbHNwESfOr+mncbFAlfx6mC51cD455Y4bW6oqb5PChS430nw4rWbbry/wwTZhAcFYCbs6fA9Sl07ZDnkEfPYlkETfl/DUR0kylcFK/rapN5+2ZRqPp0BrO/vqTZs49GHbN9zS8o/sCSivwaXxQsGqDxGE7E9G+O88QjSEFEimQ3x4ctdOHDYBTNd2nEhk1M9cig9L+ULjUHqXpIHK9KAnEEGeWImGshWKJ6GeK6Q5dQjat5xHn14bf95NstD4CyzCyORaZyeUOxxru63B5L7ZHVrdi/GRETMcgDRvY+bdDY13m550N0pNeKTbux8TL1M82jAWmgGdP8AsMfJ8yk+rk9lkZXEQRCjU6gqkoz0aBLhI79dTbsFkmGTvMrcnL/bkvMvApWfOu5WU1gJkGKylnJ1/ozTpjR98Y7a5y0LBAq24WkSrtezemehVCM6jjpCHPMj0cgINynJrx8cyiEyWCaAEXERZnPYkXKFZV9J/YedGFy2Tn0xhIfdLGMniwi/7kDzirZstB4flxmuZDPzVuzV7sEaqp+8Ci0oS4phIGz9s+dBDqytLBFiO0c= X-MS-TrafficTypeDiagnostic: HE1EUR04HT128: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: hKTrzg/QUpI5sC1Z3TubbV4TllNUisoH/lVJEXM1f9GXlWWo3FgCrgvbLtqfwLMa66wvEVOWxF7YG67t+X82c2V3JEtGJixjkUWl5tGvLcUMgllP0LeW2ezOFmyJoSF2uGi+gATypeuVFFXnbUh/HOHeQoCzJY5L1oD1iDvgVhs2M9F2KNO5WKfU3jsV5jTARIM2jGWlNh5qxtMwHea7XxTht+OaC2huJEKppMl4EfVYmtbLFCGa8WQl7bRb6V6pNb9bRRhPBYN83/Bx212a/COJeM2J317PGGPWOa/YrHo9RjVogQgkCe2DTbjqm+ooyLjJYjItVv/MLVdrbQCBlpaKoM57Z2cENK2llPpGe2uQ/jHFMgv8sw9EosoaynpG/vAmU+DHsMyM7xqgFQ3Rig== X-MS-Exchange-AntiSpam-MessageData: z2Zs5xq+ZsQAEVTA3Rse1vmYM2SEg84TXHe64w7iVIi+nQPWv1c9V8yzVuQ/cAZeXfL2tRHdU6G2/wODJIwMLf0ojCLopyqRMXN/yL/MNSzD8BchFJgDRJmqa+aiSKOCVl5l1wPtCW8tr5vl7UyJnw== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 5058fda6-cde8-4332-a6c6-08d8f8be7969 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Apr 2021 05:40:23.9146 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR04FT014.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR04HT128 Subject: [FFmpeg-devel] [PATCH 2/9] avcodec/mpegvideo_enc: Make AMV encoder usable without MJPEG encoder X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 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: Andreas Rheinhardt Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Up until now the relevant checks all checked for the existence of the MJPEG encoder only. Signed-off-by: Andreas Rheinhardt --- libavcodec/mpegvideo_enc.c | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/libavcodec/mpegvideo_enc.c b/libavcodec/mpegvideo_enc.c index 79c4071bad..7c9d1bd894 100644 --- a/libavcodec/mpegvideo_enc.c +++ b/libavcodec/mpegvideo_enc.c @@ -789,17 +789,17 @@ FF_ENABLE_DEPRECATION_WARNINGS avctx->delay = s->low_delay ? 0 : (s->max_b_frames + 1); s->rtp_mode = 1; break; +#if CONFIG_MJPEG_ENCODER || CONFIG_AMV_ENCODER case AV_CODEC_ID_MJPEG: case AV_CODEC_ID_AMV: s->out_format = FMT_MJPEG; s->intra_only = 1; /* force intra only for jpeg */ - if (!CONFIG_MJPEG_ENCODER) - return AVERROR_ENCODER_NOT_FOUND; if ((ret = ff_mjpeg_encode_init(s)) < 0) return ret; avctx->delay = 0; s->low_delay = 1; break; +#endif case AV_CODEC_ID_SPEEDHQ: s->out_format = FMT_SPEEDHQ; s->intra_only = 1; /* force intra only for SHQ */ @@ -1097,7 +1097,7 @@ av_cold int ff_mpv_encode_end(AVCodecContext *avctx) ff_rate_control_uninit(s); ff_mpv_common_end(s); - if (CONFIG_MJPEG_ENCODER && + if ((CONFIG_MJPEG_ENCODER || CONFIG_AMV_ENCODER) && s->out_format == FMT_MJPEG) ff_mjpeg_encode_close(s); @@ -1926,7 +1926,7 @@ FF_ENABLE_DEPRECATION_WARNINGS frame_end(s); - if (CONFIG_MJPEG_ENCODER && s->out_format == FMT_MJPEG) + if ((CONFIG_MJPEG_ENCODER || CONFIG_AMV_ENCODER) && s->out_format == FMT_MJPEG) ff_mjpeg_encode_picture_trailer(&s->pb, s->header_bits); if (avctx->rc_buffer_size) { @@ -2596,11 +2596,12 @@ static av_always_inline void encode_mb_internal(MpegEncContext *s, if (CONFIG_H263_ENCODER) ff_h263_encode_mb(s, s->block, motion_x, motion_y); break; +#if CONFIG_MJPEG_ENCODER || CONFIG_AMV_ENCODER case AV_CODEC_ID_MJPEG: case AV_CODEC_ID_AMV: - if (CONFIG_MJPEG_ENCODER) - ff_mjpeg_encode_mb(s, s->block); + ff_mjpeg_encode_mb(s, s->block); break; +#endif case AV_CODEC_ID_SPEEDHQ: if (CONFIG_SPEEDHQ_ENCODER) ff_speedhq_encode_mb(s, s->block); @@ -2853,7 +2854,8 @@ static void write_slice_end(MpegEncContext *s){ } ff_mpeg4_stuffing(&s->pb); - }else if(CONFIG_MJPEG_ENCODER && s->out_format == FMT_MJPEG){ + } else if ((CONFIG_MJPEG_ENCODER || CONFIG_AMV_ENCODER) && + s->out_format == FMT_MJPEG) { ff_mjpeg_encode_stuffing(s); } else if (CONFIG_SPEEDHQ_ENCODER && s->out_format == FMT_SPEEDHQ) { ff_speedhq_end_slice(s); @@ -3921,11 +3923,14 @@ static int encode_picture(MpegEncContext *s, int picture_number) s->mb_x = s->mb_y = 0; s->last_bits= put_bits_count(&s->pb); switch(s->out_format) { +#if CONFIG_MJPEG_ENCODER || CONFIG_AMV_ENCODER case FMT_MJPEG: - if (CONFIG_MJPEG_ENCODER && s->huffman != HUFFMAN_TABLE_OPTIMAL) + /* s->huffman == HUFFMAN_TABLE_OPTIMAL can only be true for MJPEG. */ + if (!CONFIG_MJPEG_ENCODER || s->huffman != HUFFMAN_TABLE_OPTIMAL) ff_mjpeg_encode_picture_header(s->avctx, &s->pb, &s->intra_scantable, s->pred, s->intra_matrix, s->chroma_intra_matrix); break; +#endif case FMT_SPEEDHQ: if (CONFIG_SPEEDHQ_ENCODER) ff_speedhq_encode_picture_header(s); From patchwork Tue Apr 6 05:40:10 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 26770 Return-Path: X-Original-To: patchwork@ffaux-bg.ffmpeg.org Delivered-To: patchwork@ffaux-bg.ffmpeg.org Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by ffaux.localdomain (Postfix) with ESMTP id AACE544A9DD for ; Tue, 6 Apr 2021 08:40:46 +0300 (EEST) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 96116689D59; Tue, 6 Apr 2021 08:40:46 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-oln040092075058.outbound.protection.outlook.com [40.92.75.58]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id A3968689A8B for ; Tue, 6 Apr 2021 08:40:39 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=aSOn0sG40nZuVcOFw5wV8G7v5SJZQPUJhgvKL9QRXARg5hQvovubY4BXAq4gAxOkLWKnGkKl76GLgO3Ls3WbmGrEUsW27n0PLcPckvMe3rAFdlAObvcD5wXSpxo7ur+BD1DtNgBBP22RHWn7dfjCTG/vzpExmOAVgoc4kfcjGGB3+qG8dlYROqVNgjr5UKK5TT5YDLpEPFAehBM05qxOsfx6vlPSuQwhlvOgSewUwPyt6Jh0fhuHsEfkHivf/23mBNg3idtq7bgfg7M+EtYtDrrzRzt/A4MsFZRLCtLFkq5JF68DUh5QbnIZ2YXzqws1WL3Oa8QY7FQuniZcVb/0uQ== 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-SenderADCheck; bh=6m8QYCbGvaNvEc4LhadbWXjp9oLIxutdqymWkG27E2g=; b=Umpay856nWfIhK4IpqrQNbfMepzh6Rl8jfMqNZfQicO5Jqn70s7Bw0tUyQdbbXqg3BpS+JLPbCNIGenPd3uga/RE2WeGI9p2vyqFrZTdGSHm85UNJNupiL/mbleLRo8dHWBIpN/swoWmgYSkHTaLr75ibz7OB+r7YWmPvN5yJ17JVlYx11m+ks7T7FBCnkHu3qA3D1E4kGGegg4ChjuFu2tMzqiQse/PM2mbx6miO4e9Ciguy9VFiuhzNO0oihlldy8EgxfaeOXKZ4kwYF+rM3LxKBNaqyutQcUxRtoEoyuVCBwWlRVNv6QF2xmk2DmQwmUH1cIs9mhkTWd3k9CIbA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=6m8QYCbGvaNvEc4LhadbWXjp9oLIxutdqymWkG27E2g=; b=NIqoYSIq3CPbKOeMIksx2cf70Kvez7GafLpOqUyZUZOs1+3K3nY8vyPx1AKFyhHbc4TtaVh+v7/u61xOAQo3sS0n1h59dwY3n05NY5lgaNAhcquXa6zUY5+DwFc9Eb0KaR8Wf5o5VG2yOJzYTq+sSRwji+p0aUcPXzqmbmGkxXl83Sc1KkywbsgAMOCMa/HNxW/RPbNs/M0+5HaIOa66Rfa2UwwEfDNPnNjM2Amvz4RLkHS5qze04D07WIyUGvfnE6B54X88tsF6NhAElsXttQH+UIIjuXlQ1zTsdosHSyJgxaOqoSXcCjpIVBlH8OcPDW7gx07jEQ77Aw5Ovo/39g== Received: from HE1EUR04FT014.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::51) by HE1EUR04HT077.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::154) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28; Tue, 6 Apr 2021 05:40:38 +0000 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com (2a01:111:e400:7e0d::48) by HE1EUR04FT014.mail.protection.outlook.com (2a01:111:e400:7e0d::164) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28 via Frontend Transport; Tue, 6 Apr 2021 05:40:38 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:D178276DE311E23024095E7A4C6BE9CFBB3D291E335FD68B8F908F2B481AF2F6; UpperCasedChecksum:4F7021E5786008BD9D7D14F0DBA54A8D716FB6F2E5D97D6C164FC07E78AD9751; SizeAsReceived:7607; Count:48 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::8128:5de5:4e94:9a21]) by HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::8128:5de5:4e94:9a21%3]) with mapi id 15.20.3999.032; Tue, 6 Apr 2021 05:40:38 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Tue, 6 Apr 2021 07:40:10 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [SK4k0mD9Xw9yyyITx6I5wcpbU9+E5Jav] X-ClientProxiedBy: AM0PR03CA0024.eurprd03.prod.outlook.com (2603:10a6:208:14::37) To HE1PR0301MB2154.eurprd03.prod.outlook.com (2603:10a6:3:2a::22) X-Microsoft-Original-Message-ID: <20210406054016.452174-2-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.137.96) by AM0PR03CA0024.eurprd03.prod.outlook.com (2603:10a6:208:14::37) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28 via Frontend Transport; Tue, 6 Apr 2021 05:40:38 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: 6169d206-ce96-4c37-0954-08d8f8be8243 X-MS-Exchange-SLBlob-MailProps: S/btQ8cKWiSbyvoxwwqtt9ZF5aXTIDASFJxCeCCX3MJ+71gqSc+FSTFZJ/CXghpO8jdt+/1ICq8KkWa4hSHxazcIaHSnuezJEnLNZAG3iU78hmi/XNnWJV5HhRRvG6g9YSVdcGDYLO67ELS22WY34gJ5SPpa9RBOAuPTzlZdH3hZqgc8kYL6Vmdru/00P4zAlLBYevtcm+VvH0V5IuVzSnT7gB3iIeyXpUld4EykTBynFooEnbLoRd5nAHJpiWn5DEady45BL56tuqq0ZZMAe8/wnjkwMOyAz4jUKZKb5rkJoCSShl+yBuQhl3sT+4xowr903l8O1k59CxNaPEU1ggrj+o8OkC1SZKdfm5iFH/cjfSqmq8VgoGOgXDC6dGoF/WW0QQcDchKlEQAqPLnyPLOrMqynoHKxVJEb8+5crUACM55wB2atbsJseAB3DDRVrEoa2z/vKqWmCmcvAsyidO4laaAafi/xahmpHct8L8ekZBuIlEpXOuyLNJlrmHPBoJ2EC6/iV4FPCHKiHErPP70NGFzQI/75u1hPWszejK0QoG5CHwqbkrzrnIrOLv+hjHYXkawd/qMDnIX9Uc7ZGaLDIy9DLTi9PH+7u17IbJzG8U8SNWN/bHXoo5yIflyt1cQJgx9Cgo40bVrH7F7cuTX8oBylAKNkM8mpufkYBEYf1PNrIByHAlFbJeugn6OZy4k1K89dqx/0RvUrfEBE2qd1d0sVrbk0XpfpU517K8Uhi8D55cl1ywPEWUOyGBBX8VskyycIvog= X-MS-TrafficTypeDiagnostic: HE1EUR04HT077: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 2F2qIg3S9wjfAx3+pgSUHMAG5Hvvb6kdmJEWAUy+FuIJPqu00GE/hexr6jydUaLHCEF8B/eRNQPqyrJHMntZHfgTAInxQe5+LT1vOmf/ynB1mzR+g1c/u4EPxh4zL/D/GpzBm/XrBj9B5ceGpWC9rUyxzHjvG3kXp0bhVZ8qTEQC4Tvd2paJgLOtqHAnWh5J6b1IeWFQ3zp23a6AVvq44+wSedlfRl3AHtXZNFvy9WzaWgBVtJnqJBVo+dinUpPtQz17DLlZIFVhUhPqf9vgZ0PqKJ6n1NZYD5y57IfU9GfrZxyCi5qJC2AKsmRjUhCB9vJZdeJ1/c5KTu0yGv9YgJRx9Iw0MogZ11qDc58/g7njApH7gZdBZVB7LEae9Pkyc0erev4Q4ZyFUwsfup8arg== X-MS-Exchange-AntiSpam-MessageData: H3uLqB7lBaYJQqPe+ZIkEwIhdReJS2o8gOwvvsBTBCqZlCqsibLZb1R1nYysGkkZH8qAX8S40IOKia0b1M0IXeRPpWS0uTVc53UdZRwWSIFpmxom3zvzerTLlnIJMZHLN5EB7Zl7MdJubpoLSqX57Q== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 6169d206-ce96-4c37-0954-08d8f8be8243 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Apr 2021 05:40:38.7470 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR04FT014.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR04HT077 Subject: [FFmpeg-devel] [PATCH 3/9] avcodec/mjpegenc: Remove dependency of AMV encoder on mjpegenc_huffman X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 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: Andreas Rheinhardt Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Using optimal Huffman tables is not supported for AMV and always disabled by ff_mpv_encode_init(); therefore one can build the AMV encoder without mjpegenc_huffman if one adds the necessary compile-time checks. Signed-off-by: Andreas Rheinhardt --- libavcodec/Makefile | 3 +-- libavcodec/mjpegenc.c | 9 ++++++--- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/libavcodec/Makefile b/libavcodec/Makefile index 33a280cf69..4a597f727a 100644 --- a/libavcodec/Makefile +++ b/libavcodec/Makefile @@ -199,8 +199,7 @@ OBJS-$(CONFIG_AMRWB_DECODER) += amrwbdec.o celp_filters.o \ celp_math.o acelp_filters.o \ acelp_vectors.o \ acelp_pitch_delay.o -OBJS-$(CONFIG_AMV_ENCODER) += mjpegenc.o mjpegenc_common.o \ - mjpegenc_huffman.o +OBJS-$(CONFIG_AMV_ENCODER) += mjpegenc.o mjpegenc_common.o OBJS-$(CONFIG_ANM_DECODER) += anm.o OBJS-$(CONFIG_ANSI_DECODER) += ansi.o cga_data.o OBJS-$(CONFIG_APE_DECODER) += apedec.o diff --git a/libavcodec/mjpegenc.c b/libavcodec/mjpegenc.c index 596b7544ca..e5d2e24d66 100644 --- a/libavcodec/mjpegenc.c +++ b/libavcodec/mjpegenc.c @@ -65,6 +65,7 @@ static av_cold void init_uni_ac_vlc(const uint8_t huff_size_ac[256], } } +#if CONFIG_MJPEG_ENCODER /** * Encodes and outputs the entire frame in the JPEG format. * @@ -171,6 +172,7 @@ static void mjpeg_build_optimal_huffman(MJpegContext *m) m->bits_ac_chrominance, m->val_ac_chrominance); } +#endif /** * Writes the complete JPEG frame when optimal huffman tables are enabled, @@ -186,11 +188,11 @@ int ff_mjpeg_encode_stuffing(MpegEncContext *s) PutBitContext *pbc = &s->pb; int mb_y = s->mb_y - !s->mb_x; int ret; - MJpegContext *m; - - m = s->mjpeg_ctx; +#if CONFIG_MJPEG_ENCODER if (s->huffman == HUFFMAN_TABLE_OPTIMAL) { + MJpegContext *m = s->mjpeg_ctx; + mjpeg_build_optimal_huffman(m); // Replace the VLCs with the optimal ones. @@ -206,6 +208,7 @@ int ff_mjpeg_encode_stuffing(MpegEncContext *s) s->pred, s->intra_matrix, s->chroma_intra_matrix); mjpeg_encode_picture_frame(s); } +#endif ret = ff_mpv_reallocate_putbitbuffer(s, put_bits_count(&s->pb) / 8 + 100, put_bits_count(&s->pb) / 4 + 1000); From patchwork Tue Apr 6 05:40:11 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 26771 Return-Path: X-Original-To: patchwork@ffaux-bg.ffmpeg.org Delivered-To: patchwork@ffaux-bg.ffmpeg.org Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by ffaux.localdomain (Postfix) with ESMTP id 9A97344A9DD for ; Tue, 6 Apr 2021 08:40:48 +0300 (EEST) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 805D468A42C; Tue, 6 Apr 2021 08:40:48 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-oln040092073107.outbound.protection.outlook.com [40.92.73.107]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 4BFCA68A497 for ; Tue, 6 Apr 2021 08:40:42 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=CgrNG1F2S5gmnhKcEI71NqMImRNlUXz4RCCK1RBTl+SBKbii0G9hOz/7VstJ/txWXYAQ4iZZOYR0WBTP8/VZwhnB5Mol0EhAfzfHp+sPhizeEC3j3jN11XjG+3bly6PJAk/CEpCpDznPjNejFO7gjBO6PoI/X3Zt6Sds7JSYlCF4NM5EE7BdJQ9YtWDzAmkif+D2eMv23w/YtcUWDQClsNCxnu3LRXUt7E09fjYKDODG6jeQugyPSfBxivrr5mmng3zg/J/XLIqCkyFoPeA4jzkbJCGLwhhwpZQMs0fOCbbxqUOwv8K01pvvPXTnPl8Y0+I03CQZ4CyyACf8zIiB/Q== 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-SenderADCheck; bh=Mi/bADP7sduD/l2/NcM91xsQRu3D43K6MlLgCs7oE8A=; b=W/mWDnKcSF5bJ1Jm2mH7BT0VOXicofGk8WmP4fS2UgRVBv6EicBJgh3OIT1WO1JsbmQnSi5vdOQFl0TVSPgsZJvRjwltV7FyhhT+yFZ+0ENyUlUwzo6fmIkAlV82NCFhp2e14xxl11G60m0nB6mbcVHkvmh6pfOTkzy72zquGDEwhYGjvXpTO6K34VjmMqr2Ht/8zDfVWoP0mBVijmWg4ZtSSHAqANX39X7j29mBkN9dSU6QjmGcdMheBYLELCzjfP2UacNFmagusyWjRU/9CNbmk4XLEh5dbWcZcHUTCirJclB/YMI2Cym4ovQsE5JmpssMvwXgrlFi/ooXuP/DmQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Mi/bADP7sduD/l2/NcM91xsQRu3D43K6MlLgCs7oE8A=; b=EaYN6R7Xfsb4ajgFqw5Yhs9LkrFII+ZSNoiFTax3Bwcs/v6kYzMNmJ1Y77Bk3boLPfNa6zWmwV3jW4b36SpCvh6MCtL6exJat76YASaX3Jdw6ra/1V7RZ6yDQN+hcupzt8SNdy4KtFn5tMpQ63ECVFlthJ1cqym9pG3kF2awrhtcCiNkDEd4Jr5FfvZNjm0egBwNfUJSLmowt0cM0fP3zqp/7IqP0cAIm/r8zmGXvz5CQhoMXniucdGLGwNYodx3SyKGgpBgIhsqdB9W3YoaHxUVQhCrYhXh3NEt79gdpa1AWM7nNJpAbqiVPjf+zWd+EEumAPlfbBsXbltYnqZDjA== Received: from HE1EUR04FT014.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::41) by HE1EUR04HT192.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::98) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28; Tue, 6 Apr 2021 05:40:41 +0000 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com (2a01:111:e400:7e0d::48) by HE1EUR04FT014.mail.protection.outlook.com (2a01:111:e400:7e0d::164) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28 via Frontend Transport; Tue, 6 Apr 2021 05:40:41 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:D261B2339D92EDEFDEC6198EA494C7C28D2790483EBCCA5DB2E4B46E9B06B5FE; UpperCasedChecksum:3C41059AD44B2A74A544BDE1F3FD73EB35C1BD914F58A1236CBE9F6D4A1347DB; SizeAsReceived:7596; Count:48 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::8128:5de5:4e94:9a21]) by HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::8128:5de5:4e94:9a21%3]) with mapi id 15.20.3999.032; Tue, 6 Apr 2021 05:40:41 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Tue, 6 Apr 2021 07:40:11 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [papM9nm2iwHZ6dve/GGcpcL0XGWZRh+M] X-ClientProxiedBy: AM0PR03CA0024.eurprd03.prod.outlook.com (2603:10a6:208:14::37) To HE1PR0301MB2154.eurprd03.prod.outlook.com (2603:10a6:3:2a::22) X-Microsoft-Original-Message-ID: <20210406054016.452174-3-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.137.96) by AM0PR03CA0024.eurprd03.prod.outlook.com (2603:10a6:208:14::37) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28 via Frontend Transport; Tue, 6 Apr 2021 05:40:40 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: eb7d9a10-7cec-4648-d956-08d8f8be83a8 X-MS-Exchange-SLBlob-MailProps: gjx25WM8ZNVIvygFamH8o7OZElNfARO0jmsB2gt+PIPEgSrUq88LBF32o6bwu4azFQbCpbW/FacI4RSld7fReQcc79cZXzKxF5n3MraO+LdEJ2KPRSplwkWiq5b2bnwC/tL6uFemXyMBnIUiJeO20ipnVIUWAj4QN1ZR91dumz3TGs/tJRu0r3dpRstM6ln2a+jQXv9EyEe5CobJFgsnlfWjuGpRMqHL+N81JiX4pNylIIgO5uWLWwZ0EhQ267UNG53I6iCbTkU+t7yB0sNhSaYpZjmNuFVruEMa0E2vKb+Wq67moJq2AJyNSxZU5Yetz8545tDiWJap8j17EHLANZMquDXSbSaD68/NaZ4+8gX4obLnPRDVnMW1gm6od8E2fsT6JszwXAG/aRgStNCIEVPwPKPrzaVek8ybhfv9EbJPGT8miC3ma5cuxGsc5c/Y5Q17uBiGfgGS4u3dJcAef3I9Qn0kdX2U64PRBTY3MdtdNM8utl+1050/h384NcBOSAydoXHewtRZfqmua3JADR4NHFnZpCDt+r2RjEnD9DqebPbQLAArDeVKqTnv0GWkRcIdflwcT/jdxin54XGEGdyoJhQBYI1UKaqUdZduJqimgc1ZArmBi69IO9zrBXLydocarKUL/wWPYHDzDnADx5wkcs9yRf0HGo1VA6uVGEb0Lp7hLBlnNskl8t9PWpQXPGIW32VGQpy/tKH55hBRDBo86FCW3pyQPZQL5XFmyYQ= X-MS-TrafficTypeDiagnostic: HE1EUR04HT192: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: QqH7fyoerZWa4iZuf/q4ID9vO+g47C6oMjAscfRWHIUOLqqNfUmc3zIIruj2WY4tH2USMuF/LPjgJVhzRqt+eQh19Bzqx3aBJ1Y2zH5M4BKHWscaCoSDQYAhq496r0NgOmvLFfo+OxF/QJj10/mt8G4iHIqsAFueWQu+4ReSIo0Gef4ZK31BjPyA6Pfh2KRzoOPZAbYchmQA6feOoanoUVPmq/EgIWFtdX0DjG8zXd1yCQW8akLm8eXxlJD3xSurNGhElzpHC8YsW42V2asq41YLiR4fQ14llJd6KZg3CJxezvVaEryNmrBA7LMycPW54U427qGoHE33dj+WE2chPszutkHREuIBvo8KiypA3YAvLTd2aqXcBBI7k+OfYgBkmKw7P4Y0kvB9RDjlnEKjGA== X-MS-Exchange-AntiSpam-MessageData: BkY2jPFsdTTR43f3inVWQY1Rothq2SdeH3uKw+U7fO7R4a3nm9eIhaM66XwKunGSt9LsXAsrxQg/bvuRg3G9ofgE1hHderMcBszbWrKWXOtuOyEsQAWEEsOaU4arJgPL71VooWMC+IEb0Emt6wxdIw== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: eb7d9a10-7cec-4648-d956-08d8f8be83a8 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Apr 2021 05:40:41.0870 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR04FT014.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR04HT192 Subject: [FFmpeg-devel] [PATCH 4/9] avcodec/mpegvideo_enc: Remove redundant pixel format checks X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 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: Andreas Rheinhardt Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" All encoders using ff_mpv_encode_init() already have pix_fmts set so that the pixel format is already checked in ff_encode_preinit(). The one exception to this is MJPEG whose check remains. (Btw: The AVCodec.pix_fmts check for AMV is stricter than the check in ff_mpv_encode_init().) Signed-off-by: Andreas Rheinhardt --- libavcodec/mpegvideo_enc.c | 23 ----------------------- 1 file changed, 23 deletions(-) diff --git a/libavcodec/mpegvideo_enc.c b/libavcodec/mpegvideo_enc.c index 7c9d1bd894..0f38f63de3 100644 --- a/libavcodec/mpegvideo_enc.c +++ b/libavcodec/mpegvideo_enc.c @@ -302,16 +302,7 @@ av_cold int ff_mpv_encode_init(AVCodecContext *avctx) mpv_encode_defaults(s); switch (avctx->codec_id) { - case AV_CODEC_ID_MPEG2VIDEO: - if (avctx->pix_fmt != AV_PIX_FMT_YUV420P && - avctx->pix_fmt != AV_PIX_FMT_YUV422P) { - av_log(avctx, AV_LOG_ERROR, - "only YUV420 and YUV422 are supported\n"); - return AVERROR(EINVAL); - } - break; case AV_CODEC_ID_MJPEG: - case AV_CODEC_ID_AMV: format_supported = 0; /* JPEG color space */ if (avctx->pix_fmt == AV_PIX_FMT_YUVJ420P || @@ -334,20 +325,6 @@ av_cold int ff_mpv_encode_init(AVCodecContext *avctx) return AVERROR(EINVAL); } break; - case AV_CODEC_ID_SPEEDHQ: - if (avctx->pix_fmt != AV_PIX_FMT_YUV420P && - avctx->pix_fmt != AV_PIX_FMT_YUV422P && - avctx->pix_fmt != AV_PIX_FMT_YUV444P) { - av_log(avctx, AV_LOG_ERROR, - "only YUV420/YUV422/YUV444 are supported (no alpha support yet)\n"); - return AVERROR(EINVAL); - } - break; - default: - if (avctx->pix_fmt != AV_PIX_FMT_YUV420P) { - av_log(avctx, AV_LOG_ERROR, "only YUV420 is supported\n"); - return AVERROR(EINVAL); - } } switch (avctx->pix_fmt) { From patchwork Tue Apr 6 05:40:12 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 26772 Return-Path: X-Original-To: patchwork@ffaux-bg.ffmpeg.org Delivered-To: patchwork@ffaux-bg.ffmpeg.org Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by ffaux.localdomain (Postfix) with ESMTP id 9EAED44A9DD for ; Tue, 6 Apr 2021 08:40:54 +0300 (EEST) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 86C5D68A551; Tue, 6 Apr 2021 08:40:54 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-oln040092074024.outbound.protection.outlook.com [40.92.74.24]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 0664E687F21 for ; Tue, 6 Apr 2021 08:40:52 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=RPZuMO/zY46zXgnwQRGwRUSQCViBLWKu1Yqsz2iQEkhQCkAAXML20n/ZDfK/X2eLyqhrGYrxJcb4ez0mDy8W6pj1Yn91q9odhkhzUodtos+xWj1Fh2WRY+kYuKK8thXDEgJlOf+x8iqBBrbP0i+WfBcq3DCydtuVVHbzmZbDeKDxq7ykM8CLUm6Xm8e6Dl9QZ06XTlx17/ncgl8djUqH1RF6ARadPIuOEOa2NoPyqXrqtIZLnMensVzD9Mb8dcWPP82/wZI//dDKcnPbCECjMcFS2hCOop2d82d4iHD2jV5muL67l+9Q+1HG2VxFtZ6iessikw3KG+dGmFnCSHu7VA== 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-SenderADCheck; bh=tU1YnKWNkrfHEMGLIjssS/AyPieQQo0O6eZMikbO4Gc=; b=aGFKjAdYad3d2N5WkYBsbs6r9a5HyWix0bkxk2P4Ea//LQdFl8rcEg42ILCzmB2LxXQ8WaznyoFaOrZt03pC5NwBK7u/t47bYxq1C9ngSif1mIzY0AVl6MIVgYbCo/+z0Agm5czZ9ReIdA6SlOgrRU8lO/MZ5DcnSwr42iOm1DpiTCO4aofJoNblWA1hXIzRs+gXb+CdWIsEyAhHG5zajFnZAC32EveWnmDOpDrPHkGpsb6hOglZX3H+d2JRpDna/12Cu8/odEMWZxUIZAwvQlVj1szuXn6Kjad3SZhOkMKkawEDuJZ8NcV+ArVnv3mX9FiFiPu2EPVcE2m2sB7AHQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=tU1YnKWNkrfHEMGLIjssS/AyPieQQo0O6eZMikbO4Gc=; b=gmW0v+v5wW9S3iH5+woUmQ1gqdKjmBQ1QHpr2fOreTlYJMUAwblPu+Rl0KYRKJO5SuM2R2ixqcZVq0aPHod98uwxU6hVvndqGFCMLH3gmGAgUn8SEk3G00z7jL2hCVfm21eOdBsNMEok9YRPDG2HSrmYokJ/xPhABG3E5wdz3EREfBZFi/lkb09vnB3YIqpQvSU1MJvldSalZ7DswhSNdVTq5E/Zbslf1s/saYpFIc0fRww9A94lPHy2frAmTXpfgA+19FOMGTGEFfeAB8/V6nrb5I1BluPUjQphKqaAeWJpXaJD765zXdbMg99Ofwgwmp7XJHpvsGNq2mhq8S21AA== Received: from HE1EUR04FT014.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::46) by HE1EUR04HT080.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::72) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28; Tue, 6 Apr 2021 05:40:51 +0000 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com (2a01:111:e400:7e0d::48) by HE1EUR04FT014.mail.protection.outlook.com (2a01:111:e400:7e0d::164) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28 via Frontend Transport; Tue, 6 Apr 2021 05:40:51 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:966C4DA06FE81A69F570F28F58558154F11F82DDA2CEC33D1F58084308353703; UpperCasedChecksum:F88FCE6656F42566113F465DD24BD35E1C49D185DF9AC60CD64BD1B226F1EBBF; SizeAsReceived:7608; Count:48 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::8128:5de5:4e94:9a21]) by HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::8128:5de5:4e94:9a21%3]) with mapi id 15.20.3999.032; Tue, 6 Apr 2021 05:40:51 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Tue, 6 Apr 2021 07:40:12 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [PGf2GWcgJrMcbTMvz0UKTqvU5SprpWuk] X-ClientProxiedBy: AM0PR03CA0024.eurprd03.prod.outlook.com (2603:10a6:208:14::37) To HE1PR0301MB2154.eurprd03.prod.outlook.com (2603:10a6:3:2a::22) X-Microsoft-Original-Message-ID: <20210406054016.452174-4-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.137.96) by AM0PR03CA0024.eurprd03.prod.outlook.com (2603:10a6:208:14::37) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28 via Frontend Transport; Tue, 6 Apr 2021 05:40:51 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: 1c0676bc-0516-4b0c-d0ba-08d8f8be8a11 X-MS-Exchange-SLBlob-MailProps: S/btQ8cKWiSbyvoxwwqtt9ZF5aXTIDASN8IrkvGOAwdfU3jhJZYF53zxb7/Uy0m119ifbJ/Y+K1cq7yGBivW7Vj7i8rA9ViTgXoN4IMky6NrcmozY1lrrUMa1iXsZVfBik2P9DpkkztagxT1NVm88sxrVN5rP8B7t6DHjjG4Lfh6KSJRSTSkIsRzrAFTIMFpuTKuZTV5EmBZw7iz2n4ppNyiuphA4HPW/LrdLJB00MhCwqNUyQVewJoOEp3/FFWeoGj8KtUEkD484kVzSfsmUnA/Um+Usz2B/F+PDo8EGCLXGA/KKd09lXIIwNzU8UzHO50lJjQbJYtMaaIrM12aUcusV8b4e7kmHo8LqarQsvnDZtZtTkJln8M43MhemGVkaRc81AGcckZ/hk9UBjm25x29XDpDastYqZ2Cg3y0WpauR7Fo+lNpiSQjRy+eWnGj20aJxv2K/noHMoU3xz0Xe5eR/6dIAqixp5Q8mfYFBVpi9dLH4D1ltp5++ewJqIDpH0+3iT8esWaBMRR8Zi9bNWY1W1/NpY92qtiHTSjLJ+eNJRulF6TQFRkfWB0G7+8jN07m4jsIqW8oWVZnY9rU6vad3N7hgHEc2lQ4fEqpR09v+NJTgTzQ3zB7kJGhchkOpQMso8v1ZYtMIQxm9CPAPIr0rbHhJxIirdtIWheNAtkzmvBwIfqS6Mlm5k1opQJ53wfGZnd2mRSLV/xeJSulQIUyonlKpSp/iVBQ6gJJySHabrTv6OO+xyii9gpmMSIK8b1ZDGNtuO4= X-MS-TrafficTypeDiagnostic: HE1EUR04HT080: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: TiZYdXQxW6ruhZCsfLbbsNQnFkLKhXJdSzZTrT5p/D8tw56ULWZP+YoJqJxkutS9jPADaal5RjmWSdVif+cHPXCEhFGFagEQ0YZInQhtTzygYgqZTpfTxkIX/AJycu/UMhClPB2Lq4ZxemGmhcpIZe/NrE2x5hJuqq7RZE19DNzBJglTJ9pMKyIy/NqgA1ttlwo/mbwVSMVCblBdh1Cnp/5uoLjTszdAqrEqHyy2jKjrnp5qdz1xK9qLp5EivgGm6Ni83xXKjncaq2+ughuq/2lCxu7ok2/qGhtkhPKsFWNAl3Z3+s/XA1U2FzAbWfdkKvUB8Tm8c9YQvKOQZht+3Fh0NlVRxtdEPF1ETSDquI/TqMYQHQ/Kddj58RRCyzw7sW5d+TMQw6x72Z/zGRU4HQ== X-MS-Exchange-AntiSpam-MessageData: vfJLghHXCJtg8XoI5cNwoAAhhLVkiXVZtps3aPiUS2wCfLOfWK1lCYlxgd1uVN41WDX2QtIfeIeIfo+3ewTPyMe4GX1C7NJKstaOpLVt2ux703qH76nb3KlGijktwGb1LcOglh4ioT7jO7EEM1LE7g== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 1c0676bc-0516-4b0c-d0ba-08d8f8be8a11 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Apr 2021 05:40:51.8512 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR04FT014.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR04HT080 Subject: [FFmpeg-devel] [PATCH 5/9] avcodec/ljpegenc: Allow full range yuv420p, yuv422p, yuv444p by default X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 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: Andreas Rheinhardt Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" The documentation for AV_PIX_FMT_YUVJ420P reads: "planar YUV 4:2:0, 12bpp, full scale (JPEG), deprecated in favor of AV_PIX_FMT_YUV420P and setting color_range" Yet the LJPEG encoder only accepts full scale yuv420p when strictness is set to unofficial or lower; with default strictness it emits a nonsense error message that says that limit range YUV is unofficial. This has been changed to allow full range yuv420p, yuv422p and yuv444p irrespective of the level of strictness. Signed-off-by: Andreas Rheinhardt --- libavcodec/ljpegenc.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/libavcodec/ljpegenc.c b/libavcodec/ljpegenc.c index 056b80b4b5..dd91c729d4 100644 --- a/libavcodec/ljpegenc.c +++ b/libavcodec/ljpegenc.c @@ -295,10 +295,11 @@ static av_cold int ljpeg_encode_init(AVCodecContext *avctx) avctx->pix_fmt == AV_PIX_FMT_YUV422P || avctx->pix_fmt == AV_PIX_FMT_YUV444P || avctx->color_range == AVCOL_RANGE_MPEG) && + avctx->color_range != AVCOL_RANGE_JPEG && avctx->strict_std_compliance > FF_COMPLIANCE_UNOFFICIAL) { av_log(avctx, AV_LOG_ERROR, - "Limited range YUV is non-standard, set strict_std_compliance to " - "at least unofficial to use it.\n"); + "Non full-range YUV is non-standard, set strict_std_compliance " + "to at most unofficial to use it.\n"); return AVERROR(EINVAL); } From patchwork Tue Apr 6 05:40:13 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 26773 Return-Path: X-Original-To: patchwork@ffaux-bg.ffmpeg.org Delivered-To: patchwork@ffaux-bg.ffmpeg.org Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by ffaux.localdomain (Postfix) with ESMTP id B180244A9DD for ; Tue, 6 Apr 2021 08:41:01 +0300 (EEST) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 97A3F68A5AF; Tue, 6 Apr 2021 08:41:01 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-oln040092075061.outbound.protection.outlook.com [40.92.75.61]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id C903D68A3AF for ; Tue, 6 Apr 2021 08:40:54 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=EMVNEdHKNg6tvCPxHcXTBPOlxkifU+wwcxvLMgEZ4EMCtkSh39gw0S1MG8lHGTZmLH4pzTHF5eQ4JbVBYdJYv+2oK0rKYcfdaqKY9npiZ+WlOpI4/KDnOI5mFvHWpL9sJ98xTTXi4MecV4ZVtpU2creEQWnmB9C/8I88rrWMNQxutN8eFPWd51x5GCSpjr8BKrAkVomO+dusOtcbt+MFuw6oZwLlVrfO/pYfpaMBuSMplv7AmTdEQpxMou7vwbi/TNWp8DtHD9q32aN/jv6AGSXTTjv/OU6XJzkheqR8GLye6Yb1nansxWaEescjPMlE0S3Vo40BRJeSi6vZfqEF1w== 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-SenderADCheck; bh=DUDh3tHz1OErpFwENzjCXpvIOJyA3TINUeIoXPt+aFg=; b=SUiUSrl1cr5Af6EtosSVgWNohS9x9nCbmQBv9+iCWvFIwpFcf0Q4i3Ja1XHnqE1le8DkITWLChVB3xmny6Yz/U97B9dz7GNIuYtqySDg0oB6dZeXY7MNATSrQuY1AS3x0Md4bzStQB6X7GghS7OKefYRGoBIOxa720IC9NpHKH+bwducqTSjr1acaxbr6eZEvKOJkF4xC4MQ565sklbcptPw3N3JtkeJwqIJkZhMfm581Ypp+8x8xrQwLUehghfw3wyi6H3jWXbzBMG1qicbYBp7RwE+y9I/cQI1qw/UHoSuYvbGySSavC+Fnmx5XZZreMAppnd6AiSh+9tQ/OMLjA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=DUDh3tHz1OErpFwENzjCXpvIOJyA3TINUeIoXPt+aFg=; b=tRNGiJpdBirPmn64/cf4wZS63/DMYv2vW8uPQ106q+rC6xakwWePDQGmeX+DSFdquflPlNwR5MdJF9GftSGp8EFhKKYP5DKp90YzgKCSMa6/perkp2/pCzLUR8nnkfQGKFNmsJHwY8WZtbS1z7e7vbXsaIPrYYbJvHj69xjD7fi53+eyppeos0DtfCWNe9JhnB9PYjK+uldsPbNOTWwMWnpqT0lkkJq6tMagGc6/grG1AfLrwb5c7vTHwC00s5Q0TK0aGN8+3wQFagBEn8oZ/+ZBLy+iKomwysAeWGAwYFL7yjANdIg7xruT7Lks9oNMGEQS6PSeYrVunU6tdTVigw== Received: from HE1EUR04FT014.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::43) by HE1EUR04HT065.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::333) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28; Tue, 6 Apr 2021 05:40:54 +0000 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com (2a01:111:e400:7e0d::48) by HE1EUR04FT014.mail.protection.outlook.com (2a01:111:e400:7e0d::164) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28 via Frontend Transport; Tue, 6 Apr 2021 05:40:54 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:36169412376A214F570D44555683E20FA30ED31F14B8B47C93EA3DB8CBD3DEF2; UpperCasedChecksum:061AA08C868BF0485F633DB231CCED38239957C067EFD849754E4A145B6CF6AE; SizeAsReceived:7606; Count:48 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::8128:5de5:4e94:9a21]) by HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::8128:5de5:4e94:9a21%3]) with mapi id 15.20.3999.032; Tue, 6 Apr 2021 05:40:54 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Tue, 6 Apr 2021 07:40:13 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [6Q3k6toxQWxqmR4ozDRi2TDFG9o27f+i] X-ClientProxiedBy: AM0PR03CA0024.eurprd03.prod.outlook.com (2603:10a6:208:14::37) To HE1PR0301MB2154.eurprd03.prod.outlook.com (2603:10a6:3:2a::22) X-Microsoft-Original-Message-ID: <20210406054016.452174-5-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.137.96) by AM0PR03CA0024.eurprd03.prod.outlook.com (2603:10a6:208:14::37) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28 via Frontend Transport; Tue, 6 Apr 2021 05:40:53 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: 1c9d042e-b7be-4b51-f49f-08d8f8be8b51 X-MS-Exchange-SLBlob-MailProps: S/btQ8cKWiSbyvoxwwqtt9ZF5aXTIDASIl4NWG4bVK9yudyq0aBXIj3WOwSPQT0ptDyCkgMYDQzZAgxUs3APTgoePQnfxdA8izn18Ihp29Y45cJvKWDPE7KzqGN7yOP31KQf1zYrKoP7+PCszZlmgK1qdi4+XGS0R01BnO5EBiIi7NayYZGopk1mhU4JIYbrHuNFJCVqr61COFpWEsQ/KAa1BoI0ZaPwa/RWpl2NOP63CvP9dxwRZWbGRb46/jl1cQg4iI6xSWNJPXFAy0LyB2NDgo9WrUBk1fto0hWNRmYGxI8xydFeXKyGlP51A4KPdP9NmAtijrhKJQ7gMJ4c9oJuvlPzI2LStoUscrYEd9N7Sr68b1YgYJDG1Q24Nxg+bxCo9Ea3uUebO/tJ63DqmeSHteXSU0AmzmyW+prO495OPzw8XQJgfHVIhOZ1bBoigz4etP7kMA0R+jW+jIfTC0AtwDYWClsmZFruMwYAUc/ojX3ZaYe6ScXOiiv5a6FskiZ6ufMLbuVHN6+x8V9DWYSAufDQIE1CknIfzg1cvVCzNyYyP0gFJHF8ePoZctt34olY9qHPl1SvXEaAAuX1jvTgusYLihVohUnsNMbTRgmWAh064PvlvVONW+cw7+pQ27cVQ9PowsHsUO8sw1gjZ6gxsZDSZSGAdIskEvvmDHbw3H57YpvIOakwfOrrfTX/b26NNCGGaCjVahdWyeAAlCMAFNirW+lSLmrZto4ej+pgBonCsZjjKj855RuQnYz/x1wwUFrQgSc= X-MS-TrafficTypeDiagnostic: HE1EUR04HT065: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 5yVDwBl12ngJ5XcNJaZtRx/apOZc/O29NWxDguzdZHSnGlfikJTB6OlWWD2p4nVfFvN+QFCK/DAsuXxZe8/IiRf0O7v5fGBY5aXVTHZCGpCzPbPJipMKNeaPduDoqJHOXn/8jpz3AqR57SijuESNLolG5O/AaaWzBEfHfA5uV9rDbh3tmKd/UiiVw2lYLu3jlxGw7FAKLz4aaO2XRBEh4yN6hBS60HJrE6L0mnMvRnlZnIf5KwM9r+50y/k4YdHDgswcLXCmJoypvIG7dYHfQCGt7waLjE2rPmf1pmZ11XQQ2tA6Mvwl9a7/wlU1K2pOeiE2Q8lFnypQ4ofg+0HrOZ/7xeTEpTz8N73eum4vpfL/aPpi/Bve/doUmNnfE3ILjyX1kGrtomNcgrvSNKbTyA== X-MS-Exchange-AntiSpam-MessageData: kuJ6Pd9blQ+C6FEop/F48SpU3xz4oObTLAw+5L7cmVIwujta27uNrH2iLZ/sIryHVkEd6UgTGAbEZsPmVB2dmR/JZbxXGC2vaJ8Tm1n+7BPQdAvrSvm+geGSIWpuL5TTnZPuCkTzvwrVyPsPamASMw== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 1c9d042e-b7be-4b51-f49f-08d8f8be8b51 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Apr 2021 05:40:53.9623 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR04FT014.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR04HT065 Subject: [FFmpeg-devel] [PATCH 6/9] avcodec/mjpegenc: Include all supported pix_fmts in mpegenc pix_fmts X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 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: Andreas Rheinhardt Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Currently said list contains only the pixel formats that are always supported irrespective of the range and the value of strict_std_compliance. This makes the MJPEG encoder an outlier as all other codecs put all potentially supported pixel formats into said list and error out if the chosen pixel format is unsupported. This commit brings it therefore in line with the other encoders. The behaviour of fftools/ffmpeg_filter.c has been preserved. A more informed decision would be possible if colour range were available at this point, but it isn't. Signed-off-by: Andreas Rheinhardt --- fftools/ffmpeg_filter.c | 20 +++++++------------- libavcodec/encode.c | 4 +--- libavcodec/ljpegenc.c | 14 +++----------- libavcodec/mjpegenc.c | 11 ++++++++++- libavcodec/mjpegenc_common.c | 16 ++++++++++++++++ libavcodec/mjpegenc_common.h | 2 ++ libavcodec/mpegvideo_enc.c | 28 +--------------------------- 7 files changed, 40 insertions(+), 55 deletions(-) diff --git a/fftools/ffmpeg_filter.c b/fftools/ffmpeg_filter.c index 4ab769c07b..5c44b75eff 100644 --- a/fftools/ffmpeg_filter.c +++ b/fftools/ffmpeg_filter.c @@ -39,22 +39,16 @@ #include "libavutil/imgutils.h" #include "libavutil/samplefmt.h" -static const enum AVPixelFormat *get_compliance_unofficial_pix_fmts(enum AVCodecID codec_id, const enum AVPixelFormat default_formats[]) +// FIXME: YUV420P etc. are actually supported with full color range, +// yet the latter information isn't available here. +static const enum AVPixelFormat *get_compliance_normal_pix_fmts(enum AVCodecID codec_id, const enum AVPixelFormat default_formats[]) { static const enum AVPixelFormat mjpeg_formats[] = { AV_PIX_FMT_YUVJ420P, AV_PIX_FMT_YUVJ422P, AV_PIX_FMT_YUVJ444P, - AV_PIX_FMT_YUV420P, AV_PIX_FMT_YUV422P, AV_PIX_FMT_YUV444P, AV_PIX_FMT_NONE }; - static const enum AVPixelFormat ljpeg_formats[] = - { AV_PIX_FMT_BGR24 , AV_PIX_FMT_BGRA , AV_PIX_FMT_BGR0, - AV_PIX_FMT_YUVJ420P, AV_PIX_FMT_YUVJ444P, AV_PIX_FMT_YUVJ422P, - AV_PIX_FMT_YUV420P , AV_PIX_FMT_YUV444P , AV_PIX_FMT_YUV422P, - AV_PIX_FMT_NONE}; if (codec_id == AV_CODEC_ID_MJPEG) { return mjpeg_formats; - } else if (codec_id == AV_CODEC_ID_LJPEG) { - return ljpeg_formats; } else { return default_formats; } @@ -70,8 +64,8 @@ static enum AVPixelFormat choose_pixel_fmt(AVStream *st, AVCodecContext *enc_ctx int has_alpha = desc ? desc->nb_components % 2 == 0 : 0; enum AVPixelFormat best= AV_PIX_FMT_NONE; - if (enc_ctx->strict_std_compliance <= FF_COMPLIANCE_UNOFFICIAL) { - p = get_compliance_unofficial_pix_fmts(enc_ctx->codec_id, p); + if (enc_ctx->strict_std_compliance > FF_COMPLIANCE_UNOFFICIAL) { + p = get_compliance_normal_pix_fmts(enc_ctx->codec_id, p); } for (; *p != AV_PIX_FMT_NONE; p++) { best = av_find_best_pix_fmt_of_2(best, *p, target, has_alpha, NULL); @@ -118,8 +112,8 @@ static char *choose_pix_fmts(OutputFilter *ofilter) exit_program(1); p = ost->enc->pix_fmts; - if (ost->enc_ctx->strict_std_compliance <= FF_COMPLIANCE_UNOFFICIAL) { - p = get_compliance_unofficial_pix_fmts(ost->enc_ctx->codec_id, p); + if (ost->enc_ctx->strict_std_compliance > FF_COMPLIANCE_UNOFFICIAL) { + p = get_compliance_normal_pix_fmts(ost->enc_ctx->codec_id, p); } for (; *p != AV_PIX_FMT_NONE; p++) { diff --git a/libavcodec/encode.c b/libavcodec/encode.c index 89df5235da..9a4140f91a 100644 --- a/libavcodec/encode.c +++ b/libavcodec/encode.c @@ -564,9 +564,7 @@ FF_ENABLE_DEPRECATION_WARNINGS for (i = 0; avctx->codec->pix_fmts[i] != AV_PIX_FMT_NONE; i++) if (avctx->pix_fmt == avctx->codec->pix_fmts[i]) break; - if (avctx->codec->pix_fmts[i] == AV_PIX_FMT_NONE - && !(avctx->codec_id == AV_CODEC_ID_MJPEG - && avctx->strict_std_compliance <= FF_COMPLIANCE_UNOFFICIAL)) { + if (avctx->codec->pix_fmts[i] == AV_PIX_FMT_NONE) { char buf[128]; snprintf(buf, sizeof(buf), "%d", avctx->pix_fmt); av_log(avctx, AV_LOG_ERROR, "Specified pixel format %s is invalid or not supported\n", diff --git a/libavcodec/ljpegenc.c b/libavcodec/ljpegenc.c index dd91c729d4..74a2cdcc46 100644 --- a/libavcodec/ljpegenc.c +++ b/libavcodec/ljpegenc.c @@ -289,19 +289,11 @@ static av_cold int ljpeg_encode_close(AVCodecContext *avctx) static av_cold int ljpeg_encode_init(AVCodecContext *avctx) { + int ret = ff_mjpeg_encode_check_pix_fmt(avctx); LJpegEncContext *s = avctx->priv_data; - if ((avctx->pix_fmt == AV_PIX_FMT_YUV420P || - avctx->pix_fmt == AV_PIX_FMT_YUV422P || - avctx->pix_fmt == AV_PIX_FMT_YUV444P || - avctx->color_range == AVCOL_RANGE_MPEG) && - avctx->color_range != AVCOL_RANGE_JPEG && - avctx->strict_std_compliance > FF_COMPLIANCE_UNOFFICIAL) { - av_log(avctx, AV_LOG_ERROR, - "Non full-range YUV is non-standard, set strict_std_compliance " - "to at most unofficial to use it.\n"); - return AVERROR(EINVAL); - } + if (ret < 0) + return ret; #if FF_API_CODED_FRAME FF_DISABLE_DEPRECATION_WARNINGS diff --git a/libavcodec/mjpegenc.c b/libavcodec/mjpegenc.c index e5d2e24d66..3cff50abdb 100644 --- a/libavcodec/mjpegenc.c +++ b/libavcodec/mjpegenc.c @@ -261,9 +261,16 @@ static int alloc_huffman(MpegEncContext *s) av_cold int ff_mjpeg_encode_init(MpegEncContext *s) { MJpegContext *m; + int ret; av_assert0(s->slice_context_count == 1); + /* The following check is automatically true for AMV, + * but it doesn't hurt either. */ + ret = ff_mjpeg_encode_check_pix_fmt(s->avctx); + if (ret < 0) + return ret; + if (s->width > 65500 || s->height > 65500) { av_log(s, AV_LOG_ERROR, "JPEG does not support resolutions above 65500x65500\n"); return AVERROR(EINVAL); @@ -609,7 +616,9 @@ AVCodec ff_mjpeg_encoder = { .capabilities = AV_CODEC_CAP_SLICE_THREADS | AV_CODEC_CAP_FRAME_THREADS, .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE | FF_CODEC_CAP_INIT_CLEANUP, .pix_fmts = (const enum AVPixelFormat[]) { - AV_PIX_FMT_YUVJ420P, AV_PIX_FMT_YUVJ422P, AV_PIX_FMT_YUVJ444P, AV_PIX_FMT_NONE + AV_PIX_FMT_YUVJ420P, AV_PIX_FMT_YUVJ422P, AV_PIX_FMT_YUVJ444P, + AV_PIX_FMT_YUV420P, AV_PIX_FMT_YUV422P, AV_PIX_FMT_YUV444P, + AV_PIX_FMT_NONE }, .priv_class = &mjpeg_class, .profiles = NULL_IF_CONFIG_SMALL(ff_mjpeg_profiles), diff --git a/libavcodec/mjpegenc_common.c b/libavcodec/mjpegenc_common.c index 3eae9b7d0f..c1b842d547 100644 --- a/libavcodec/mjpegenc_common.c +++ b/libavcodec/mjpegenc_common.c @@ -436,3 +436,19 @@ void ff_mjpeg_encode_dc(PutBitContext *pb, int val, put_sbits(pb, nbits, mant); } } + +int ff_mjpeg_encode_check_pix_fmt(AVCodecContext *avctx) +{ + if (avctx->strict_std_compliance > FF_COMPLIANCE_UNOFFICIAL && + avctx->color_range != AVCOL_RANGE_JPEG && + (avctx->pix_fmt == AV_PIX_FMT_YUV420P || + avctx->pix_fmt == AV_PIX_FMT_YUV422P || + avctx->pix_fmt == AV_PIX_FMT_YUV444P || + avctx->color_range == AVCOL_RANGE_MPEG)) { + av_log(avctx, AV_LOG_ERROR, + "Non full-range YUV is non-standard, set strict_std_compliance " + "to at most unofficial to use it.\n"); + return AVERROR(EINVAL); + } + return 0; +} diff --git a/libavcodec/mjpegenc_common.h b/libavcodec/mjpegenc_common.h index b4f8a08e11..76c236d835 100644 --- a/libavcodec/mjpegenc_common.h +++ b/libavcodec/mjpegenc_common.h @@ -41,4 +41,6 @@ void ff_mjpeg_init_hvsample(AVCodecContext *avctx, int hsample[4], int vsample[4 void ff_mjpeg_encode_dc(PutBitContext *pb, int val, uint8_t *huff_size, uint16_t *huff_code); +int ff_mjpeg_encode_check_pix_fmt(AVCodecContext *avctx); + #endif /* AVCODEC_MJPEGENC_COMMON_H */ diff --git a/libavcodec/mpegvideo_enc.c b/libavcodec/mpegvideo_enc.c index 0f38f63de3..d5dd69b88f 100644 --- a/libavcodec/mpegvideo_enc.c +++ b/libavcodec/mpegvideo_enc.c @@ -297,36 +297,10 @@ av_cold int ff_mpv_encode_init(AVCodecContext *avctx) { MpegEncContext *s = avctx->priv_data; AVCPBProperties *cpb_props; - int i, ret, format_supported; + int i, ret; mpv_encode_defaults(s); - switch (avctx->codec_id) { - case AV_CODEC_ID_MJPEG: - format_supported = 0; - /* JPEG color space */ - if (avctx->pix_fmt == AV_PIX_FMT_YUVJ420P || - avctx->pix_fmt == AV_PIX_FMT_YUVJ422P || - avctx->pix_fmt == AV_PIX_FMT_YUVJ444P || - (avctx->color_range == AVCOL_RANGE_JPEG && - (avctx->pix_fmt == AV_PIX_FMT_YUV420P || - avctx->pix_fmt == AV_PIX_FMT_YUV422P || - avctx->pix_fmt == AV_PIX_FMT_YUV444P))) - format_supported = 1; - /* MPEG color space */ - else if (avctx->strict_std_compliance <= FF_COMPLIANCE_UNOFFICIAL && - (avctx->pix_fmt == AV_PIX_FMT_YUV420P || - avctx->pix_fmt == AV_PIX_FMT_YUV422P || - avctx->pix_fmt == AV_PIX_FMT_YUV444P)) - format_supported = 1; - - if (!format_supported) { - av_log(avctx, AV_LOG_ERROR, "colorspace not supported in jpeg\n"); - return AVERROR(EINVAL); - } - break; - } - switch (avctx->pix_fmt) { case AV_PIX_FMT_YUVJ444P: case AV_PIX_FMT_YUV444P: From patchwork Tue Apr 6 05:40:14 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 26774 Return-Path: X-Original-To: patchwork@ffaux-bg.ffmpeg.org Delivered-To: patchwork@ffaux-bg.ffmpeg.org Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by ffaux.localdomain (Postfix) with ESMTP id AE5DC44A9DD for ; Tue, 6 Apr 2021 08:41:02 +0300 (EEST) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 857AF68A48F; Tue, 6 Apr 2021 08:41:02 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-oln040092075061.outbound.protection.outlook.com [40.92.75.61]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 0DA9B68A581 for ; Tue, 6 Apr 2021 08:41:00 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=QBBD8zXAzQiPtOWsGEPBpysXunN/SaJyBmpKNPp3wwlcg3xTJ93AQ7j78zzoIsBvSHVeMVLUYGdZKQObQ7vV9OWhjQFLkc8umZSdlsSf7tOboMzm5rsRJFfw8m7k4JxFyfEEX/15byYWp/YbQ6jz1oxu14WJvnH598HIUPYYLwMSEdhn0cbLzQOiOg29408wQ0EcYVGsgrMooyd5boExjfDjpw0YJgKE7xUfyKY+jtFFMlGuYTGXpsOqLjOG6DAEIWE/wTn14idpA8sabllxsqiUm3k8frYu1cal8h+czVF8vTtsHByzC7VUAnBjfQXI8JHwMMKq2IXiiAXtOFmfNw== 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-SenderADCheck; bh=kZdOHIc5sxcRzy9y9qMOAmjWzyaijjdb9ZgnRjrWty8=; b=bYZwWNmMkXG5o9wUN7M91tlhhl69PPOjlw8Xz8YlWmwYlc02ND+Y0yiiXPVIVXdUDrQZQ3y2KoSEYIOdOXdLXBX/WB0fyxvfEZCf9/08TfMs/ZXERLCnBW0QBVSlfHtai2NjiI/qxazKNlh/EaX78FAecoiGGeyfe1M+jxR/oEh8t6NpDZGdWwdwkFj1IZ+QGEQOO4vRbzSg5VEJs0qsPsGWLFqyaLXThJqqS6SI0kpLaLOa7p/EGRT9AU8zdBlTm+IbInQ0TnbNrAK3KaZWeRy82V4pAmwQKG06IO/IcnZxJxG89HGzX40RXdL0HbeeshaoUmQRzpk8nR1yonaTtA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=kZdOHIc5sxcRzy9y9qMOAmjWzyaijjdb9ZgnRjrWty8=; b=AGpCY6+W6cH58/jzeErhp/TmT8AJFeLzPNZ0unU8EGL++XW333rgdV/9D4YKv57lKBd0NhJO9TaFVvnxZIlvEMAju5SPKK5c6CpTYkTuag3qcvzlRo0j6+fAaFYQ16yzjzg8R9y/2bwwds89nqTcwAlFm4wWMGdLcHf+hoI8anp/vSj0NRSGyrEpT02udw3VYGXz36u5bMzxeaWz9ciwjau9l07eAfeMqg9dd0FFD9O0bhcAAWhaCW9ABcNCNl4kBZqDGDzd4+vNcmmZ0RXCPgHYMPnpDju3qDaK8psys36/SfBcI/t5jt82JszwBbFsANn8Soe4Ahs6ZmXIHLjZoA== Received: from HE1EUR04FT014.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::43) by HE1EUR04HT065.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::333) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28; Tue, 6 Apr 2021 05:40:56 +0000 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com (2a01:111:e400:7e0d::48) by HE1EUR04FT014.mail.protection.outlook.com (2a01:111:e400:7e0d::164) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28 via Frontend Transport; Tue, 6 Apr 2021 05:40:56 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:35613D13F7779196AB917E0C63D78487CBF4A26EABFE07393EA1FC6C7A727C2F; UpperCasedChecksum:5CC757A69C14071A052E4A559A0F37F9AA8E7167E28E75F77AA49B894725CCDF; SizeAsReceived:7601; Count:48 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::8128:5de5:4e94:9a21]) by HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::8128:5de5:4e94:9a21%3]) with mapi id 15.20.3999.032; Tue, 6 Apr 2021 05:40:56 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Tue, 6 Apr 2021 07:40:14 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [miAI3WMgG/wrqM0FP4WJKla/oo+exDEa] X-ClientProxiedBy: AM0PR03CA0024.eurprd03.prod.outlook.com (2603:10a6:208:14::37) To HE1PR0301MB2154.eurprd03.prod.outlook.com (2603:10a6:3:2a::22) X-Microsoft-Original-Message-ID: <20210406054016.452174-6-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.137.96) by AM0PR03CA0024.eurprd03.prod.outlook.com (2603:10a6:208:14::37) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28 via Frontend Transport; Tue, 6 Apr 2021 05:40:55 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: 752224b1-840e-404d-f9a4-08d8f8be8c9f X-MS-Exchange-SLBlob-MailProps: gjx25WM8ZNVIvygFamH8o7OZElNfARO0AjSDqvxkzvqRpYscltPJ5poDzAQVe5PwErlvpGjxopUYdpvLX3ykohLNcyN8ei9cxLZ5bbMlCcPc0BsKi1RU/MnUnwScubA5E2HW0n8Aa1M1RL/q2zBIjmiRI2PTRw60ggF3HvhG4tEFYpxpcYxFsfMFUgRXX88n3cfd3UbBanQ5boMqmArswNIBBumaQC9a9C0NiBHjNo8A25UOyjnC5Bnp/K9peQkUibEB67aNSX02SZBVMR/bxi2uap01e7d+cZX4kK2zwpsfgqxgecIa5pFDEPOBbrF80b7rWFUM4GquVYDq/oLMzucBp3rq/x5j2np+6n9W6pSK7jOFk1C1ZZ8xTuZ6EW47ArPIh20YC4mK6ZMgJ/mHiDrDFINXNYINSV9bRzNqjFFqg0fvWe2Xg6qezDmtuCemEWacYNBanxWLWig6nhfc8zm+L0aNB+LhFNP8essujGgQL14qwHvgiAO5Oc4TARP9y0cOX7rwM2m5iPt2ZOFMaiiJvuYtXoOx+fJpXtbjE6ECAUOmBEkyy9kJfHSKtCtjhKzfOTIA2ftGaHqAYR46h2gRBM2kbbG5vVuC05W9d3th4a21PDZTylDhMXn8ZuVANdNKIPXELtL3teUF45dhfzun4f/dUBxQkkScpAiomb1H0E/aWqtx0Qy4Z+Qlt6WLJzJbXWgARiKFj5jsvmBLE4C3z0IojVqv2Hh2p/V3b1Y= X-MS-TrafficTypeDiagnostic: HE1EUR04HT065: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: TDbIi/mEs8Lp+zJT7H2GbGtpXhhj8u4D2xg06yjFu8/AltuWxUpdFjuVjYn9AMU73/QhAGgNa5zQdpRT+dXisNLw9ZMz1fiGtlDf65V+FpdTrWc6lYlA7XqJWe3Qw8n6tWE6cwP7RT+4FkrEL6A2Vw1a1/JSGuWnNBWnEP4dznL9mii5NFkM5mB14hETISt3IrMfhqvfSLipuD7K98J70Ag6OR5YsirvspKitueQxnMDs+1/yIFqWSIhryUx+wve4Ig4yKfbBi5M8IXB7v6syVFp1dwK++Wo/ZYD7SnTXsiSFBtA9Yj34KdQVIeaYMob9wWDQl+zQmGPMe3nqrm20FjCVF1z0sUcqZWRb78zUdE7GJBJ0uPDMBNiW8MEzIdY8p9w0dKQZtidHr0VgO7xOA== X-MS-Exchange-AntiSpam-MessageData: tJ5/IwGXdffc957fENymvhASecmkuFz/pUJkBLSmScWNTswn9rgZtVuuRIWKX7tuP+FRPD4qWF3P2bS69HdtSuP8YjiqoobW1A1yJlJ22UsMc8eVME8grU6jJA0eZxm/dPJhoVaIZ5cvu9elHqgPuQ== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 752224b1-840e-404d-f9a4-08d8f8be8c9f X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Apr 2021 05:40:56.1773 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR04FT014.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR04HT065 Subject: [FFmpeg-devel] [PATCH 7/9] fftools/ffmpeg_filter: Avoid allocations when configuring output filters X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 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: Andreas Rheinhardt Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Use an AVBPrint to handle the (typically short) strings involved here. Signed-off-by: Andreas Rheinhardt --- fftools/ffmpeg_filter.c | 99 +++++++++++++++++------------------------ 1 file changed, 41 insertions(+), 58 deletions(-) diff --git a/fftools/ffmpeg_filter.c b/fftools/ffmpeg_filter.c index 5c44b75eff..61ca793058 100644 --- a/fftools/ffmpeg_filter.c +++ b/fftools/ffmpeg_filter.c @@ -127,45 +127,39 @@ static char *choose_pix_fmts(OutputFilter *ofilter) return NULL; } -/* Define a function for building a string containing a list of - * allowed formats. */ -#define DEF_CHOOSE_FORMAT(suffix, type, var, supported_list, none, get_name) \ -static char *choose_ ## suffix (OutputFilter *ofilter) \ +/* Define a function for appending a list of allowed formats + * to an AVBPrint. If nonempty, the list will have a header. */ +#define DEF_CHOOSE_FORMAT(name, type, var, supported_list, none, printf_format, get_name) \ +static void choose_ ## name (OutputFilter *ofilter, AVBPrint *bprint) \ { \ + if (ofilter->var == none && !ofilter->supported_list) \ + return; \ + av_bprintf(bprint, #name "="); \ if (ofilter->var != none) { \ - get_name(ofilter->var); \ - return av_strdup(name); \ - } else if (ofilter->supported_list) { \ + av_bprintf(bprint, printf_format, get_name(ofilter->var)); \ + } else { \ const type *p; \ - AVIOContext *s = NULL; \ - uint8_t *ret; \ - int len; \ - \ - if (avio_open_dyn_buf(&s) < 0) \ - exit_program(1); \ \ for (p = ofilter->supported_list; *p != none; p++) { \ - get_name(*p); \ - avio_printf(s, "%s|", name); \ + av_bprintf(bprint, printf_format "|", get_name(*p)); \ } \ - len = avio_close_dyn_buf(s, &ret); \ - ret[len - 1] = 0; \ - return ret; \ - } else \ - return NULL; \ + if (bprint->len > 0) \ + bprint->str[--bprint->len] = '\0'; \ + } \ + av_bprint_chars(bprint, ':', 1); \ } //DEF_CHOOSE_FORMAT(pix_fmts, enum AVPixelFormat, format, formats, AV_PIX_FMT_NONE, // GET_PIX_FMT_NAME) DEF_CHOOSE_FORMAT(sample_fmts, enum AVSampleFormat, format, formats, - AV_SAMPLE_FMT_NONE, GET_SAMPLE_FMT_NAME) + AV_SAMPLE_FMT_NONE, "%s", av_get_sample_fmt_name) DEF_CHOOSE_FORMAT(sample_rates, int, sample_rate, sample_rates, 0, - GET_SAMPLE_RATE_NAME) + "%d", ) DEF_CHOOSE_FORMAT(channel_layouts, uint64_t, channel_layout, channel_layouts, 0, - GET_CH_LAYOUT_NAME) + "0x%"PRIx64, ) int init_simple_filtergraph(InputStream *ist, OutputStream *ost) { @@ -525,7 +519,7 @@ static int configure_output_audio_filter(FilterGraph *fg, OutputFilter *ofilter, AVCodecContext *codec = ost->enc_ctx; AVFilterContext *last_filter = out->filter_ctx; int pad_idx = out->pad_idx; - char *sample_fmts, *sample_rates, *channel_layouts; + AVBPrint args; char name[255]; int ret; @@ -548,65 +542,52 @@ static int configure_output_audio_filter(FilterGraph *fg, OutputFilter *ofilter, avfilter_get_by_name(filter_name), \ filter_name, arg, NULL, fg->graph); \ if (ret < 0) \ - return ret; \ + goto fail; \ \ ret = avfilter_link(last_filter, pad_idx, filt_ctx, 0); \ if (ret < 0) \ - return ret; \ + goto fail; \ \ last_filter = filt_ctx; \ pad_idx = 0; \ } while (0) + av_bprint_init(&args, 0, AV_BPRINT_SIZE_UNLIMITED); if (ost->audio_channels_mapped) { int i; - AVBPrint pan_buf; - av_bprint_init(&pan_buf, 256, 8192); - av_bprintf(&pan_buf, "0x%"PRIx64, + av_bprintf(&args, "0x%"PRIx64, av_get_default_channel_layout(ost->audio_channels_mapped)); for (i = 0; i < ost->audio_channels_mapped; i++) if (ost->audio_channels_map[i] != -1) - av_bprintf(&pan_buf, "|c%d=c%d", i, ost->audio_channels_map[i]); + av_bprintf(&args, "|c%d=c%d", i, ost->audio_channels_map[i]); - AUTO_INSERT_FILTER("-map_channel", "pan", pan_buf.str); - av_bprint_finalize(&pan_buf, NULL); + AUTO_INSERT_FILTER("-map_channel", "pan", args.str); + av_bprint_clear(&args); } if (codec->channels && !codec->channel_layout) codec->channel_layout = av_get_default_channel_layout(codec->channels); - sample_fmts = choose_sample_fmts(ofilter); - sample_rates = choose_sample_rates(ofilter); - channel_layouts = choose_channel_layouts(ofilter); - if (sample_fmts || sample_rates || channel_layouts) { + choose_sample_fmts(ofilter, &args); + choose_sample_rates(ofilter, &args); + choose_channel_layouts(ofilter, &args); + if (!av_bprint_is_complete(&args)) { + ret = AVERROR(ENOMEM); + goto fail; + } + if (args.len) { AVFilterContext *format; - char args[256]; - args[0] = 0; - - if (sample_fmts) - av_strlcatf(args, sizeof(args), "sample_fmts=%s:", - sample_fmts); - if (sample_rates) - av_strlcatf(args, sizeof(args), "sample_rates=%s:", - sample_rates); - if (channel_layouts) - av_strlcatf(args, sizeof(args), "channel_layouts=%s:", - channel_layouts); - - av_freep(&sample_fmts); - av_freep(&sample_rates); - av_freep(&channel_layouts); snprintf(name, sizeof(name), "format_out_%d_%d", ost->file_index, ost->index); ret = avfilter_graph_create_filter(&format, avfilter_get_by_name("aformat"), - name, args, NULL, fg->graph); + name, args.str, NULL, fg->graph); if (ret < 0) - return ret; + goto fail; ret = avfilter_link(last_filter, pad_idx, format, 0); if (ret < 0) - return ret; + goto fail; last_filter = format; pad_idx = 0; @@ -631,12 +612,14 @@ static int configure_output_audio_filter(FilterGraph *fg, OutputFilter *ofilter, ret = insert_trim(of->start_time, of->recording_time, &last_filter, &pad_idx, name); if (ret < 0) - return ret; + goto fail; if ((ret = avfilter_link(last_filter, pad_idx, ofilter->filter, 0)) < 0) - return ret; + goto fail; +fail: + av_bprint_finalize(&args, NULL); - return 0; + return ret; } static int configure_output_filter(FilterGraph *fg, OutputFilter *ofilter, From patchwork Tue Apr 6 05:40:15 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 26776 Return-Path: X-Original-To: patchwork@ffaux-bg.ffmpeg.org Delivered-To: patchwork@ffaux-bg.ffmpeg.org Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by ffaux.localdomain (Postfix) with ESMTP id 82E1E44A9DD for ; Tue, 6 Apr 2021 08:41:04 +0300 (EEST) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 701FE68A5AC; Tue, 6 Apr 2021 08:41:04 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-VI1-obe.outbound.protection.outlook.com (mail-oln040092075075.outbound.protection.outlook.com [40.92.75.75]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 80EF368A628 for ; Tue, 6 Apr 2021 08:40:58 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=G1w7o8JvHPruxHYVwaOs8AKn7pTo/hMLIOASILDi/orgd7JO71cJew4VP3Mo4PZGSef97fpiS9OBOUzi961uJ26ug8Ronr5m5tw66iLHjhs37vVcTBY49YuLc0FaojAfYUCLJz3euBbZtQNTQU/XxOImvzQPDLBkZOBWBSDXU19bC8mgSbz+2ScmeILnYJ69bU1WtXE8gc9xK4L9Cp1uapT2v+tnxRu5V1Ty+nbpfEGjJWm8Jm6DVRbgepkqiP0V1GdxypHYtj8JYDK8N+Py2GezLnKnAvadapOtOOk/OEDRl2RFfAEvk/WBSN8rcv2PlH/rGP/2CouONY30VULq7A== 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-SenderADCheck; bh=HPFBSsvqtkw0AAvBjx/TTduPxU8LhlLkl5LjPSFHV4g=; b=XIGnEjqk5wxiAUWPNpSbAd7rPWFtZiElOTgbwaSjAXF/2xf0t4N9yjlDjtcpZ0+t07bTFn1U6Ia53/i0HchW9Ge4wwJHx2P8qdAGR1xkk39lCfzgSSmiyXA1mNSK4HW5hrBLvseMvVy3NEtdDOzlKpo3XQxGpfsd3ZYRvdmHD+Mx3fU8dxJ0X0AJaToJ2HNDYG7zbZR7cG3tBxsalfLkjh8hgGyTHpTnU3LUC1xi10Q1DxbPJtS2m8tM0IABqLp9rkJDckIqXD1teWN/XHtxuFwHUyCQZAA9CRANhcMDAqq8vnK/EqPOM2ehuAvjQTOQHfnGCQpcl/LmN8q0EyR91g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=HPFBSsvqtkw0AAvBjx/TTduPxU8LhlLkl5LjPSFHV4g=; b=EPX0J8Y4p/EHTqxKkk2WC9NYWuGjCg1IrdoaD5Lka+8ICOrLS+519fT4hkxoyAfpsuiSDcd9OEYPs1ObCMLySPBj2bOiZswVA3THWTQewyRVSlKQG2qwjx6JI++aRxfOBSn/8BevF5FN1UT39zk1yiunsYl573Ta9zeXh9amSrsJdFbbwj0v4AGKOxpDmzSaoLX8SzqMnB8N7crDGtMlB4fnTjeP08YOSo8aJfRoKzEhX9leY0SbyfowO09u1ey12paeUachVc63YNaeXWOpAerrIyOL4zV+CV2qLkTpSnv+ANaEBxSUxDSJVGtONV8wf9QytPuAf5rkM+bEvFRt8g== Received: from HE1EUR04FT014.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::4e) by HE1EUR04HT042.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::158) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28; Tue, 6 Apr 2021 05:40:57 +0000 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com (2a01:111:e400:7e0d::48) by HE1EUR04FT014.mail.protection.outlook.com (2a01:111:e400:7e0d::164) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28 via Frontend Transport; Tue, 6 Apr 2021 05:40:57 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:AD4515265CB5CAA21BC07DEE910AA6CA14BD2CD0B622826B731C7741F4923D6D; UpperCasedChecksum:F458A9AF04C2A62E46239922D3414EDFC0E626A41E01D28F457D63E6E8320B1E; SizeAsReceived:7597; Count:48 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::8128:5de5:4e94:9a21]) by HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::8128:5de5:4e94:9a21%3]) with mapi id 15.20.3999.032; Tue, 6 Apr 2021 05:40:57 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Tue, 6 Apr 2021 07:40:15 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [dG2LeMHdG/nA9uGJgqZ+83emGDHgst8T] X-ClientProxiedBy: AM0PR03CA0024.eurprd03.prod.outlook.com (2603:10a6:208:14::37) To HE1PR0301MB2154.eurprd03.prod.outlook.com (2603:10a6:3:2a::22) X-Microsoft-Original-Message-ID: <20210406054016.452174-7-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.137.96) by AM0PR03CA0024.eurprd03.prod.outlook.com (2603:10a6:208:14::37) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28 via Frontend Transport; Tue, 6 Apr 2021 05:40:57 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: 178be07f-dc25-4e37-5ef6-08d8f8be8d61 X-MS-Exchange-SLBlob-MailProps: S/btQ8cKWiSbyvoxwwqtt9ZF5aXTIDASzur/JI9NmGJqxHRmLF6hzBwOfGCzNjBPKIe+NI8nGLOt8g15DAOox3KA77Z/eBKQxogJ6L1RXQnvLtvVe3i+OVNSP2sDGJKEOzRC8s+BQGYnPbhk6CHCPusrgLZrQd/S5FkmwQRMASgXBfeovyedNXtYjwHm8EP8jbn5afo1Hb+mK4ANlhpc6YzZHhAHoKLVT0VqYdX3SDnukdjX8hxx3xnMndUS0Ba3nTHeAav0Gskxq4QCV4gJSUzTDKQq54xJejor96Uubyv2WRuJz7uufWdUqqkc4gStSjC67jFVsvXaNchOKGemQJcdGD8PbxAQ5bJTK1e4/iKeb0jUK9xdjLfhIbxFisMbNc4iu8Ce6if56Pr8DtUit1ValgGTI4LnwFnJLv10VJXkSATXjzZGVdTPdCuBW+qoW9wEpU95zyokF7q7yF5knS60jgCmUH1/D8cKOiJuhY+s95YvFxzWuJBM0ZEkmW7fvapHqmw4WgKWBqOu/TKSAU88W6Udv0pMjWJlcUQeCIYM29FkcPln0NzzFMXIegjqFiAb+lgyAV/pY418czYFu+C3hpQH/Z784gzO2TtuKfA9dFOnP+QbxVqXJ0OOYIhqJcsjPuKfIKgBdggWAoUTTZFQkOe3vdAwV8ZS/RZ/ii05GJZgJyxFQTV3S3zC4Gq2lAQ2KfbQ95UPT6mmNh0Sw8i+6//UmhdsOPYEpaNsXd+rFextz29rFLySDT8XVylyE73jzzT0Kno= X-MS-TrafficTypeDiagnostic: HE1EUR04HT042: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: IlNR/1n1SCv4yUwoKayDekZIsAzRqZVyIi0EIJn8aCwycrCL71NB6qdqHlTAaYyApQSjihdD/v291oqVqIMktaEKMbo3J8rnSKyqb8QmjnsXk+rYwxELYctK22hZQ5lJbIAGh1Q6YTJM92yLjutFSFvbvs8b7ZuDgWZjDmWW1Tsz7djKM7+fsAn2ZQsijFeTRgKPh5WeDfgyV4Xfav8t1XBqUoqCEA6sQ19vb2z3M5YGxdeQDc2B4Wxq6dVtpDJGYW/pTvIdwXIc7MMbXBy9Z/ZkKd8OfbQjSU66MTfGkYlrOTfjTdBUSE4LxskdKV+xsKmIWencqe8Y4Yt8NfR1KmrrG/VO6N9EBGGwiHeXKAgm0JeKuIGpYIaSOiIckaeZtg1vCKacW61tmNjxcYy4QA== X-MS-Exchange-AntiSpam-MessageData: iQI/kJF9Wi7v4S2AwAIhaOOoZo/QpVW59oOnAfXPkWPHK7ovj+qslcKCYggwBWr6fMlK9hZWk2dheZ5H2nmm33JceGV1GdQPb+bYZOPxtW9rfWRPxzChK42rSXMrNFNrVkHlWpm6Js52GjfixNFjdA== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 178be07f-dc25-4e37-5ef6-08d8f8be8d61 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Apr 2021 05:40:57.4577 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR04FT014.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR04HT042 Subject: [FFmpeg-devel] [PATCH 8/9] fftools/ffmpeg_filter: Don't write string that is never used X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 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: Andreas Rheinhardt Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Signed-off-by: Andreas Rheinhardt --- fftools/ffmpeg_filter.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/fftools/ffmpeg_filter.c b/fftools/ffmpeg_filter.c index 61ca793058..a4b4638abb 100644 --- a/fftools/ffmpeg_filter.c +++ b/fftools/ffmpeg_filter.c @@ -463,8 +463,7 @@ static int configure_output_video_filter(FilterGraph *fg, OutputFilter *ofilter, if ((pix_fmts = choose_pix_fmts(ofilter))) { AVFilterContext *filter; - snprintf(name, sizeof(name), "format_out_%d_%d", - ost->file_index, ost->index); + ret = avfilter_graph_create_filter(&filter, avfilter_get_by_name("format"), "format", pix_fmts, NULL, fg->graph); From patchwork Tue Apr 6 05:40:16 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 26775 Return-Path: X-Original-To: patchwork@ffaux-bg.ffmpeg.org Delivered-To: patchwork@ffaux-bg.ffmpeg.org Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by ffaux.localdomain (Postfix) with ESMTP id A6CF344A9DD for ; Tue, 6 Apr 2021 08:41:03 +0300 (EEST) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 91CA568A633; Tue, 6 Apr 2021 08:41:03 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-oln040092073096.outbound.protection.outlook.com [40.92.73.96]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 4D1E168A5AF for ; Tue, 6 Apr 2021 08:41:00 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=e4qc6aHP6EnqRytB9HlDeV/tH9O8+xiYs23wws9c1ddKEF/JdGLIz2aAN6PRznNCEz8Ry+1WpfJi2hTiLrGZZkuMAlIH9yzik6E5qp4jrWE5n0ElDhibK7/uHTVA5HD4dZtA98h3XkIPQGOig0M4LXJlAXxkfF7CyLX89PkXxx4hldtlH3VadOH783vowy08VzSGkhC1ZGhPvxyd9cD3lPiT+ymABhuWi23u+m0lqBFjMrnpUZJ37Vuo1qV97D/6ZgWeTgy5+LF3VhWVDUnWXq8rlsFbD+YrgDSq+zNVL4iC72cWm/vxWz8dkdK4o1C874wymAHj8zevd5ZofJSOCg== 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-SenderADCheck; bh=lPzcFjNkNbLGgJv14MYF7wYN16ehY2FBzJjKCibo54E=; b=HuUQIXfNROb4SEMhUh8zk49+3ulgiE1IiGhz5ZhI7TpILXVCeBZIuw0NvjDJ1tSH3xg2O2ncWYBz67Kzgfxwedx/nAcDUlDEniAE2SmxnVEqZ+qlaSRJtJqpzaWXv6DUNtBOl7/rDCq5AbL8Q3ehmrwnRrZiDS2sM+7p9Ac68/nnvEDQ1klELRqsgHooU8HFsJt9QNithujBjkXsyrIlwSs5FrjMkDL6gOz0e2l5kbxuDSd2b+lN2LqcFCDQ6bTLc5DLWNe/IEi2tATZbAyyWQf8iafkgNLmaPeQhwj/3aBDye6YU+OAMMSpJermP5REmJqpwpwkxskkXhMoFhaEEw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=lPzcFjNkNbLGgJv14MYF7wYN16ehY2FBzJjKCibo54E=; b=TXfnB8WvWsH63hRewTzZEMqtIGGL2jX8EcdJ/+3Gn2nBS/vNO53QFnZtHnnBxj++fIfKYusJo4WvzzHG8KjdpxlB95lciEmg4qicMwoXFGnyFYGJmhpdJcIh/lXR7iz6eayz/VdzxtJ37hMc9XuusoIB4Q/Ku6x7L2vnBw6jM6jvjwmywIApOBrR2/gmWYDxl7KYm9vg/wX/fdM0jo58aJZaEkyKHsNU3SJ3NusNsPsMWlMGkKbt2GsaKPdbJMP85O2iLJohrK9E8pZVHrxvlGtsTOIAaPcxljXAYn2Pcig+Ols0olPZjK6gXO+Wrzk+h7ZHP15vihgGRtlOQhXsDw== Received: from HE1EUR04FT014.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::4f) by HE1EUR04HT057.eop-eur04.prod.protection.outlook.com (2a01:111:e400:7e0d::325) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28; Tue, 6 Apr 2021 05:40:58 +0000 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com (2a01:111:e400:7e0d::48) by HE1EUR04FT014.mail.protection.outlook.com (2a01:111:e400:7e0d::164) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28 via Frontend Transport; Tue, 6 Apr 2021 05:40:58 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:64EA07E0244918563A9295BBC14CEB51725A8AE3C74BF0D38A751A8941310C96; UpperCasedChecksum:46EBEAF95BC865F863A60E19E8F0C45E565598736432C6D0E803F3FF37B353C7; SizeAsReceived:7588; Count:48 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::8128:5de5:4e94:9a21]) by HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::8128:5de5:4e94:9a21%3]) with mapi id 15.20.3999.032; Tue, 6 Apr 2021 05:40:58 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Tue, 6 Apr 2021 07:40:16 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [MNUuL+EdxUDzHO82Q1E0KJkfrKo8dlrf] X-ClientProxiedBy: AM0PR03CA0024.eurprd03.prod.outlook.com (2603:10a6:208:14::37) To HE1PR0301MB2154.eurprd03.prod.outlook.com (2603:10a6:3:2a::22) X-Microsoft-Original-Message-ID: <20210406054016.452174-8-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.137.96) by AM0PR03CA0024.eurprd03.prod.outlook.com (2603:10a6:208:14::37) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28 via Frontend Transport; Tue, 6 Apr 2021 05:40:58 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: bb281e0e-d2fb-4201-9825-08d8f8be8e36 X-MS-Exchange-SLBlob-MailProps: S/btQ8cKWiSbyvoxwwqtt9ZF5aXTIDASIacEZEW51qArQhjUVxFDVi7a53iKRgAgrehqp89fJsup3sF4XLm9Ypt35DOFKCLPekwPHmQRilQ3TB3mtfpZ9hYxFMf3weKaA7fveQGTFlVrpcPmU0gBSpj/1lhyeI3sEBWdhBP1djj8GhrJk5tThyxEnp/ae6J4F9vItkk1UrJ6o5fokzc+2i+fRwITM/GTnTieEhc1vly8qkuKuMKa8P6/xQ1w3fab+Mgl0ivy9znIl2n3fw92ZmmBBB085AWnpVVV1YgHRgxrn5W6RY2OhhYnbi0hd34hILaEW57rcukB3hzxTNU28O7vURX1moQCrxDdq/qxgtRVM6z/r+AzC1N0B5tidGXq5i1YXaejNMecxgJr90ssWHkZoc3wPi2OM2LhVYCxg45YH4zY61D+51ZfofltS/+iLb17S2cATVlvd/OLQUMWscti5p9jOce0ZqS4DYh14MkAswN8hqCypldhGI4LnKbhaAEu+ygoPWHNSivT1MgD3A8NmRcEiO12vx1uiHydNDvsbst0g+tvBeF71YvR30nOX//ovDfMRayEOPXHmN4Uw5qzWzcRl4tb6GqTbNjXUGMuDQ2q73vj7nD8Ny/19Q7m63Qu+pHu9uYAU7rbglVrfQkrQWcm94NjfeplQbxf8w2KtwguE0D3ixZRZO+aQpIZmFCnb/9r17Q7DkkZpztJ4cDpLe6eal1Iy9bMbmVNm47jhY5SnKF5nq+uycS75qHkjWa/Bzs8z4s= X-MS-TrafficTypeDiagnostic: HE1EUR04HT057: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: RP9MSFusjsiSWMc6+gYVfRtvjwTpU7J8oMxy3lwSNY1pjClslhSmApfi5vhcErpA+wx/SP1cAs55lGlpros/Gwt7b/zIMQ2YJMbN6OrQL1kwJ5XG6LPWcrWKh/pcddr8++db+zM9Nso6rOPRRL9DdwqSR/W7GAWBGZAmZarQVbLtJtr2JCvb7R/QooP02riGzGCVHGlTVWIZN78RbdA/88xAcJjOhaaxtXzins5lec8OJ8m14+wq7Jutq6DvsoGFVslYzrHmr+xNnWZq64P1yHk7K1VxkSYuq17tXb9EaBYzg+okcFm4I9ywI49sGKX9ep/2AZtX1NXVy4hl5dPcboMlo9Q6aGgxqxojG5KqaoAZ8S+cPIFwndl+2rM5bzQYCGfNU8FmTV4sCWlGadpR5A== X-MS-Exchange-AntiSpam-MessageData: YysWTtb8I6ucbyThZ1eUeT8GEpwoXGNvCDwZ26WcZgHm52dXY+dnB8oQVez9vPKIaLJcwX7RVhUHNNsnX+jtKCjTl1K3/d0BGZYJXQWmKqVmqBZHcOJic/RBBAfGJzSlkeX+ghBjkQvHOFuoF+EvyQ== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: bb281e0e-d2fb-4201-9825-08d8f8be8e36 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Apr 2021 05:40:58.8501 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: HE1EUR04FT014.eop-eur04.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1EUR04HT057 Subject: [FFmpeg-devel] [PATCH 9/9] fftools/ffmpeg_filter: Don't needlessly copy string X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 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: Andreas Rheinhardt Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Signed-off-by: Andreas Rheinhardt --- fftools/ffmpeg_filter.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/fftools/ffmpeg_filter.c b/fftools/ffmpeg_filter.c index a4b4638abb..400f5a4188 100644 --- a/fftools/ffmpeg_filter.c +++ b/fftools/ffmpeg_filter.c @@ -593,7 +593,6 @@ static int configure_output_audio_filter(FilterGraph *fg, OutputFilter *ofilter, } if (ost->apad && of->shortest) { - char args[256]; int i; for (i=0; ictx->nb_streams; i++) @@ -601,8 +600,7 @@ static int configure_output_audio_filter(FilterGraph *fg, OutputFilter *ofilter, break; if (ictx->nb_streams) { - snprintf(args, sizeof(args), "%s", ost->apad); - AUTO_INSERT_FILTER("-apad", "apad", args); + AUTO_INSERT_FILTER("-apad", "apad", ost->apad); } } From patchwork Tue Apr 6 21:55:07 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 26779 Return-Path: X-Original-To: patchwork@ffaux-bg.ffmpeg.org Delivered-To: patchwork@ffaux-bg.ffmpeg.org Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by ffaux.localdomain (Postfix) with ESMTP id 2BB9744AF20 for ; Wed, 7 Apr 2021 00:55:39 +0300 (EEST) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 06C7868A466; Wed, 7 Apr 2021 00:55:39 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR02-AM5-obe.outbound.protection.outlook.com (mail-oln040092067057.outbound.protection.outlook.com [40.92.67.57]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 2322E680378 for ; Wed, 7 Apr 2021 00:55:32 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=TWEdWseJtFGyMg3eV2yqSo4DJymBgrAoLE6nQc+ah/cfmgKJVvS10Psq5woXyPlzR4tsF7VwXfF4NZZIMyzExel9pb2+QezOqmNwJhPTDCKmJEUlj5uVODseDmlj0nb5mY84xD2X7wiZmhN0l3/XBc4APDN9oaMFGJc5+DZ4ndLFQjqfe/gYgG5FVLmkd4WcYt9pzyA4yZNXxlmqE9RWh/r0BUunGn2YLZMWswK5/i3SpY2k1IL1FhrYuJNu6O2kF4mL0p8P+5sHOOeYtr1vyQJUgqZwQ+nL8K2qczHcx10XNR0YdJApsSYWwdq6NU1WX0gnXc4WnD4/VYkp+75Cqg== 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-SenderADCheck; bh=YDeRxqlj1uwKTdUKXbUTfRERF0m/kivndBPI7YSSS90=; b=fDVZwkAJAn5NmJ1VbE78Yuq4h4SuwumPuEmZJvk4K1ueFJAfb4QFlf+iuOdeg2B+jfeEE6540QS99IBtGNCXOXocqqSmrSHXkgT+NV3NU3oblajHtIGiw55pOXG1znox3kc/SosZIIdMba1sFU7UMIzglrHl/dSf3yIDPcy8iZVu8uPrrzj4rPX3yttv0c1+r+wSsITXaGftQTfS0KkKpyqiUVzZWQBKORN+0GZBDTFH0wKLXnP0Tp4RY4zZecyV9AePMniDMUBHaW72JEIXJjGoBKEWD5+bOT1XQvYifQ61FvYveZbnAx34xXQ74GJekrpxzxktvf+c6l2qBvuy0A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=YDeRxqlj1uwKTdUKXbUTfRERF0m/kivndBPI7YSSS90=; b=NBqU1edkteo9Vx+9s3+YtQy0yVcceew1gxLEIp30+srf2e2AoEugtUPyYPSv8V58986TuPNJ/YZLU16WCOnuTB7OeWytb1IJNFRX8x+J9TIpOG8CmMBXgp6C7KHv95f2FhbzrAmumhQZezJDlHWwL8wWaBtcpWaKfzEec0224pCmr4xMsvF8H1Y+i0T6gwZEMv6+JDxyJ7bvxTQ6hC/666l+fx1MGiLjMSQ/xC7QXlvln6Lsfb99xHGiiur3ooatmMRugc1rWElqtlgzW4X0bKrPGsGRPrg/fkfawliBc2BBZnBhgCcby92ilXLAtZ1AUDzjiM+FpVTZCse3xJCVeA== Received: from AM5EUR02FT037.eop-EUR02.prod.protection.outlook.com (2a01:111:e400:7e1c::43) by AM5EUR02HT105.eop-EUR02.prod.protection.outlook.com (2a01:111:e400:7e1c::384) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28; Tue, 6 Apr 2021 21:55:25 +0000 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com (2a01:111:e400:7e1c::46) by AM5EUR02FT037.mail.protection.outlook.com (2a01:111:e400:7e1c::182) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28 via Frontend Transport; Tue, 6 Apr 2021 21:55:25 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:F19F62F7CFD5AD5B376DA31C9D156BB67E30A28B733079D212A3A9C20B6B1D0A; UpperCasedChecksum:FF5A090F9AE6176034ABD2A14807DE1917E8B68DC728EDFA902A402EC51CB659; SizeAsReceived:7584; Count:48 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::8128:5de5:4e94:9a21]) by HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::8128:5de5:4e94:9a21%3]) with mapi id 15.20.3999.032; Tue, 6 Apr 2021 21:55:25 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Tue, 6 Apr 2021 23:55:07 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [yTcSplSajGShhvZxSIF82WnxKAkp48fp] X-ClientProxiedBy: ZR0P278CA0046.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:1d::15) To HE1PR0301MB2154.eurprd03.prod.outlook.com (2603:10a6:3:2a::22) X-Microsoft-Original-Message-ID: <20210406215516.832944-1-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.137.96) by ZR0P278CA0046.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:1d::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.16 via Frontend Transport; Tue, 6 Apr 2021 21:55:24 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: 50ac35fc-36c4-4b81-5ebd-08d8f946aec4 X-MS-Exchange-SLBlob-MailProps: gjx25WM8ZNWokjkIuSHCLcr3WWR6SqcKKsi+8hSvMv8uu0NA9jgJXLDmvB2sxtYeWvTqgUaGoU+yEzGHKBHmgBony1IUUXgkC4d5kbXMQKlNTJpuDp2Qg4j8mvpEHoAIbi6xkQao71mvpzP40y5zg9Ln/+Fj7HiHrj4DHN2IJPzrvNbO4jkVBnBsxnTSII18PYB4jUqLX6dhDePx2QR5kJUoWCmZPzW4Vwp2r71QP8Cnd+5NBjR9DnC9C+YC4oLIhfXU9gc9yGlvCKJbtstmg0b079n+b87GdClcevugttfauVwNssWOKVvgo9nXJ8hjYssDh77hIqlGij3/1V9g+FQL7X/LG9/cOrWTg7myCEaqnwAh9OvBfVjH5iNPFiBkOPSJNNuzLgCwCuLgtmPVf/6e4tN5jb2wlPMupZkNHMB4v/gl2FXwZNR2nGIKRHPIvOJmGoLdyUr9vlHsHSBldr5LAsyeRpYlg9YbCWUGj9RFborLaKuFQdzCIx0XIP6B2UHM3HyzJNrjQ5y538c77xS+j2HIxKrRmyMO51Ngl23btPAbmUqn6HBvLXDZ2cm7XFt2an1XFG8PGS8AkrtMOwVPbYc51reulkDCKZaIH4DvDSWsnLaPzaiPE1572j7cGrjXMmR/ZLLUIfEweIRq6dHs4IGbH7yRF6/AgzZlRi2jcuiXOTOTuUai3zG6ZFx2h1VuPRhyJFqqvOTj6R0lOOuj8Yq7zvg3hPjj8x6nYHk= X-MS-TrafficTypeDiagnostic: AM5EUR02HT105: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 2VoX70K7v98MiKxOdQs0XAbCltZ2DkMbdEN8O6K5/+JW58GJ4CgbFWJGhw6f7DERW6eQk11SYoFfEGkiaCHYG8mpq+hRuOuklnpoh+hX7bSJfWOHQ2JtJTdPru6ZISHLAsbuW3Rr7edP5hqj2nEUaOG09MJKzz+GZNwLGX1rO0C+3wLFHYFScbvjulnEKkrFsfGV6uQWRoJneOS5kdNts1ADKfHrfRcgHCiEkTXZGX/ltipLu7jdUJLipivhPppvgzc4QK0ouDnJdxtElgXPS9g4urEoMCS0lFqEQLhULuETe7PFX2u1ImUtxPGutQmeCzNLqZhc1MxpOclGaX7yTIc+MtzdWkSb6+Lf6T6SXwcuk/sdI8ov5xk/9u0ZvgtNxBF++oigehNyzr4vXHEkxw== X-MS-Exchange-AntiSpam-MessageData: FQgxzP35vKb8dNUwSdNiHBtGhSqYbTR5DnmSDUhpbT6BLNx9HMCOrx88jfJwsAUP/RLk7Wm0ojeAj1RqRUwp8qBcGuYyQStDpBgqHgIz9OSWYH7iJ9N/P25YGhntio1umvD+7YNaCgTu+QsD0247oQ== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 50ac35fc-36c4-4b81-5ebd-08d8f946aec4 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Apr 2021 21:55:25.3014 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: AM5EUR02FT037.eop-EUR02.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5EUR02HT105 Subject: [FFmpeg-devel] [PATCH 10/19] avcodec/mpegvideo_enc: Remove redundant time_base check X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 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: Andreas Rheinhardt Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" This check is dead as ff_encode_preinit() has an even stricter check. Signed-off-by: Andreas Rheinhardt --- libavcodec/mpegvideo_enc.c | 5 ----- 1 file changed, 5 deletions(-) diff --git a/libavcodec/mpegvideo_enc.c b/libavcodec/mpegvideo_enc.c index d5dd69b88f..2a0fd60cbc 100644 --- a/libavcodec/mpegvideo_enc.c +++ b/libavcodec/mpegvideo_enc.c @@ -672,11 +672,6 @@ FF_ENABLE_DEPRECATION_WARNINGS return AVERROR_PATCHWELCOME; } - if (!avctx->time_base.den || !avctx->time_base.num) { - av_log(avctx, AV_LOG_ERROR, "framerate not set\n"); - return AVERROR(EINVAL); - } - #if FF_API_PRIVATE_OPT FF_DISABLE_DEPRECATION_WARNINGS if (avctx->b_frame_strategy) From patchwork Tue Apr 6 21:55:08 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 26789 Return-Path: X-Original-To: patchwork@ffaux-bg.ffmpeg.org Delivered-To: patchwork@ffaux-bg.ffmpeg.org Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by ffaux.localdomain (Postfix) with ESMTP id 7FB4644B689 for ; Wed, 7 Apr 2021 01:10:31 +0300 (EEST) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 55A1868A5CC; Wed, 7 Apr 2021 01:10:31 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR02-HE1-obe.outbound.protection.outlook.com (mail-oln040092068025.outbound.protection.outlook.com [40.92.68.25]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 77A876806EB for ; Wed, 7 Apr 2021 01:10:24 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=DzKh0GMBLVQ2WmQ0tBiOPl0s1rBdm0mUlSPaAfEdzI53lHSUeh2dqZWoQnsGx7paUGpY8LSsFuGER268d6CTRD880BHrAwapLrytLKnaC3J9ITOr/slKTRn3O3xZ8/I1bZbIHmY+khSnQe+/dmlZyoqG3D6xCmfZroTetv/+jDCcUezwacE3BLq82OodPl3WFJ2BY2AaAEPe0H8JwD7X45E54iBIHiV+p3aPn4rQt3Lpt6twnemckjzLrnjqzd2MT+hhUJ86JkALdl10KIeYZKfzmlWar8CeE/HpcqmNFiN88TmWs6RPR8KPUFDRhLuKmlRBJIxwNJCzfktjve4Qjg== 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-SenderADCheck; bh=A4gOGZXN7MHX9ksu5wvrlb1alzjx8RdMRd2fKZ8Ja6g=; b=Jjqpa8OV8QzAedkMd3q41ExUcHiqUXX1k9ya1Wd3iJugccas8zq0lULWEgq9jL5zRuKvfL5Uwas8eAXcIS9vdhBMZyee7QhU1UhQanbJEr7C5r7KW8lR9CAxmgufoamZCdXkWWjzRy9OfvGAe1GMtlBo+kt+PZ1T3T6TP812vc//VNQ6fj9QxwzrumrJtoYBVPkmKcnukj3qyW8YBi+286RmwD8yuk5P5hnyq1Vc2YaCOcXphd2ZvAObBS3AAGEzNbjQ2ku35ovZMOOQ83hYVP3a9ZxekwkoUTZEfiRYvxLd8rLl2UPOnvthnX9xh19nShi3NnsCOB5SJnknZ3IJTw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=A4gOGZXN7MHX9ksu5wvrlb1alzjx8RdMRd2fKZ8Ja6g=; b=cfW3SPnKQnLAQXgoFd7tm8q9f3TKdAXwisJJEgpMiiLFGIeWWhl4q5DyaFQiuBXv+tJr1oXJs9RvZQQp4Y9IGpkrXZfYYHcBqtF1dGAeet5nwY9uTSob0p9F5hbPvW5jRE4B9txFvEutVvnknJhxf5PRX3jIofthlap/pxURU9yILUCIRtUCHhIDK3diFbALUITtXoRjYfv1+yHDmlIyvR/AeQwbrhOdd72zNkt7KMWkpNIeNovpmmtZbiTNYGeIF7HIuJIl9AA/Agbf/xigARPz/AmxwX1Mg7WexFE30EDjPAkavBoh2drXjqzt2w596ySXXjch+u8AVCGAaeT64Q== Received: from AM5EUR02FT037.eop-EUR02.prod.protection.outlook.com (2a01:111:e400:7e1c::43) by AM5EUR02HT189.eop-EUR02.prod.protection.outlook.com (2a01:111:e400:7e1c::391) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28; Tue, 6 Apr 2021 21:55:38 +0000 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com (2a01:111:e400:7e1c::46) by AM5EUR02FT037.mail.protection.outlook.com (2a01:111:e400:7e1c::182) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28 via Frontend Transport; Tue, 6 Apr 2021 21:55:38 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:709D39AF708C2845C3C4CFB7D1969985E32E539BB050238749DD396DCCFA6888; UpperCasedChecksum:E02AA42BF1983F11E3FF724B5C75BEDBF3D81AE7B9296709E3D00C59EF5E1AF6; SizeAsReceived:7599; Count:48 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::8128:5de5:4e94:9a21]) by HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::8128:5de5:4e94:9a21%3]) with mapi id 15.20.3999.032; Tue, 6 Apr 2021 21:55:38 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Tue, 6 Apr 2021 23:55:08 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [0RL5MjLn3Owmd9fdLx7m98BUeFvvoSDo] X-ClientProxiedBy: ZR0P278CA0046.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:1d::15) To HE1PR0301MB2154.eurprd03.prod.outlook.com (2603:10a6:3:2a::22) X-Microsoft-Original-Message-ID: <20210406215516.832944-2-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.137.96) by ZR0P278CA0046.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:1d::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.16 via Frontend Transport; Tue, 6 Apr 2021 21:55:37 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: 50669f3a-d0f3-40fd-140f-08d8f946b6a4 X-MS-Exchange-SLBlob-MailProps: S/btQ8cKWiRct5ooVDkA416xUUNF5iBF3CTj8GD0Ti64aDgYoNZOaJEobCyGwrcKVCgfCMuX4Rnw2hV9Z4Xmam4Q928gUTn11VSseLSOXsSApnZkYOLUWhLPo3eFy0+ydRx/GQgHsaXwEoBmnfaJ+bUfBDpRfSxe/KyTtJsQIGIfppDjhNPTFx8RmIrqZdiokaRwUrRwe+qwBHDMj3ufpWx/Ya5qd6R+PCwfUxvnk20iLjYjz6wLNqdZ/z6mFJR8F2wIPqfnC4TK23pcDgOXohXKYmaloWbN1kkAauw4npxcqgEc6yg3/Uo80IHz6u3KrIvgGs05GV9sj70tKsq0Yg/YmeZbTmrJCMBzulL0GjewEEFchBh//i3ut4fbZ55YnS9GRYTTXn7O+ND1JiVISz5hShSCujvo+Jvf9EJKsL5dDdNrAYpLDMP3RXPOrS4ABw38TetWo4MWaKaZ5ikz0Hk9eZ067/ukuCYXSsNIWqaZ4VNIsX7ZOtzjjikIgSf8ElbU3oCDSEAeLIcN4pynZgrkQhG9k4kBt3BPZerhVi2kM8vUsQoWqeXAPl93GS6oHDHSgkYQW77mc8uZ/BIIt9Txg1+RbqO/qMCUMx50vhlyYqWVP+7WRYoLBVc1Ofn41tzU4i2OXqfPD3zKs4Wgb+wGcHyxe6bswlh21JeIwrdjreTwj71Q0oA0aqUAF32g0NsUDb0+McBHTb+QGgfM4x9GVYU+SYhS3/fep/1BFeKhBOJfowz1lHPXozQDEWxpn5Yu7phfoac= X-MS-TrafficTypeDiagnostic: AM5EUR02HT189: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: rdp/NAgIrc8q6cKuyk+tzOFHi0NqSfOqK6qOZPoAPLd82Po4GF3vvzO7yRkIKlMCBH4q3b9u/+XjS4z4rhPgM7CeJyzY49c562K/+ZqDyXU9JJADMQ4imc5Asu1bKaYOOkabiAKNKUbXsYztMLF/4yDH5PVxf/oUCEbbHoAohzU+daglIQDlVEAO/8nFqCxGpvkSw1Ib1FdweIePwGFqTxOBKLBYP3vu4KmziZ54iBM5PuSTT7zKOmKUIynT3Yg2yZdexLHwgrOv/R0V45WU9FJmUU4OVObf1y/g6zyoCSt4YZynzGrxHsHZ/WYwTeC9ggiQVCs9CqP4Urz1lSDQzRtBu7ffsj983v3Jxafu5jXL2cAHrTwKb25byaPesw1io8m8Y54Dv1QsETvNv5/9uA== X-MS-Exchange-AntiSpam-MessageData: IWyelrN79DncsfNjPq8CT59Kt9+Fbo02IuyOaxfims7sUTjijVEXLLe2Mq10vxjGjzYFwsr3cyHwmDjMXijOpqsFpM1ATUnjxByMjKTJrmn2y+Q2Wp06BpJK6Vuxmli5hRW1wDOdY6JfsJPsmjEgyw== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 50669f3a-d0f3-40fd-140f-08d8f946b6a4 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Apr 2021 21:55:38.1887 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: AM5EUR02FT037.eop-EUR02.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5EUR02HT189 Subject: [FFmpeg-devel] [PATCH 11/19] avcodec/mpeg12enc: Move MPEG-1/2 dimension checks to mpeg12enc X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 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: Andreas Rheinhardt Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Signed-off-by: Andreas Rheinhardt --- libavcodec/mpeg12enc.c | 8 ++++++++ libavcodec/mpegvideo_enc.c | 14 -------------- 2 files changed, 8 insertions(+), 14 deletions(-) diff --git a/libavcodec/mpeg12enc.c b/libavcodec/mpeg12enc.c index 5676caef87..b7d3d1c6b0 100644 --- a/libavcodec/mpeg12enc.c +++ b/libavcodec/mpeg12enc.c @@ -144,6 +144,14 @@ static av_cold int encode_init(AVCodecContext *avctx) { int ret; MpegEncContext *s = avctx->priv_data; + int max_size = avctx->codec_id == AV_CODEC_ID_MPEG2VIDEO ? 16383 : 4095; + + if (avctx->width > max_size || avctx->height > max_size) { + av_log(avctx, AV_LOG_ERROR, "%s does not support resolutions above %dx%d\n", + CONFIG_SMALL ? avctx->codec->name : avctx->codec->long_name, + max_size, max_size); + return AVERROR(EINVAL); + } if ((ret = ff_mpv_encode_init(avctx)) < 0) return ret; diff --git a/libavcodec/mpegvideo_enc.c b/libavcodec/mpegvideo_enc.c index 2a0fd60cbc..d1f2460409 100644 --- a/libavcodec/mpegvideo_enc.c +++ b/libavcodec/mpegvideo_enc.c @@ -534,20 +534,6 @@ FF_ENABLE_DEPRECATION_WARNINGS return AVERROR(EINVAL); } - if (s->codec_id == AV_CODEC_ID_MPEG1VIDEO && - (avctx->width > 4095 || - avctx->height > 4095 )) { - av_log(avctx, AV_LOG_ERROR, "MPEG-1 does not support resolutions above 4095x4095\n"); - return AVERROR(EINVAL); - } - - if (s->codec_id == AV_CODEC_ID_MPEG2VIDEO && - (avctx->width > 16383 || - avctx->height > 16383 )) { - av_log(avctx, AV_LOG_ERROR, "MPEG-2 does not support resolutions above 16383x16383\n"); - return AVERROR(EINVAL); - } - if (s->codec_id == AV_CODEC_ID_RV10 && (avctx->width &15 || avctx->height&15 )) { From patchwork Tue Apr 6 21:55:09 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 26780 Return-Path: X-Original-To: patchwork@ffaux-bg.ffmpeg.org Delivered-To: patchwork@ffaux-bg.ffmpeg.org Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by ffaux.localdomain (Postfix) with ESMTP id 31F2044AF20 for ; Wed, 7 Apr 2021 00:55:50 +0300 (EEST) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 1A24A68A609; Wed, 7 Apr 2021 00:55:50 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR02-AM5-obe.outbound.protection.outlook.com (mail-oln040092067036.outbound.protection.outlook.com [40.92.67.36]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 33DDB680378 for ; Wed, 7 Apr 2021 00:55:43 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=hBU4CcNqJMaBhqGKATic1P4ikFYDN9uK2TaJRbtq3OjQX2TJPc8BpDNyQB0GXm4H0ZMca71VChxy1rwWsgc/JcvLFgkzM9onnpfO0xIYHHuKHbNFtZj0VAWfhdsXb+tiP9Knl/gUNYbjh50TgS3aYfvjTLOq5Ct3hwRwwV5hKMEw0wPAkw1qPmezD66zROYWJzK5lw0mjGGGxMUghh5NxKACllc/gZw7Vb6QJGY1Ip9DEpE4faLccjokCaYNaofAahgGRz6z20AE9Divqt2wyh9wLz3k3tIP1KkLg4YlJuRxk9NJYUtyQAGVRV+tH9ggAWWl7eM1/Dfg2L4EhWhjzg== 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-SenderADCheck; bh=n8I3ERwbks7m3MDAXVV3Pd8TfiGMPyGACoAGSd1Kkqo=; b=Z7lpum7IbE4G5v88TQR5BEpbyUoou//dN8jfhdBa2ijGwsuqM7qHY1cfYeze1LjbcYezQW5y80SaQlCUEpKmRQ/Is10BeolCiMsAxdMAYOr1yv1mylERVDopv23uh6roTEuR+ahGQNhCrpbMP1xEsbNHOxUxll5r2ifZYSeS50V0uJnBOExEoItmtUVJkXfol3Uj1o014qHz0wiyKMCuMOfiNYgYCvgV73Y/+H/GCLm/9zdZ+9l2qjdQgn80ejNmb82fx1gpoYP9jFdBE9LY3WPQdIh/b8IITxCkMULRqb8ViGBorrOgeABLL+tEH8mjYHDoVukQLdft/YTOqLc5bA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=n8I3ERwbks7m3MDAXVV3Pd8TfiGMPyGACoAGSd1Kkqo=; b=NNA08T+GW94okTwSlCRZJ8qV3lhOGQVLFOgXp/n2iPwNKJ9azxj6DDQovaYXconNVBF9qPAFF7QZm1erpA6Mx26m8AZ1oGhn8zZMGpQ27e/DLVyS25GOHBQUGHsGFIMPmFA5CBGcWYkutHOTzn3Q37MKCAhoPh72glQ5pkt/94gVkPkDfQ/pOkYw+GlBCdYjejjnjFAiLaQytgmf9a1RA4RwaQLCcye/mqLJum0+k4/gDs/SQsyQ8BM6b6thdl/9IB5z/+tOGfQ3c2qOhpxtcUxod7c845J5T8qpuI6WLb3x3htvH/5bbQkr1rCvB8I8nPb+twDvAZr2gtNAJ1dspw== Received: from AM5EUR02FT037.eop-EUR02.prod.protection.outlook.com (2a01:111:e400:7e1c::4d) by AM5EUR02HT131.eop-EUR02.prod.protection.outlook.com (2a01:111:e400:7e1c::347) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28; Tue, 6 Apr 2021 21:55:42 +0000 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com (2a01:111:e400:7e1c::46) by AM5EUR02FT037.mail.protection.outlook.com (2a01:111:e400:7e1c::182) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28 via Frontend Transport; Tue, 6 Apr 2021 21:55:42 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:4C9D92D233AF7CD76CD6C8138C4912A09DCDC55B82AC32EC0AA3C9356CDDB9BE; UpperCasedChecksum:8D67D7820D51B1116AFAB2878B2D857630639D6D09AABDDB4C90B99D5F210D1E; SizeAsReceived:7599; Count:48 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::8128:5de5:4e94:9a21]) by HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::8128:5de5:4e94:9a21%3]) with mapi id 15.20.3999.032; Tue, 6 Apr 2021 21:55:42 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Tue, 6 Apr 2021 23:55:09 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [cffoWX4AK2KOOrmeG/MTQrsVrksIdVPA] X-ClientProxiedBy: ZR0P278CA0046.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:1d::15) To HE1PR0301MB2154.eurprd03.prod.outlook.com (2603:10a6:3:2a::22) X-Microsoft-Original-Message-ID: <20210406215516.832944-3-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.137.96) by ZR0P278CA0046.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:1d::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.16 via Frontend Transport; Tue, 6 Apr 2021 21:55:41 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: eacd211e-2121-465b-c50b-08d8f946b906 X-MS-Exchange-SLBlob-MailProps: S/btQ8cKWiRct5ooVDkA416xUUNF5iBFgAC8+VM8w0LQbRdIhW1Y1L+QaQoHolODwDoEndyNG+ofL9nMyQTsypWP0MrQ2jz/82ZVMikdOZqB+6WFV6TsURdo0IjRogwG+sjcnLVZqjbexL+scEhSt6BhhMyaWmlv91N5YMTjYwbL3LPI8MNJJ8c31b1urwC1QoCkgGksDSJ/jS9R/cqyp2qbJk7JRAYOb51lbzoVBjmSwlzVl/9YiGODQdnJ4htwdmmB6Q3dVNn0T0d9tHQ8N55Y5SspnaT5cm8GwetFf7kPFxpINistDMlejyNXnU2JtTC3OkadabCWJqLlIsW45HgmuazHcX4hz77KeHQra/6Ap2UFSOEthnnRvRf7T/9Idrqjp+Mca0gz6Hiugy7Ii8tRvgVzeXvoOEveRInLoV7qWWtEytSvzID1K3xOfoL/8vb6erizPpwgPd5q3K/bj+1DIPFhtXQKDERDxjtc6wj1PeaXv5B4q+T2UdyH3QcCfXgqE4BcMhcssxA8AJUHzg1JIEBMteo8W496/+bhYVRJrUVMH38ASuOUoSeFdXlba4aIjH4KHrFV/JsaTfnW/Cl+bEcMHl/07dMdC7YFFMcBB53cDiSfimwViscoMddX+TEdkJivKLZ0G/CdpKxkzbrk/jo3a2FRedyu92XTTpHvTU/JgXRbSnOEPISX2Y/R4z0sFDC89hp/ZhqMNCcQH0jPNZi1mpS/3mgwr3mAxYKiydqK7agQkZ/mPZuCGbzAencUkUEQgQU= X-MS-TrafficTypeDiagnostic: AM5EUR02HT131: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: J9KwlIKqdU84pWLTCvwpD/JBoUOZbn50VfDctO7E06xMjdrAS0tmWgtzUG97PVausyRpJYC5GHZeWZ/FeJUzPS1TM5ZITC3OdU5iL5aIjUHeV7i/NvCz1nOudBQaQlnUbYU7bIuPTS5q0AVTrXJALztoa5nZq8r7oMV3p70yAMQko49QPh4I8GN2km3C00Lu2ndk7Sn6aMalvjLxjlqlgSOh2KHWSUZD7/IkasAL9MBiuGyOA5jD3Yak1TdpxgFZGURww8cgTACLI6AtE6nmjBAp6fS7/pUqpvumYAW32PBlWr0BBQzQ2YocUpTBuVggcUFwyf4T4GINDdFFyqga8m4AxIsfZ/m91NuxAAt2+m14A71fxCAJezndXX9yusaFvlRteaQJ4OcV80uBrAvBVA== X-MS-Exchange-AntiSpam-MessageData: 1vuP0Rrb4QSwNhT9I1jB8Vhj52PgWIBWsmcGEAnmL8iOWcmYz6NtshaKevqAyTZiF2DHeyVgchcpflZ/v/3el9hhgp2/dO/3+5cpAih1b3V+f7dbpgslou04IzayMCvTb04HL8WZAe5+O1QqvdMxqA== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: eacd211e-2121-465b-c50b-08d8f946b906 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Apr 2021 21:55:42.2249 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: AM5EUR02FT037.eop-EUR02.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5EUR02HT131 Subject: [FFmpeg-devel] [PATCH 12/19] avcodec/mpegvideo_enc: Don't segfault on unorthodox mpeg_quant X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 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: Andreas Rheinhardt Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" The (deprecated) field AVCodecContext.mpeg_quant has no range restriction; MpegEncContext.mpeg_quant is restricted to 0..1. If the former is set, the latter is overwritten with it without checking the range. This can trigger an av_assert2() with the MPEG-4 encoder when writing said field. Fix this by just setting MpegEncContext.mpeg_quant to 1 if AVCodecContext.mpeg_quant is set. Signed-off-by: Andreas Rheinhardt --- This can not be triggered if one only sets options via the dictionary in avcodec_open2(); one needs to set it directly in the AVCodecContext or use the private class of AVCodecContext. libavcodec/mpegvideo_enc.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavcodec/mpegvideo_enc.c b/libavcodec/mpegvideo_enc.c index d1f2460409..0a1d0db86d 100644 --- a/libavcodec/mpegvideo_enc.c +++ b/libavcodec/mpegvideo_enc.c @@ -564,7 +564,7 @@ FF_ENABLE_DEPRECATION_WARNINGS #if FF_API_PRIVATE_OPT FF_DISABLE_DEPRECATION_WARNINGS if (avctx->mpeg_quant) - s->mpeg_quant = avctx->mpeg_quant; + s->mpeg_quant = 1; FF_ENABLE_DEPRECATION_WARNINGS #endif From patchwork Tue Apr 6 21:55:10 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 26781 Return-Path: X-Original-To: patchwork@ffaux-bg.ffmpeg.org Delivered-To: patchwork@ffaux-bg.ffmpeg.org Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by ffaux.localdomain (Postfix) with ESMTP id 662C744AF20 for ; Wed, 7 Apr 2021 00:55:55 +0300 (EEST) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 2F51B68A6E7; Wed, 7 Apr 2021 00:55:55 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR02-HE1-obe.outbound.protection.outlook.com (mail-oln040092068058.outbound.protection.outlook.com [40.92.68.58]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id BB03A68A5CC for ; Wed, 7 Apr 2021 00:55:46 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=dDcDkw8hASV762KMamECrSTdlDJ5WxPKuwGH98XZNh1B3/kOlP18EklDDHOSLB3iTfq5XCNwSuaTKAgCKZX9dU01ZRo4PSUAMnj+kuYm+SqUDuQeh+XhLXs+MKu+n4oxPqap/7ZwKZgpTnwzvZdP3qmFa5GSyTZDVvQmWh5mwrNtAI51ftELsAxqbLzwFoLDOrQ3qN4Cf4DRw9HU8eP/36yhsFaclVfn0nQ6tLpWDQppAPZ7fnli9mbZuYE3AY5X7VtYajx03LJvNDYMgFUrlW3iNT5vkzjN/7CAjQxL+wyB5wr7tHhd2qZB8/78ZzFejrgoDtnpHbv5KgZdE7Fk1g== 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-SenderADCheck; bh=5/7NV3MsnwXQ02LLtb5cXhXFsC4UVA5NFKU8Q3xZRTM=; b=R+lkVbis2xYEnh6nlOxPX7E8/fhSFtwOIgYH56S7gWYyFLlqucY0QSEJfFmV2KJgD7Z4vUzQRXmlOw3JeiuU5+x1rEJcazIxSIhW/CR7YtlMFs/8X2Uv8OlHnWrxGAHEVBMwI2tE7h5l5nZl279yGfmDrrFIKPSNFWb4Z/nTtKVHYUJ3XskwUqEaxPamH9QMbNEzu7hlV4UwH3IX/KovhINP/yzD6IT/ZgfjAQ8jtmHEl5KP60V02XPhBhVFEFtuaVQv+Rrs5f9amhG/iW7pTHjredHJLVUG5fOmR02a3YRAE45pX5iZfgUv9CgvJ7e8hYJKcHMtdOJKJbphuma92g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=5/7NV3MsnwXQ02LLtb5cXhXFsC4UVA5NFKU8Q3xZRTM=; b=CCzaWZTZ3SJP7FTT2MGnCZFPvFaqdiK11pMaDSXdHiiYihcOp3P2+F4E7jNtrAQuUrd2ABds9j38HR8XhAmVQCjrfQgLAABe3bsALYn1Tto/qAP0nZgGnjgT+/gLUOi1Jx2gDC4wCxFIn9vv6X+/gyDDxcRzX8UdMCoAMv3qZqD0IA2f3yF6t/zirdFG6+FQfwg6l9yZ3iFSgXq75rlMdHq6yHaYw7YAZ40iVL644YAkE9esCmEnPv/vo3MUX8npjJZDWmqLZMUFoNV2hLDqcbaiv2wjFZbbVmaXMFVSxKiKmbIl5t676KC81ajGygqGz5BnUA1W3zQX6NtQVVtVOQ== Received: from AM5EUR02FT037.eop-EUR02.prod.protection.outlook.com (2a01:111:e400:7e1c::4b) by AM5EUR02HT025.eop-EUR02.prod.protection.outlook.com (2a01:111:e400:7e1c::455) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28; Tue, 6 Apr 2021 21:55:45 +0000 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com (2a01:111:e400:7e1c::46) by AM5EUR02FT037.mail.protection.outlook.com (2a01:111:e400:7e1c::182) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28 via Frontend Transport; Tue, 6 Apr 2021 21:55:45 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:6BFF08467CB5E14DE4EE350EA1F30C487AFAAF64C27133D4AC5065B4C792FF30; UpperCasedChecksum:438AC737458A2809B83D31A6753559661579901EA4A17F714301B31E2F8BB180; SizeAsReceived:7598; Count:48 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::8128:5de5:4e94:9a21]) by HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::8128:5de5:4e94:9a21%3]) with mapi id 15.20.3999.032; Tue, 6 Apr 2021 21:55:45 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Tue, 6 Apr 2021 23:55:10 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [4OvhhWnGrcHLvHneYYxOoT9v8wVJk26r] X-ClientProxiedBy: ZR0P278CA0046.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:1d::15) To HE1PR0301MB2154.eurprd03.prod.outlook.com (2603:10a6:3:2a::22) X-Microsoft-Original-Message-ID: <20210406215516.832944-4-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.137.96) by ZR0P278CA0046.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:1d::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.16 via Frontend Transport; Tue, 6 Apr 2021 21:55:44 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: 8b35315c-58f1-47b4-eb68-08d8f946baed X-MS-Exchange-SLBlob-MailProps: S/btQ8cKWiRct5ooVDkA416xUUNF5iBF4pZ1E7/UJYEW9UuYjm1Qk8wpPkxpldeafhCEoRoDWJBZhM04Trai9M7FfS+KoJ2g81RDZgIobMhCIXWvl40clKBVjWihdWfUefF40SJa8fJC62mf07nb970E+lYkccfl4FBWmz4OZLrI3V/TIgFcTbHg0695xFQkanPQki/WdlPdu91YjBYMmIST7JQQxmNkKQV+646ygEdLmzF2WlYGBUe0G4TRVPIwhWqelAPpifsL8bmq1vi94+51mwbx2jDlEnCH5TSgjPoZiJkfS4HQQeJOCM8tdHIBFf+Na+PZtkxaddYJ1tsrCx+khkXQkAyhr+osAjnhBFp5fegSNWTibs+ybWSdYhQPcLpYVq6J+o6IaA5deOcDALjL+huTOXTEhqu3PUU+MIXeYikL6FbfslaQ5E70g55pURxeZuPassTcfCol4or8qVlEaQKf5Aawulg2wPGno3JoYqQ7zxAq5R7JJ347z2ihWNGu81HYiAC8jm++nC7k498l1M+z/KnaOW0Km+PA6PYvr7OFhuGu0ES2OtrRfr9PdLabJzxJ+J9VdqlSs6z89E4W6fQj6yB4v6HELalFC+ioNKcdKJvpnfGeO0ROatqgTXlnc6OsZwgX67Qd1Fxap2CSONI0qPIutvBKR6D8AWziHj3Ld4yAB1GLNx0eY+L4A7OuQsU0btT+TPbF4NuyD+/AcIMV0X/yxa8gSOUXW5nxFkYQefHqJFTDmCMlUSpAaBUeXxDzbs4= X-MS-TrafficTypeDiagnostic: AM5EUR02HT025: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: TDgUQLD5aEB+fSNwTzKwU6kK370teVizxOPgdGvqMY+vZR19Ja/ZMj/M126pqPpO6BVPuVQ++k6JdHQ+YVyL/jKY6QSWNgsAPD84AqQ9CdLQf/JNQqJs96Vd/hN/6NFNyfjVXHbnvbK5f39w8H3BudVhhfmcDFHNgOFDOIk0w2W/zObEGM4Kygx5kJvBKIUIOJIKe9LybJkDI8AbIrhDKc3NDU9rRS2C6QSd/RHW9O2d9cjwPdz2w7T5CcpVlrV9xGTvOtquqy19MNNpN3tAyFT4HErOdO1msKa0z0l3AJjZJdmAkyHSSao2cyM8fHZxYQauOne9B2zAbKAifRARMWf4LHVUTdVYmJI3seIRWxnH4SearTvq9vDxO6sbi5Qa7K4QeByUm+8lp7HlxhIlug== X-MS-Exchange-AntiSpam-MessageData: h00SLl9aUDSgfhjh4XP0N+9oToiMmrzmmM+lVGxJBu/eu0au/OyMiI4Q4IqNqIPQW3oOWM+hC12ThcTIyltdKJ57N+eNpP0naGBPo0GZbYsHZgWuye0nv34RVCm9IF/a46LwcWRi5p4IOm4BTAQPEw== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8b35315c-58f1-47b4-eb68-08d8f946baed X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Apr 2021 21:55:45.4055 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: AM5EUR02FT037.eop-EUR02.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5EUR02HT025 Subject: [FFmpeg-devel] [PATCH 13/19] avcodec/mpeg12enc: Perform size/level/profile checks earlier X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 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: Andreas Rheinhardt Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" This has the advantage that one does not waste some allocations if one errors out because of these checks. Signed-off-by: Andreas Rheinhardt --- libavcodec/mpeg12enc.c | 44 +++++++++++++++++++++--------------------- 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/libavcodec/mpeg12enc.c b/libavcodec/mpeg12enc.c index b7d3d1c6b0..8dcc04d341 100644 --- a/libavcodec/mpeg12enc.c +++ b/libavcodec/mpeg12enc.c @@ -152,19 +152,16 @@ static av_cold int encode_init(AVCodecContext *avctx) max_size, max_size); return AVERROR(EINVAL); } + if ((avctx->width & 0xFFF) == 0 && (avctx->height & 0xFFF) == 1) { + av_log(avctx, AV_LOG_ERROR, "Width / Height is invalid for MPEG2\n"); + return AVERROR(EINVAL); + } - if ((ret = ff_mpv_encode_init(avctx)) < 0) - return ret; - - if (find_frame_rate_index(s) < 0) { - if (s->strict_std_compliance > FF_COMPLIANCE_EXPERIMENTAL) { - av_log(avctx, AV_LOG_ERROR, "MPEG-1/2 does not support %d/%d fps\n", - avctx->time_base.den, avctx->time_base.num); + if (avctx->strict_std_compliance > FF_COMPLIANCE_UNOFFICIAL) { + if ((avctx->width & 0xFFF) == 0 || (avctx->height & 0xFFF) == 0) { + av_log(avctx, AV_LOG_ERROR, "Width or Height are not allowed to be multiples of 4096\n" + "add '-strict %d' if you want to use them anyway.\n", FF_COMPLIANCE_UNOFFICIAL); return AVERROR(EINVAL); - } else { - av_log(avctx, AV_LOG_INFO, - "MPEG-1/2 does not support %d/%d fps, there may be AV sync issues\n", - avctx->time_base.den, avctx->time_base.num); } } @@ -174,9 +171,9 @@ static av_cold int encode_init(AVCodecContext *avctx) return AVERROR(EINVAL); } /* Main or 4:2:2 */ - avctx->profile = s->chroma_format == CHROMA_420 ? FF_PROFILE_MPEG2_MAIN : FF_PROFILE_MPEG2_422; + avctx->profile = avctx->pix_fmt == AV_PIX_FMT_YUV420P ? FF_PROFILE_MPEG2_MAIN + : FF_PROFILE_MPEG2_422; } - if (avctx->level == FF_LEVEL_UNKNOWN) { if (avctx->profile == FF_PROFILE_MPEG2_422) { /* 4:2:2 */ if (avctx->width <= 720 && avctx->height <= 608) @@ -184,7 +181,8 @@ static av_cold int encode_init(AVCodecContext *avctx) else avctx->level = 2; /* High */ } else { - if (avctx->profile != FF_PROFILE_MPEG2_HIGH && s->chroma_format != CHROMA_420) { + if (avctx->profile != FF_PROFILE_MPEG2_HIGH && + avctx->pix_fmt != AV_PIX_FMT_YUV420P) { av_log(avctx, AV_LOG_ERROR, "Only High(1) and 4:2:2(0) profiles support 4:2:2 color sampling\n"); return AVERROR(EINVAL); @@ -198,16 +196,18 @@ static av_cold int encode_init(AVCodecContext *avctx) } } - if ((avctx->width & 0xFFF) == 0 && (avctx->height & 0xFFF) == 1) { - av_log(avctx, AV_LOG_ERROR, "Width / Height is invalid for MPEG2\n"); - return AVERROR(EINVAL); - } + if ((ret = ff_mpv_encode_init(avctx)) < 0) + return ret; - if (s->strict_std_compliance > FF_COMPLIANCE_UNOFFICIAL) { - if ((avctx->width & 0xFFF) == 0 || (avctx->height & 0xFFF) == 0) { - av_log(avctx, AV_LOG_ERROR, "Width or Height are not allowed to be multiples of 4096\n" - "add '-strict %d' if you want to use them anyway.\n", FF_COMPLIANCE_UNOFFICIAL); + if (find_frame_rate_index(s) < 0) { + if (s->strict_std_compliance > FF_COMPLIANCE_EXPERIMENTAL) { + av_log(avctx, AV_LOG_ERROR, "MPEG-1/2 does not support %d/%d fps\n", + avctx->time_base.den, avctx->time_base.num); return AVERROR(EINVAL); + } else { + av_log(avctx, AV_LOG_INFO, + "MPEG-1/2 does not support %d/%d fps, there may be AV sync issues\n", + avctx->time_base.den, avctx->time_base.num); } } From patchwork Tue Apr 6 21:55:11 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 26782 Return-Path: X-Original-To: patchwork@ffaux-bg.ffmpeg.org Delivered-To: patchwork@ffaux-bg.ffmpeg.org Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by ffaux.localdomain (Postfix) with ESMTP id 94C8744AF20 for ; Wed, 7 Apr 2021 00:55:56 +0300 (EEST) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 791BF68A6F2; Wed, 7 Apr 2021 00:55:56 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR02-VE1-obe.outbound.protection.outlook.com (mail-oln040092069096.outbound.protection.outlook.com [40.92.69.96]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id C696D68A5CC for ; Wed, 7 Apr 2021 00:55:47 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=K5VaQAds2X3JPiRyJLx3PXOWHVOZobci+WBREj8ZLvmEswCQfNzzMp8VEJcSmQbIvMGYuCPemfheQXlOG/GpWFue6P7Vi6R6Eco9tubYKGMlg5b4233Ae95shJMr8ZifTBORAiSs15D7URRYXfzaBqRI7Br8wf0hZpNuRSd9z+jrSHmuoa55dfSlnY8sNKAJqSxL2AQqBZOEfFXEyP51U1nysf6GXnHH5AWQVXJx9KO8B/+TzX7kxVf0TXX01j+IqNkx060c0n/8EUHdVAyzN8xk/xwlDEQEte8MIdW+7MR1AxyokoFBu8YBTMGQit1aO67cxfN+SY6012wTQlOOEQ== 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-SenderADCheck; bh=JciFSE4pO4BRljp0u5CHdU5JxWb6oSYhefcxKmEP4NE=; b=cojCrXlj21xbCmHn4l9kM5WDz6fXthC7KqfROAwdjBpvF+VDWBRDoDPtIwJJJ2ok62gGFimdQKz/WC3bngBCe56w2UtI6DhinEgoalPM5logY2Ixh+qF075uy4U6D79rL51OSnjXnqyneNhDVrrunsPgQm8XWBX60ROB9c0RkE3vsapmEua/cz9Kcm1r9bJNCVlMzVpVXFpBgbuWY8Ik1p50J2wEDnk/3k6fjGj+9FdWgZYQtrTY7W4L/7gUti7BiUwrUOInbrDqHm4NkPz9Za3BInDQ9U6nIkSW4bjKdxT1+Eo4kaR2uUgSJ9Wge/Ci/2oYPcEcMBxDBF4LOubUOg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=JciFSE4pO4BRljp0u5CHdU5JxWb6oSYhefcxKmEP4NE=; b=IueGaf1m/YwPl5Q6F4XIM7b2t+g0z/EMdm7UL9kfYTWg59fXXrlVk0E3DmxyXUTBwK11GqAKGJ1kyjERXJlE89C87XmlWuG9UMgh7EOIrqUlCmiWBThLnWNZPB8aL2zUeXxeQC320DDfKm4hYcNvbMlRcKMelvW/RErIN7ob7Cf84uTIQXmPRPzOgdaKUFUwzBqUL34iQaU0qv7S85ZZaT8ueihx8P71eS+FVA4DUR7Cl8g+d7/UYWfzBklBOwMx2Gk8bfU8nQTbPKDFjOU32ySIvp43pjC25kcHbU2MbD+HbcyoSK9iPnpF4TfssPKPDw9Qla2PUHjWtNYHpL2Rpw== Received: from AM5EUR02FT037.eop-EUR02.prod.protection.outlook.com (2a01:111:e400:7e1c::43) by AM5EUR02HT189.eop-EUR02.prod.protection.outlook.com (2a01:111:e400:7e1c::391) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28; Tue, 6 Apr 2021 21:55:47 +0000 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com (2a01:111:e400:7e1c::46) by AM5EUR02FT037.mail.protection.outlook.com (2a01:111:e400:7e1c::182) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28 via Frontend Transport; Tue, 6 Apr 2021 21:55:46 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:662383FA05009271085AA2A177275AC5366DD282012C2F015680DC8A0FFDCE0D; UpperCasedChecksum:08E44C6FCD8031DA06732CF4E91334008536C8A8C28E4671CDAFBBD7C25A859F; SizeAsReceived:7574; Count:48 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::8128:5de5:4e94:9a21]) by HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::8128:5de5:4e94:9a21%3]) with mapi id 15.20.3999.032; Tue, 6 Apr 2021 21:55:46 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Tue, 6 Apr 2021 23:55:11 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [0BVMY3BvgVC+XCWivVrN1dXcAX3yFJPz] X-ClientProxiedBy: ZR0P278CA0046.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:1d::15) To HE1PR0301MB2154.eurprd03.prod.outlook.com (2603:10a6:3:2a::22) X-Microsoft-Original-Message-ID: <20210406215516.832944-5-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.137.96) by ZR0P278CA0046.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:1d::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.16 via Frontend Transport; Tue, 6 Apr 2021 21:55:46 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: cb498366-d27a-4bd2-e72c-08d8f946bbd5 X-MS-Exchange-SLBlob-MailProps: S/btQ8cKWiRct5ooVDkA416xUUNF5iBFvZbGMhZ46rY5DSbafWWaIfjX30Tj4KeUeFB8IApmU67NfDpso7AgASerupkd1EgAY70gE1e1DI9CnwMv/F1QJ52j4btEQubxC4mphOTQdJaFSnP+cJJt8hhepFCuKXB0N2EpxlGfhzSVxuEzpyyhBshJ7yvZQNZDzmYBlop/NO8SGLkxaCkh/R3TwwsA7oWk4T03Hna/Qf65Ycbj2pVuZ0k7OsZm670Q5cNDbTtook63Rowbcn77s9MS8jJ1awC9ErggradVrtA6j0u2/FhKMVinIfi+wtNYSdHhl64VAVx5195EmG1VyzFKG6IgWaw0JbTMOoBgMzP/jh53FgLVg1nwns6jaP3u1C+uOqUrG+w4q2AIjPHmZJ/t2qiIeEklKeRbN/lz2uxSwRTWyCAuQAQB6wmrEKkOINT/Tv9ODD/ogQNkwTYeXJmNav3wVl9TjSrSoNDDWT0TG4L6uiXu8r2aMdDcYYyuqt5Wt83JsOBtUVjU5UCN8Bg5gD7MPbrTMMXwjADY6kLcRJ3ocUjvZGXsosbaGFarP7cuUTp1da77eG/YpRHknLjv8z/rWmFXhdLYGQs/57QYJVLMsmrWYvguZa8QRjRYLMDUGDE04b5gtD+/DWwYm0TrVnbp9wTbpfU4e090hzQC2+ePyyZuBmRknOsYQ+0RJNNQlw2kkcBJntGjB/ANSeYz3K7dJFMgUGigbq5kv5JPHojE1foHZ59t8gqVAtsD29vt2esRW4g= X-MS-TrafficTypeDiagnostic: AM5EUR02HT189: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: A4jWUTpEBkaYdn9Jrha7yd5MvrlepxJgsnysxl7qFfPgts2phAuHMQZgo1qrc38LzZY3/HHvfX6J4HLh3dYzJ5rIfyCoVDKI8o+XbwgXbKJ+mgv6qOs/YwikwSf98P9QDRz+RGUAC58bK2g2qq1CtRM8tHL6NAdYKXMFRxa4WeOIDAKm3ukLlXNMZEZzwJwDdHf6szeEG0l0U+Cft5mXHukaA1/f95strx92mTTeQyAjrMZK4UnEVnpYB5XhY2QqAz6ThfnGCjrLGrf/9lkon9KAG1SPPrTcfZcwzRAlLSDiAfu/GUXgaK5c3LzqlhWJosU1FyztwGgJ3MhNnHxEmzPVCADNJ7cwVEUx6WNMyKoqjLcWE/XY/YwdrAKtOaJSI1oBQKubN6vfPGVfHR094g== X-MS-Exchange-AntiSpam-MessageData: BJtn0ZiuOgp3+7+CsrJ2zG8ek4jgnrD1eZHDy3MXSvQF/Yq6tVXg6fyff+zUeGt9U0NPuGcEIKP8YGSeaEuhZzHb2bIzNeIjtdGaDIEj0IVlUYnTJFbZeS/BUTCV6f3N+PLZcK8xAv6eZJk5RJDfzw== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: cb498366-d27a-4bd2-e72c-08d8f946bbd5 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Apr 2021 21:55:46.9528 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: AM5EUR02FT037.eop-EUR02.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5EUR02HT189 Subject: [FFmpeg-devel] [PATCH 14/19] avcodec/mpegvideo_enc: Combine identical checks X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 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: Andreas Rheinhardt Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Signed-off-by: Andreas Rheinhardt --- libavcodec/mpegvideo_enc.c | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/libavcodec/mpegvideo_enc.c b/libavcodec/mpegvideo_enc.c index 0a1d0db86d..e5411f0393 100644 --- a/libavcodec/mpegvideo_enc.c +++ b/libavcodec/mpegvideo_enc.c @@ -527,10 +527,11 @@ FF_ENABLE_DEPRECATION_WARNINGS return AVERROR(EINVAL); } if ((s->codec_id == AV_CODEC_ID_H263 || - s->codec_id == AV_CODEC_ID_H263P) && + s->codec_id == AV_CODEC_ID_H263P || + s->codec_id == AV_CODEC_ID_RV20) && ((avctx->width &3) || (avctx->height&3) )) { - av_log(avctx, AV_LOG_ERROR, "w/h must be a multiple of 4\n"); + av_log(avctx, AV_LOG_ERROR, "width and height must be a multiple of 4\n"); return AVERROR(EINVAL); } @@ -541,13 +542,6 @@ FF_ENABLE_DEPRECATION_WARNINGS return AVERROR(EINVAL); } - if (s->codec_id == AV_CODEC_ID_RV20 && - (avctx->width &3 || - avctx->height&3 )) { - av_log(avctx, AV_LOG_ERROR, "width and height must be a multiple of 4\n"); - return AVERROR(EINVAL); - } - if ((s->codec_id == AV_CODEC_ID_WMV1 || s->codec_id == AV_CODEC_ID_WMV2) && avctx->width & 1) { From patchwork Tue Apr 6 21:55:12 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 26783 Return-Path: X-Original-To: patchwork@ffaux-bg.ffmpeg.org Delivered-To: patchwork@ffaux-bg.ffmpeg.org Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by ffaux.localdomain (Postfix) with ESMTP id A5F8C44AF20 for ; Wed, 7 Apr 2021 00:55:57 +0300 (EEST) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 895C768A78A; Wed, 7 Apr 2021 00:55:57 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR02-HE1-obe.outbound.protection.outlook.com (mail-oln040092068083.outbound.protection.outlook.com [40.92.68.83]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id C8D2368A497 for ; Wed, 7 Apr 2021 00:55:49 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=TvrGlLZnE2r9nuLAGTCBwgVPBOFnoqHPu0zIGZ6KYqQU84UdjKx8+AFC6ux2Qbf/WPBAAgdBGQekQ4VKu5kAJgb9MFyMVyVqFa8hEgy5jnTZZjmPxhCvbUxLIy6gC4poEvBXF2qNTflb8Dq95qK21vbDW/AKgTk0FCGibvzkYeNtzFbVD3FMRn1Bo5JCBbFyrXgOiW9kUoDIw2LqZaDhDR2Lb8JnjmkqlUt3LYWAmIXVU6qaG08rIGkMBx4lPSdduz3Ogm0e1r6PPMuR1pIuFlSLPzb44U8i7NvMKHdkmTMp+fyRIZ5XNq4iJE0omhtZ0HFHrwW/CJCrLc0YZb4jmQ== 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-SenderADCheck; bh=2zi0DLiZTfthqo1CC28cTbN2ULV8Yky297uciHly4pc=; b=i0GnHWusysoKXw5lKryvViqE6YL3qr3IfF+xDFqy0gGHBNlhVGC80T/gkLzs76jDYPYKh2IM9VOhFYk4VOvxREw+vfR9gFbi0v+K6Rr6W8ii7Nezb8OrobWPYCQS6DtGFIaICrTcNW/EXoZbGq/2uWrbhO/RjkhlB897xdA4NNcH6dImykRiBOFoobTjbugK0jsRP9V+EDFOchgrWC1xbdU4AwPy6xsZH2VrIbER+Z2UoM/yCVS5tIOUwkME6Iy+tuMh4CdzLOCPIEUhoXI2ZIZej5n/a77uyOmVMhVwiV5yiOU7FHA1wHP95QqhW5S+PM2TW8yL8e1Zu28VrjkGTw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=2zi0DLiZTfthqo1CC28cTbN2ULV8Yky297uciHly4pc=; b=gWjOxeL2wu4Bu+3pWc4tpJZy7qpsCiJzRtDZ7yFL+fKYj36VZcxTcZ96cxc1nHPFdI4YPKmvOhXDDS8BK3C9NO6ejx1OizAcZOOilokXUqklm5N3frdzfsIbL+azqTXbY5HdLMJHaqmTs0bbu9WYMx+hVwkrsH/QdTUR82trrNzzSR4CnO4ufDgKGLIpcT7gVWC/bw/IkhWK0+e9rVa6P/bEcoX1CdPGTcbWuMIHCPB8btGqLb+kDtLkexUOUoSj/edGUDFoclbwqBNm2bxqI0HCmbG+W/2nbUafpLodWFb5IGDHQYHvW81Ft+TCUCmgNCRAl73UdszF/2wCMLvz7A== Received: from AM5EUR02FT037.eop-EUR02.prod.protection.outlook.com (2a01:111:e400:7e1c::4d) by AM5EUR02HT060.eop-EUR02.prod.protection.outlook.com (2a01:111:e400:7e1c::298) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28; Tue, 6 Apr 2021 21:55:48 +0000 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com (2a01:111:e400:7e1c::46) by AM5EUR02FT037.mail.protection.outlook.com (2a01:111:e400:7e1c::182) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28 via Frontend Transport; Tue, 6 Apr 2021 21:55:48 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:0DE481178A8AEA67E4EDB2DB182D3023EBE066AB759439B8DE132A74A0F80132; UpperCasedChecksum:21B5040B4200653981CDD51713CEA739272706986D99A01171BF905EA9B0B067; SizeAsReceived:7605; Count:48 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::8128:5de5:4e94:9a21]) by HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::8128:5de5:4e94:9a21%3]) with mapi id 15.20.3999.032; Tue, 6 Apr 2021 21:55:48 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Tue, 6 Apr 2021 23:55:12 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [LZKBnUuwGUvgYFUU5Ozn00dCQ0VwgLTm] X-ClientProxiedBy: ZR0P278CA0046.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:1d::15) To HE1PR0301MB2154.eurprd03.prod.outlook.com (2603:10a6:3:2a::22) X-Microsoft-Original-Message-ID: <20210406215516.832944-6-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.137.96) by ZR0P278CA0046.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:1d::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.16 via Frontend Transport; Tue, 6 Apr 2021 21:55:48 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: ac2bc4ea-ab80-4031-aea3-08d8f946bcc3 X-MS-Exchange-SLBlob-MailProps: S/btQ8cKWiRct5ooVDkA416xUUNF5iBFoB937Rv4FCrvhtrFP68FkdbyfpRNoHt/TFaKZquYFfOViLc5ylkiPED2ICIp3htG8om5i2WOsw7ClNvqukK0T1YxhVan80J3Vqf/CeEtDCMFFcPsov1RuledzaJmGTllm41zGmKXkqT5xK9XICQMWZogDgFWIa/gsA27UC9Ak0nPLdKIZKys2zkd9v1zukH6v+we5K+WyVc5pQGHYiVzEeH6HBQz9YdN3rS7jmki9xQRItuwcRCQeWvg5CzYhp4I52Pd1HQt8CdRo0CJiHx/LJyCHe6FftvAyP9BMN3SJZ21vFMtZVM11vz2mkRj7EB2zINbmwDej9L/PrFzdCBZBE7QT6WVMEUiA7nFbFsDfQrD1P4ll57OgcMT45rv7KKApXSwLOVJqgQkgSFD2hYddsC4erGmmTRNxbYuI5Ew66ITrFn3pyNsQx7OftZMBzFoq/xr+jYuuGveFUMsoB26PG+HRC/kwsy32CekGbpkX6+lZYVwTLIrXhqk3umdG27GfFysGxnv/Zvfyvvk/X10gc1AiPpZxzc/7dNUSHqq4ontiV1pNsVX3yIyJn/QIu1HGmeitzr1WhYVG69qjkSkqPrR0hV49UY+hvRt2mQUMZ2uftE6NLjKcSxH3PFh2yqB5UzpSvzZebY3A+y+B0Acd9VQ40FB7EWeEk5qydG+1Rvgq217uAIkpGf11daeNTYGBMdUlxNKqhz1yGTqfr5l54bGndhEL+btzFtcryNIP40= X-MS-TrafficTypeDiagnostic: AM5EUR02HT060: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: KbIyuXdgxur3hRpGtNwtWpaNaOpXONl2h0rLbqsTORHhw//vMHI3mWc8vtMHk3OjvuSiTlrFa9vjLWNcF9QMO24/oDhnYbY/KonbxbOyGkvlTESzAuZHHTiekqT54AXXCWmSgJN1jwHZ1MKQceR5w5Tfkkv9EQqzgC/xdZwTG9J/YIvddJS/O5jUveXwrKz6Q8FqBQRWNV2km9oZRVd0lInk46q+6DgqTtFiMeQioZjapzJTPnbHoOtDQmbLH5ehQVKoIbrVcSB5x/fYIi5y7RWo8BDFe7m8M/w/hbubd2s97mk1BEEUyzwt7zBRcGktU974GCuRaR0NsZqOuKB6aquKyF1v/WRGxZUl3kXjpnFswOgJB6Mu5vdram5vVwMveHYeKVVXpBxrVOY7dkGjWA== X-MS-Exchange-AntiSpam-MessageData: B0Z0trX1OD+BGGDhzTlJxYphVkVspvXtKFio/Y/CYvbVmJmOSD+ZdAmfNZ5MVuGSzRbxbeEBi4K6bk4NQXFY3ulwQez9uJ2HBcisqxk3izh0IuE04i8xzG48jQHHI5Zu/ql/1pe7mRK91tHulm5ICA== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: ac2bc4ea-ab80-4031-aea3-08d8f946bcc3 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Apr 2021 21:55:48.4822 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: AM5EUR02FT037.eop-EUR02.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5EUR02HT060 Subject: [FFmpeg-devel] [PATCH 15/19] avcodec/mpegvideo: Deprecate mpeg_quant option for codecs != MPEG-4 X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 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: Andreas Rheinhardt Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" mpeg_quant may only be set for MPEG-4 and MPEG-2, yet for the latter it is no option as the code acts as if it were always set. So deprecate the option for all codecs for which it makes no sense. Furthermore, given that the code already errors out if the option is set for a codec that doesn't support it we can restrict the range of the option for all these codecs without breaking something. This means that the checks for whether mpeg_quant is set for these codecs can be removed as soon as AVCodecContext.mpeg_quant is removed. Signed-off-by: Andreas Rheinhardt --- If one sets mpeg_quant to 1 for MPEG-2 and to -1 for MPEG-1 one can simplify some checks in mpegvideo_enc. Will send a patch for this later. libavcodec/mjpegenc.c | 3 +++ libavcodec/mpeg12enc.c | 7 +++++++ libavcodec/mpeg4videoenc.c | 2 ++ libavcodec/mpegvideo.h | 6 +++++- libavcodec/mpegvideo_enc.c | 12 ++++++++++-- libavcodec/version.h | 5 ++++- 6 files changed, 31 insertions(+), 4 deletions(-) diff --git a/libavcodec/mjpegenc.c b/libavcodec/mjpegenc.c index 3cff50abdb..6c261a1397 100644 --- a/libavcodec/mjpegenc.c +++ b/libavcodec/mjpegenc.c @@ -593,6 +593,9 @@ FF_MPV_COMMON_OPTS { "huffman", "Huffman table strategy", OFFSET(huffman), AV_OPT_TYPE_INT, { .i64 = HUFFMAN_TABLE_OPTIMAL }, 0, NB_HUFFMAN_TABLE_OPTION - 1, VE, "huffman" }, { "default", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = HUFFMAN_TABLE_DEFAULT }, INT_MIN, INT_MAX, VE, "huffman" }, { "optimal", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = HUFFMAN_TABLE_OPTIMAL }, INT_MIN, INT_MAX, VE, "huffman" }, +#if FF_API_MPEGVIDEO_OPTS +FF_MPV_DEPRECATED_MPEG_QUANT_OPT +#endif { NULL}, }; diff --git a/libavcodec/mpeg12enc.c b/libavcodec/mpeg12enc.c index 8dcc04d341..99c79a4232 100644 --- a/libavcodec/mpeg12enc.c +++ b/libavcodec/mpeg12enc.c @@ -1152,6 +1152,9 @@ av_cold void ff_mpeg1_encode_init(MpegEncContext *s) static const AVOption mpeg1_options[] = { COMMON_OPTS FF_MPV_COMMON_OPTS +#if FF_API_MPEGVIDEO_OPTS + FF_MPV_DEPRECATED_MPEG_QUANT_OPT +#endif { NULL }, }; @@ -1179,6 +1182,10 @@ static const AVOption mpeg2_options[] = { { LEVEL("low", 10) }, #undef LEVEL FF_MPV_COMMON_OPTS +#if FF_API_MPEGVIDEO_OPTS + { "mpeg_quant", "Deprecated, does nothing", OFFSET(mpeg_quant), + AV_OPT_TYPE_INT, {.i64 = 1 }, 0, 1, VE | AV_OPT_FLAG_DEPRECATED }, +#endif FF_MPEG2_PROFILE_OPTS { NULL }, }; diff --git a/libavcodec/mpeg4videoenc.c b/libavcodec/mpeg4videoenc.c index 2bf65305ad..e2792e1161 100644 --- a/libavcodec/mpeg4videoenc.c +++ b/libavcodec/mpeg4videoenc.c @@ -1375,6 +1375,8 @@ void ff_mpeg4_encode_video_packet_header(MpegEncContext *s) static const AVOption options[] = { { "data_partitioning", "Use data partitioning.", OFFSET(data_partitioning), AV_OPT_TYPE_BOOL, { .i64 = 0 }, 0, 1, VE }, { "alternate_scan", "Enable alternate scantable.", OFFSET(alternate_scan), AV_OPT_TYPE_BOOL, { .i64 = 0 }, 0, 1, VE }, + { "mpeg_quant", "Use MPEG quantizers instead of H.263", + OFFSET(mpeg_quant), AV_OPT_TYPE_INT, {.i64 = 0 }, 0, 1, VE }, FF_MPV_COMMON_OPTS FF_MPEG4_PROFILE_OPTS { NULL }, diff --git a/libavcodec/mpegvideo.h b/libavcodec/mpegvideo.h index 5a99c19656..e83b4ab211 100644 --- a/libavcodec/mpegvideo.h +++ b/libavcodec/mpegvideo.h @@ -672,7 +672,6 @@ FF_MPV_OPT_CMP_FUNC, \ {"skip_cmp", "Frame skip compare function", FF_MPV_OFFSET(frame_skip_cmp), AV_OPT_TYPE_INT, {.i64 = FF_CMP_DCTMAX }, INT_MIN, INT_MAX, FF_MPV_OPT_FLAGS, "cmp_func" }, \ {"sc_threshold", "Scene change threshold", FF_MPV_OFFSET(scenechange_threshold), AV_OPT_TYPE_INT, {.i64 = 0 }, INT_MIN, INT_MAX, FF_MPV_OPT_FLAGS }, \ {"noise_reduction", "Noise reduction", FF_MPV_OFFSET(noise_reduction), AV_OPT_TYPE_INT, {.i64 = 0 }, INT_MIN, INT_MAX, FF_MPV_OPT_FLAGS }, \ -{"mpeg_quant", "Use MPEG quantizers instead of H.263", FF_MPV_OFFSET(mpeg_quant), AV_OPT_TYPE_INT, {.i64 = 0 }, 0, 1, FF_MPV_OPT_FLAGS }, \ {"ps", "RTP payload size in bytes", FF_MPV_OFFSET(rtp_payload_size), AV_OPT_TYPE_INT, {.i64 = 0 }, INT_MIN, INT_MAX, FF_MPV_OPT_FLAGS }, \ {"mepc", "Motion estimation bitrate penalty compensation (1.0 = 256)", FF_MPV_OFFSET(me_penalty_compensation), AV_OPT_TYPE_INT, {.i64 = 256 }, INT_MIN, INT_MAX, FF_MPV_OPT_FLAGS }, \ {"mepre", "pre motion estimation", FF_MPV_OFFSET(me_pre), AV_OPT_TYPE_INT, {.i64 = 0 }, INT_MIN, INT_MAX, FF_MPV_OPT_FLAGS }, \ @@ -680,6 +679,11 @@ FF_MPV_OPT_CMP_FUNC, \ {"a53cc", "Use A53 Closed Captions (if available)", FF_MPV_OFFSET(a53_cc), AV_OPT_TYPE_BOOL, {.i64 = 1}, 0, 1, FF_MPV_OPT_FLAGS }, \ FF_MPV_RC_STRATEGY_OPTS +#if FF_API_MPEGVIDEO_OPTS +#define FF_MPV_DEPRECATED_MPEG_QUANT_OPT \ + { "mpeg_quant", "Deprecated, does nothing", FF_MPV_OFFSET(mpeg_quant), AV_OPT_TYPE_INT, {.i64 = 0 }, 0, 0, FF_MPV_OPT_FLAGS | AV_OPT_FLAG_DEPRECATED }, +#endif + extern const AVOption ff_mpv_generic_options[]; /** diff --git a/libavcodec/mpegvideo_enc.c b/libavcodec/mpegvideo_enc.c index e5411f0393..19a7e57a29 100644 --- a/libavcodec/mpegvideo_enc.c +++ b/libavcodec/mpegvideo_enc.c @@ -86,6 +86,9 @@ static uint8_t default_fcode_tab[MAX_MV * 2 + 1]; const AVOption ff_mpv_generic_options[] = { FF_MPV_COMMON_OPTS +#if FF_API_MPEGVIDEO_OPTS + FF_MPV_DEPRECATED_MPEG_QUANT_OPT +#endif { NULL }, }; @@ -560,15 +563,14 @@ FF_ENABLE_DEPRECATION_WARNINGS if (avctx->mpeg_quant) s->mpeg_quant = 1; FF_ENABLE_DEPRECATION_WARNINGS -#endif - // FIXME mpeg2 uses that too if (s->mpeg_quant && ( s->codec_id != AV_CODEC_ID_MPEG4 && s->codec_id != AV_CODEC_ID_MPEG2VIDEO)) { av_log(avctx, AV_LOG_ERROR, "mpeg2 style quantization not supported by codec\n"); return AVERROR(EINVAL); } +#endif if ((s->mpv_flags & FF_MPV_FLAG_CBP_RD) && !avctx->trellis) { av_log(avctx, AV_LOG_ERROR, "CBP RD needs trellis quant\n"); @@ -4708,6 +4710,9 @@ static const AVOption h263_options[] = { { "obmc", "use overlapped block motion compensation.", OFFSET(obmc), AV_OPT_TYPE_BOOL, { .i64 = 0 }, 0, 1, VE }, { "mb_info", "emit macroblock info for RFC 2190 packetization, the parameter value is the maximum payload size", OFFSET(mb_info), AV_OPT_TYPE_INT, { .i64 = 0 }, 0, INT_MAX, VE }, FF_MPV_COMMON_OPTS +#if FF_API_MPEGVIDEO_OPTS + FF_MPV_DEPRECATED_MPEG_QUANT_OPT +#endif { NULL }, }; @@ -4738,6 +4743,9 @@ static const AVOption h263p_options[] = { { "obmc", "use overlapped block motion compensation.", OFFSET(obmc), AV_OPT_TYPE_BOOL, { .i64 = 0 }, 0, 1, VE }, { "structured_slices", "Write slice start position at every GOB header instead of just GOB number.", OFFSET(h263_slice_structured), AV_OPT_TYPE_BOOL, { .i64 = 0 }, 0, 1, VE}, FF_MPV_COMMON_OPTS +#if FF_API_MPEGVIDEO_OPTS + FF_MPV_DEPRECATED_MPEG_QUANT_OPT +#endif { NULL }, }; static const AVClass h263p_class = { diff --git a/libavcodec/version.h b/libavcodec/version.h index 1444c19552..7cf51150b3 100644 --- a/libavcodec/version.h +++ b/libavcodec/version.h @@ -28,7 +28,7 @@ #include "libavutil/version.h" #define LIBAVCODEC_VERSION_MAJOR 58 -#define LIBAVCODEC_VERSION_MINOR 135 +#define LIBAVCODEC_VERSION_MINOR 136 #define LIBAVCODEC_VERSION_MICRO 100 #define LIBAVCODEC_VERSION_INT AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \ @@ -168,5 +168,8 @@ #ifndef FF_API_INIT_PACKET #define FF_API_INIT_PACKET (LIBAVCODEC_VERSION_MAJOR < 60) #endif +#ifndef FF_API_MPEGVIDEO_OPTS +#define FF_API_MPEGVIDEO_OPTS (LIBAVCODEC_VERSION_MAJOR < 60) +#endif #endif /* AVCODEC_VERSION_H */ From patchwork Tue Apr 6 21:55:13 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 26785 Return-Path: X-Original-To: patchwork@ffaux-bg.ffmpeg.org Delivered-To: patchwork@ffaux-bg.ffmpeg.org Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by ffaux.localdomain (Postfix) with ESMTP id B564844AF20 for ; Wed, 7 Apr 2021 00:55:59 +0300 (EEST) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id A1C7368A7DE; Wed, 7 Apr 2021 00:55:59 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR02-HE1-obe.outbound.protection.outlook.com (mail-oln040092068068.outbound.protection.outlook.com [40.92.68.68]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 5A1EB68A6EE for ; Wed, 7 Apr 2021 00:55:51 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=cE8nWlsUGa3KnArD7v3m5Krse1AH4PeaxMFs1MHhrpnZZENEZs4IM6nqcp4S8esMwPcOH6onQvBwK0QJJI4hbpbOdLfpoRwLYiLNgFr6zrT7sLZRMlcfY6Ba626/jsQ/8YojgqihzrkahTmkHvp+Ade8MwuP0ugfdKXQT3qGWiz6zcWVSf+H3GnD8OKhGbYJGJFOMGxowubaH9rxraHTwZN3nlgDHl0XUBB8/B0h4z9HGp4CKRXcnUrv7DXOvNOohntyUAWJx//qmpzc9RMaOyrYOld4STQ4iIMAAgfIlRgX9HYuoLWc3EQrtJuH9u77jG3bppOIQwF08kGGz05/ww== 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-SenderADCheck; bh=ohEQL2j8VC5WGFj/rLEkwWtj7v6xNicUCVDrkIEiVQE=; b=SrJ1LZf9etz26RNx92lAW+IFmURt0w6l1aZYyXqrxvkSQ8m40p7Kb2pHMBPqlVqsxo7LjdfoptkypwDZV+tzTZ7YzjmB5Orz9heok8lkjL36FGuYxWMPUg81QdZzMGGbj9pSaly9hfMkRQ9Jgl/uIF1QJ2oG/urSf7piw/dEUZ8mgbEbMUPSYx6B8WgXRD17IBU2gNwihgz8Et2Zo+/+3nyw0fPWSbSsM+DIqwKExaQomVkzSFivKPuihbPr5zD8zMUD6GIBKrfLwVllOAZ2MztWj69TceaAZxBNyAJ3yBjOvPXXp1/I0upEALj6oX9yspH2YCczsmke40zO++KwnQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ohEQL2j8VC5WGFj/rLEkwWtj7v6xNicUCVDrkIEiVQE=; b=caTrKhhnr4RSEQ3LL/EpR66KA2XUAdcXXksEcJ76ps9Nb01Z+dEYEZ1Rs/d90R/2fZH7oo3geJ3xSnNTtWdznynTdLh/K2iD5RmnBQihHCb9e8Qy4bGrWPN1y4p0Q6T4RaJr27zyfB231HNwGa1rAvV6SBnIuA0gO4GtCnkHG2jFgEIT2mojn8cCv61UlvhdXTMVdh/mZjUvqshrEjWH5IDgi6vb0aiEUuEODuWNXUsD3ncrB9UeVY5qxOFsa1/Z+As6fW+4ZYkQtM3Uhw9jV/zN012nwQd9AFpFoGJZbS3MGFRI7EC07VBE5WfEg49vXP1Ioj/DnPIAFyOEa/4UKQ== Received: from AM5EUR02FT037.eop-EUR02.prod.protection.outlook.com (2a01:111:e400:7e1c::48) by AM5EUR02HT011.eop-EUR02.prod.protection.outlook.com (2a01:111:e400:7e1c::79) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28; Tue, 6 Apr 2021 21:55:50 +0000 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com (2a01:111:e400:7e1c::46) by AM5EUR02FT037.mail.protection.outlook.com (2a01:111:e400:7e1c::182) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28 via Frontend Transport; Tue, 6 Apr 2021 21:55:50 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:0A9223D0EBF5D4E069BD59488558B4089E5A2F3C8366EC6486F1C905C5CFD6FF; UpperCasedChecksum:AE0C088A406FA59F6A0D33F6E59C396DBBE918E92D07E8FD0F8D86D2FB9BC88E; SizeAsReceived:7601; Count:48 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::8128:5de5:4e94:9a21]) by HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::8128:5de5:4e94:9a21%3]) with mapi id 15.20.3999.032; Tue, 6 Apr 2021 21:55:50 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Tue, 6 Apr 2021 23:55:13 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [4dV8Lm5MLjz6hQ33MUHLaM2wzFu+IzZi] X-ClientProxiedBy: ZR0P278CA0046.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:1d::15) To HE1PR0301MB2154.eurprd03.prod.outlook.com (2603:10a6:3:2a::22) X-Microsoft-Original-Message-ID: <20210406215516.832944-7-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.137.96) by ZR0P278CA0046.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:1d::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.16 via Frontend Transport; Tue, 6 Apr 2021 21:55:49 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: a71ce7c2-ec70-4749-ae21-08d8f946bdbb X-MS-Exchange-SLBlob-MailProps: S/btQ8cKWiRct5ooVDkA416xUUNF5iBF0DWG24et7AwhBWAYAEWl6RmWTzFZCdZQIJU2lj3iGJyu7cCZjRy6JY2Z9ezIms3RakcTvUR/FsVEePF8UcrQGsegFGrbTRqz4qKcxXbjAfYvYb+CBRsdb/z9rtFi1uKAfWDrH/ae0vvt9qVaA94v2Hjd5JJm7K3qdVvtY1B+8wjT63NtDz5LXxUkldi09nLOSjAdd85C+YddC60BLHV8U0DeC9mwvoxm46h+31p7deiXUpKM2sRy05JHXXJf47c//wkhh08N51p1wbcQQ1Y/J2cirjZddafV/mtPCOnu0CdZKcuAR6VHTYNWoFep9iFDvT8tHFCs1y8xiRTBRri2VW97cInZwfnkaU9qcESyb8ZZ9w8KCQj+IIIc8MTESC4toJS97k+Unz9hPxUZRs0uKJLB0qyCnX/QNMOcLd13PRtSPmECRuTpNleGL0imJaNGAaf5ztIoV4CYahYKAlOihJ8MbAXMw4K0wV7ZnPIX1BpHxuE/0OQzefRMLgisB9jPk7PF3iaqdDyKe+4u66afNKn5VIaY+95VbW4I0kaapRL/gMaYl7vk7ipeLKXQZV2+idItlYBfRn2GmeLfJccBF0qdEK/HYx6b9G+Il+jcabAfXuhDVRd7x0ACGBK9LbQ4jgXu1ZIifZVh0FZbPhIsLJQ6IEJW6fPHoWG5W82vpc16MP9J07iMsTQuiJDugTrVSkaVcvePwvV6OokTyohNSdQ4CLDTe1aVOsfXzs6g4ro= X-MS-TrafficTypeDiagnostic: AM5EUR02HT011: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 1M9goaNel1MXHi3VdBY2qwJ04YmV8fRrvxN86wxX6T9+YAtASwarSPLxOKaWuFn6PSpovoNhgOmWvMiNc9fpvR+mA1eSN8gwzMj81NRV6z3OncC1djzZmy82cDFh/4C4atTuM1Ogp522PvlDDgo8LA5NhKx3HWlGaspQlcNar3n6iD/lERNEzZGLHS7zmNWtXlpfJ6yE9MREAy7WzbBlaNkYRWUb4c9jHYmAFQzyi/DeXL6xgXXqxbhswjYcU8f1nkr3O3R8FY1Rhq6wgQFN9ZVHePS8Qx8adVFJLsI63k/jp03CXluBPnK7cAll+k8ZphUnc0aHcZVcl7UpUoyPsSexHXzLYPvmMnTnf5lN5dwxVXsR91FOjFQ49121ZYVYtjZ/bJJN0TDR5///nV8Nng== X-MS-Exchange-AntiSpam-MessageData: gPCXg0r7lSMdAcf84/ZEsf7akAJak06bc/LjKFrPmEJ+Nd6WQSBmKqGCo+CGIFfbkrs6kEKycwyhL1CACusorLNCf78WbvlcYfGFe3DsEGRQrfdm2kGXhsDuMK8I6cwbWybI5D6zo/6Nkb/g3d7tDw== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: a71ce7c2-ec70-4749-ae21-08d8f946bdbb X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Apr 2021 21:55:50.1114 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: AM5EUR02FT037.eop-EUR02.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5EUR02HT011 Subject: [FFmpeg-devel] [PATCH 16/19] avcodec/mpegvideo: Deprecate a53cc option for encoders != MPEG-2 X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 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: Andreas Rheinhardt Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" The MPEG-2 encoder is the only mpegvideo-based encoder that supports embedding a53 side data. Signed-off-by: Andreas Rheinhardt --- I am surprised that no one seems to have noticed this when this option has been added. libavcodec/mjpegenc.c | 1 + libavcodec/mpeg12enc.c | 2 ++ libavcodec/mpeg4videoenc.c | 3 +++ libavcodec/mpegvideo.h | 3 ++- libavcodec/mpegvideo_enc.c | 3 +++ 5 files changed, 11 insertions(+), 1 deletion(-) diff --git a/libavcodec/mjpegenc.c b/libavcodec/mjpegenc.c index 6c261a1397..86a18ec6a9 100644 --- a/libavcodec/mjpegenc.c +++ b/libavcodec/mjpegenc.c @@ -595,6 +595,7 @@ FF_MPV_COMMON_OPTS { "optimal", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = HUFFMAN_TABLE_OPTIMAL }, INT_MIN, INT_MAX, VE, "huffman" }, #if FF_API_MPEGVIDEO_OPTS FF_MPV_DEPRECATED_MPEG_QUANT_OPT +FF_MPV_DEPRECATED_A53_CC_OPT #endif { NULL}, }; diff --git a/libavcodec/mpeg12enc.c b/libavcodec/mpeg12enc.c index 99c79a4232..5b8ccf3ce1 100644 --- a/libavcodec/mpeg12enc.c +++ b/libavcodec/mpeg12enc.c @@ -1154,6 +1154,7 @@ static const AVOption mpeg1_options[] = { FF_MPV_COMMON_OPTS #if FF_API_MPEGVIDEO_OPTS FF_MPV_DEPRECATED_MPEG_QUANT_OPT + FF_MPV_DEPRECATED_A53_CC_OPT #endif { NULL }, }; @@ -1164,6 +1165,7 @@ static const AVOption mpeg2_options[] = { OFFSET(intra_vlc_format), AV_OPT_TYPE_BOOL, { .i64 = 0 }, 0, 1, VE }, { "non_linear_quant", "Use nonlinear quantizer.", OFFSET(q_scale_type), AV_OPT_TYPE_BOOL, { .i64 = 0 }, 0, 1, VE }, { "alternate_scan", "Enable alternate scantable.", OFFSET(alternate_scan), AV_OPT_TYPE_BOOL, { .i64 = 0 }, 0, 1, VE }, + { "a53cc", "Use A53 Closed Captions (if available)", OFFSET(a53_cc), AV_OPT_TYPE_BOOL, { .i64 = 1 }, 0, 1, VE }, { "seq_disp_ext", "Write sequence_display_extension blocks.", OFFSET(seq_disp_ext), AV_OPT_TYPE_INT, { .i64 = -1 }, -1, 1, VE, "seq_disp_ext" }, { "auto", NULL, 0, AV_OPT_TYPE_CONST, {.i64 = -1}, 0, 0, VE, "seq_disp_ext" }, { "never", NULL, 0, AV_OPT_TYPE_CONST, {.i64 = 0 }, 0, 0, VE, "seq_disp_ext" }, diff --git a/libavcodec/mpeg4videoenc.c b/libavcodec/mpeg4videoenc.c index e2792e1161..384710cf60 100644 --- a/libavcodec/mpeg4videoenc.c +++ b/libavcodec/mpeg4videoenc.c @@ -1378,6 +1378,9 @@ static const AVOption options[] = { { "mpeg_quant", "Use MPEG quantizers instead of H.263", OFFSET(mpeg_quant), AV_OPT_TYPE_INT, {.i64 = 0 }, 0, 1, VE }, FF_MPV_COMMON_OPTS +#if FF_API_MPEGVIDEO_OPTS + FF_MPV_DEPRECATED_A53_CC_OPT +#endif FF_MPEG4_PROFILE_OPTS { NULL }, }; diff --git a/libavcodec/mpegvideo.h b/libavcodec/mpegvideo.h index e83b4ab211..508ae0dfb9 100644 --- a/libavcodec/mpegvideo.h +++ b/libavcodec/mpegvideo.h @@ -676,12 +676,13 @@ FF_MPV_OPT_CMP_FUNC, \ {"mepc", "Motion estimation bitrate penalty compensation (1.0 = 256)", FF_MPV_OFFSET(me_penalty_compensation), AV_OPT_TYPE_INT, {.i64 = 256 }, INT_MIN, INT_MAX, FF_MPV_OPT_FLAGS }, \ {"mepre", "pre motion estimation", FF_MPV_OFFSET(me_pre), AV_OPT_TYPE_INT, {.i64 = 0 }, INT_MIN, INT_MAX, FF_MPV_OPT_FLAGS }, \ {"intra_penalty", "Penalty for intra blocks in block decision", FF_MPV_OFFSET(intra_penalty), AV_OPT_TYPE_INT, {.i64 = 0 }, 0, INT_MAX/2, FF_MPV_OPT_FLAGS }, \ -{"a53cc", "Use A53 Closed Captions (if available)", FF_MPV_OFFSET(a53_cc), AV_OPT_TYPE_BOOL, {.i64 = 1}, 0, 1, FF_MPV_OPT_FLAGS }, \ FF_MPV_RC_STRATEGY_OPTS #if FF_API_MPEGVIDEO_OPTS #define FF_MPV_DEPRECATED_MPEG_QUANT_OPT \ { "mpeg_quant", "Deprecated, does nothing", FF_MPV_OFFSET(mpeg_quant), AV_OPT_TYPE_INT, {.i64 = 0 }, 0, 0, FF_MPV_OPT_FLAGS | AV_OPT_FLAG_DEPRECATED }, +#define FF_MPV_DEPRECATED_A53_CC_OPT \ + { "a53cc", "Deprecated, does nothing", FF_MPV_OFFSET(a53_cc), AV_OPT_TYPE_BOOL, { .i64 = 1 }, 0, 1, FF_MPV_OPT_FLAGS | AV_OPT_FLAG_DEPRECATED }, #endif extern const AVOption ff_mpv_generic_options[]; diff --git a/libavcodec/mpegvideo_enc.c b/libavcodec/mpegvideo_enc.c index 19a7e57a29..03fcfa83dd 100644 --- a/libavcodec/mpegvideo_enc.c +++ b/libavcodec/mpegvideo_enc.c @@ -88,6 +88,7 @@ const AVOption ff_mpv_generic_options[] = { FF_MPV_COMMON_OPTS #if FF_API_MPEGVIDEO_OPTS FF_MPV_DEPRECATED_MPEG_QUANT_OPT + FF_MPV_DEPRECATED_A53_CC_OPT #endif { NULL }, }; @@ -4712,6 +4713,7 @@ static const AVOption h263_options[] = { FF_MPV_COMMON_OPTS #if FF_API_MPEGVIDEO_OPTS FF_MPV_DEPRECATED_MPEG_QUANT_OPT + FF_MPV_DEPRECATED_A53_CC_OPT #endif { NULL }, }; @@ -4745,6 +4747,7 @@ static const AVOption h263p_options[] = { FF_MPV_COMMON_OPTS #if FF_API_MPEGVIDEO_OPTS FF_MPV_DEPRECATED_MPEG_QUANT_OPT + FF_MPV_DEPRECATED_A53_CC_OPT #endif { NULL }, }; From patchwork Tue Apr 6 21:55:14 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 26787 Return-Path: X-Original-To: patchwork@ffaux-bg.ffmpeg.org Delivered-To: patchwork@ffaux-bg.ffmpeg.org Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by ffaux.localdomain (Postfix) with ESMTP id 7821C44AF20 for ; Wed, 7 Apr 2021 00:56:01 +0300 (EEST) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 5B87368A853; Wed, 7 Apr 2021 00:56:01 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR02-AM5-obe.outbound.protection.outlook.com (mail-oln040092067092.outbound.protection.outlook.com [40.92.67.92]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 913E468A7B6 for ; Wed, 7 Apr 2021 00:55:52 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=QZMZngLfiEL36Ptae2jFPNhcyy/Pv/1G36IEfwatpvQLytoLb953W4DvZOk/ap5pnWfipp/znne6EanCumDT/+g5ZGERBT2+OIowmWU7Fg8r8pcPENoZY9JUwmMTEk9sDC23Y4f0nLvh/4FrQxtswR00znlGCdcP3aZ9inXjQPFNJHILOWFA1zyge7Mvsp7eex/0RPQPFb48ywDm0feWEr9F3CNiRCUXZ3PCqhaNNNYkNdsXbDhSVmsawbS37cUBQwtuNV9njYZ6auHkjgL9Olz/i/FpcNmHkoYtG1uyNM8rBFGWj728Yk8uDex4BVAMoFaKM8inaUFoSOe698Rx4A== 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-SenderADCheck; bh=aTO4Ru8lOXy+qf2nDFIGXtFJw9LzGgYhw+DAco7N+9c=; b=P2GqCAAvCy82Yb9WNmvMsrJztQYfDm7VBqE4zSJMskq40SOQ8WrD2VLkqMYdwSq/YfOEsL6uXNrmo73/3m/GUgR4szoSO7AUlvj79EtWcgcxblLuvRqumhuwejsFUaMgSq1016vRxFC5x7YiCJsPJwUcxUFqaypeBuyE0eB70motVDnx2YXQm7ZFziaABeawuvNZIGHj55hH5GWYjv/2BDRarqKk3AgM/PJCFbCiDJBKVDclVsZehbIxRgWQBfISRHYfS71pEbzn60s7Jh91lj9Uoiu+sAKf5nqCkO4U3LeRAFwS/881e5VgyX9FOM2ODtYbvzkO8R/m7VX+Y2QJXQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=aTO4Ru8lOXy+qf2nDFIGXtFJw9LzGgYhw+DAco7N+9c=; b=g803+XJrDsPszVgNt7v++cYEtLy/2mkFexuoVrIewlgPlJuhv+3HhHK8DVgvOoxJMZ9c9wR9Hbi3MVD+qQGDMU5IHRKJ8gztcO/YQw6e3+XH0u604T7jS8e6txYGmJYdSdsg8/39iCQgzoXb0vlgLr+MISwH4xYxRW/Za9A2D2NDW4vXkQA0Z8s62UqMkeuojWaWcMfmhkWfWWFs1IIR6WaMS6bstSpPLsgJtEgJeKmU1CKn8oel/Sq+0EcWmzLov0DJZKYdv6PHLL+63RYseFXxWuPTWy5joyTVvy8l6JiDBlI4ioiA2KvhZ23uwQIGkp9nklC0z48PkuGZdGvbHQ== Received: from AM5EUR02FT037.eop-EUR02.prod.protection.outlook.com (2a01:111:e400:7e1c::47) by AM5EUR02HT216.eop-EUR02.prod.protection.outlook.com (2a01:111:e400:7e1c::378) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28; Tue, 6 Apr 2021 21:55:51 +0000 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com (2a01:111:e400:7e1c::46) by AM5EUR02FT037.mail.protection.outlook.com (2a01:111:e400:7e1c::182) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28 via Frontend Transport; Tue, 6 Apr 2021 21:55:51 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:DE2E80E4045C1DCD51FFC7FC68359BA70DB1ECA1D7856547DEF2C08EDCCB204C; UpperCasedChecksum:7B478A5D4C51A649676611C4FC1931DF86BE00AD549E5E75430D5E9AFC78A886; SizeAsReceived:7601; Count:48 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::8128:5de5:4e94:9a21]) by HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::8128:5de5:4e94:9a21%3]) with mapi id 15.20.3999.032; Tue, 6 Apr 2021 21:55:51 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Tue, 6 Apr 2021 23:55:14 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [rQZaSQlPhbYyhEz6QJyh3a8yKdzHQJQ3] X-ClientProxiedBy: ZR0P278CA0046.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:1d::15) To HE1PR0301MB2154.eurprd03.prod.outlook.com (2603:10a6:3:2a::22) X-Microsoft-Original-Message-ID: <20210406215516.832944-8-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.137.96) by ZR0P278CA0046.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:1d::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.16 via Frontend Transport; Tue, 6 Apr 2021 21:55:51 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: 20b601e7-749b-4b56-05dc-08d8f946be8c X-MS-Exchange-SLBlob-MailProps: S/btQ8cKWiRct5ooVDkA416xUUNF5iBFhxjKnFATuOGkolnnxcfJcXbxUXOJT0iDofx7WobwFrjQqXsv3oufy5uzvLcom4t+l/H3o2DOC2725I2oZEj/xjYJ85ow+X5fAeH17qicWNgWdQ8I0lzq+LmO2ngvoJn7KU9P3JxX7QCdiWM0Gzg5K1/qwqH/ZzqT6SIMzbir1sNPPg+8267V+1y4nYnmUGRXb5KKGgd09npV3Hulnnls+3mZJHuwvE01IERLysfv2y/HH2phyFVKYgiT2/NCiQlZGe7FRgfPN/Ey5JWH/jD6PBx/OvL5cXx7hvW1syjEtVrQnrGHcGkaiBCtI44cH/Bx2huqNbXnkFLBh/Ybq+XpMoCp7WCckTcD4eUY5D/8tkkQHQb1+VrxeJGWRUIKtB/vFD7YlIgw1K44otiviLGVrguCGrNNYBQuCk4H9x1GLlmBfVS/Gvo8nPErsQgFKmAkBUa+cnOz6unJIZtcmKxee/VsPFfvZfgwa/BctnrNcXMkP7wvb27nWCBrMVe6ypjLRSLklg5m9Kq8BrhW0wzEm46Il9TWBTz0kdCNIloyNtguAvd/vzNiXsvQYA/+JDphtr/sFZO7rLN3glcMfhoV3t09HDiHoiQH8LfbjZXnQ9hsSlEZNMeUwC6/39DXDRamsv6CRSSHtUJUMi4mdKxQBhaVsd4vI/5Cde8gBgeCKeLOHm70NKnpHn6Mq27vt2vxGkzoiwRWVSkFV3hgrND4AEdDHy2i7otYW8+yzOcFZM8= X-MS-TrafficTypeDiagnostic: AM5EUR02HT216: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: n6aENPe6ZAN7agT7syArCJ4iOOfWJTrSUBmzDvtsiHVW2JP08HWeB/wNkvGNKMT9eFCWu73vlDYRO48scqWrFtpoOMbN2PMmYeW18sQ1tnXRnP7tjOWFvF6+Qivs2MDIH7r1HtAupBytH54I52VjSEej7idqy3oX6fHpIj5OAT6Dt2NDrYGpMkTOgy94t/TLAxZCzPpZEFNq8BrFCHHAIML2VHT68++DrsmJOGQEcADppdvEHUg6H6V93U8fDJviSL29IWUmGPmnFWNPBGLjN0ZojcdKVGQ+jbTubh/1fEWn/VL19Y+EyEBRcQker/6ETBBfrry+q34gqnOPtlqROTU0HW/yAPnBf/tukBHH4GR9UY/V4d9G67oqzTW3QiO9UMfZKjrIgNlJxbkouVKSdw== X-MS-Exchange-AntiSpam-MessageData: UY8mm0NiypeaQEq3uXWt9cEgtlubT+y8WgOeNCGfCUjmQyFoiNsDoBNMa4lkSs+Br2DiriMXvS5CsuhzeReoAR3Zb6dyzbwlEyqQLWjMldsv1Jg5b89wZwE9eEGOvdgv76WTtwuHhyN5Kj0JgKWRJw== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 20b601e7-749b-4b56-05dc-08d8f946be8c X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Apr 2021 21:55:51.5008 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: AM5EUR02FT037.eop-EUR02.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5EUR02HT216 Subject: [FFmpeg-devel] [PATCH 17/19] avcodec/mpegvideo: Deprecate duplicate matrix opt for unsupported codecs X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 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: Andreas Rheinhardt Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Signed-off-by: Andreas Rheinhardt --- libavcodec/mjpegenc.c | 1 + libavcodec/mpeg12enc.c | 2 ++ libavcodec/mpeg4videoenc.c | 1 + libavcodec/mpegvideo.h | 3 ++- libavcodec/mpegvideo_enc.c | 3 +++ 5 files changed, 9 insertions(+), 1 deletion(-) diff --git a/libavcodec/mjpegenc.c b/libavcodec/mjpegenc.c index 86a18ec6a9..792169d6bb 100644 --- a/libavcodec/mjpegenc.c +++ b/libavcodec/mjpegenc.c @@ -593,6 +593,7 @@ FF_MPV_COMMON_OPTS { "huffman", "Huffman table strategy", OFFSET(huffman), AV_OPT_TYPE_INT, { .i64 = HUFFMAN_TABLE_OPTIMAL }, 0, NB_HUFFMAN_TABLE_OPTION - 1, VE, "huffman" }, { "default", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = HUFFMAN_TABLE_DEFAULT }, INT_MIN, INT_MAX, VE, "huffman" }, { "optimal", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = HUFFMAN_TABLE_OPTIMAL }, INT_MIN, INT_MAX, VE, "huffman" }, +{ "force_duplicated_matrix", "Always write luma and chroma matrix for mjpeg, useful for rtp streaming.", OFFSET(force_duplicated_matrix), AV_OPT_TYPE_BOOL, {.i64 = 0 }, 0, 1, VE }, #if FF_API_MPEGVIDEO_OPTS FF_MPV_DEPRECATED_MPEG_QUANT_OPT FF_MPV_DEPRECATED_A53_CC_OPT diff --git a/libavcodec/mpeg12enc.c b/libavcodec/mpeg12enc.c index 5b8ccf3ce1..0b88408046 100644 --- a/libavcodec/mpeg12enc.c +++ b/libavcodec/mpeg12enc.c @@ -1155,6 +1155,7 @@ static const AVOption mpeg1_options[] = { #if FF_API_MPEGVIDEO_OPTS FF_MPV_DEPRECATED_MPEG_QUANT_OPT FF_MPV_DEPRECATED_A53_CC_OPT + FF_MPV_DEPRECATED_MATRIX_OPT #endif { NULL }, }; @@ -1187,6 +1188,7 @@ static const AVOption mpeg2_options[] = { #if FF_API_MPEGVIDEO_OPTS { "mpeg_quant", "Deprecated, does nothing", OFFSET(mpeg_quant), AV_OPT_TYPE_INT, {.i64 = 1 }, 0, 1, VE | AV_OPT_FLAG_DEPRECATED }, + FF_MPV_DEPRECATED_MATRIX_OPT #endif FF_MPEG2_PROFILE_OPTS { NULL }, diff --git a/libavcodec/mpeg4videoenc.c b/libavcodec/mpeg4videoenc.c index 384710cf60..f97c506d13 100644 --- a/libavcodec/mpeg4videoenc.c +++ b/libavcodec/mpeg4videoenc.c @@ -1380,6 +1380,7 @@ static const AVOption options[] = { FF_MPV_COMMON_OPTS #if FF_API_MPEGVIDEO_OPTS FF_MPV_DEPRECATED_A53_CC_OPT + FF_MPV_DEPRECATED_MATRIX_OPT #endif FF_MPEG4_PROFILE_OPTS { NULL }, diff --git a/libavcodec/mpegvideo.h b/libavcodec/mpegvideo.h index 508ae0dfb9..9a6ad75166 100644 --- a/libavcodec/mpegvideo.h +++ b/libavcodec/mpegvideo.h @@ -662,7 +662,6 @@ FF_MPV_OPT_CMP_FUNC, \ { "zero", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = FF_ME_ZERO }, 0, 0, FF_MPV_OPT_FLAGS, "motion_est" }, \ { "epzs", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = FF_ME_EPZS }, 0, 0, FF_MPV_OPT_FLAGS, "motion_est" }, \ { "xone", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = FF_ME_XONE }, 0, 0, FF_MPV_OPT_FLAGS, "motion_est" }, \ -{ "force_duplicated_matrix", "Always write luma and chroma matrix for mjpeg, useful for rtp streaming.", FF_MPV_OFFSET(force_duplicated_matrix), AV_OPT_TYPE_BOOL, {.i64 = 0 }, 0, 1, FF_MPV_OPT_FLAGS }, \ {"b_strategy", "Strategy to choose between I/P/B-frames", FF_MPV_OFFSET(b_frame_strategy), AV_OPT_TYPE_INT, {.i64 = 0 }, 0, 2, FF_MPV_OPT_FLAGS }, \ {"b_sensitivity", "Adjust sensitivity of b_frame_strategy 1", FF_MPV_OFFSET(b_sensitivity), AV_OPT_TYPE_INT, {.i64 = 40 }, 1, INT_MAX, FF_MPV_OPT_FLAGS }, \ {"brd_scale", "Downscale frames for dynamic B-frame decision", FF_MPV_OFFSET(brd_scale), AV_OPT_TYPE_INT, {.i64 = 0 }, 0, 3, FF_MPV_OPT_FLAGS }, \ @@ -683,6 +682,8 @@ FF_MPV_RC_STRATEGY_OPTS { "mpeg_quant", "Deprecated, does nothing", FF_MPV_OFFSET(mpeg_quant), AV_OPT_TYPE_INT, {.i64 = 0 }, 0, 0, FF_MPV_OPT_FLAGS | AV_OPT_FLAG_DEPRECATED }, #define FF_MPV_DEPRECATED_A53_CC_OPT \ { "a53cc", "Deprecated, does nothing", FF_MPV_OFFSET(a53_cc), AV_OPT_TYPE_BOOL, { .i64 = 1 }, 0, 1, FF_MPV_OPT_FLAGS | AV_OPT_FLAG_DEPRECATED }, +#define FF_MPV_DEPRECATED_MATRIX_OPT \ + { "force_duplicated_matrix", "Deprecated, does nothing", FF_MPV_OFFSET(force_duplicated_matrix), AV_OPT_TYPE_BOOL, {.i64 = 0 }, 0, 1, FF_MPV_OPT_FLAGS | AV_OPT_FLAG_DEPRECATED }, #endif extern const AVOption ff_mpv_generic_options[]; diff --git a/libavcodec/mpegvideo_enc.c b/libavcodec/mpegvideo_enc.c index 03fcfa83dd..2330e4440e 100644 --- a/libavcodec/mpegvideo_enc.c +++ b/libavcodec/mpegvideo_enc.c @@ -89,6 +89,7 @@ const AVOption ff_mpv_generic_options[] = { #if FF_API_MPEGVIDEO_OPTS FF_MPV_DEPRECATED_MPEG_QUANT_OPT FF_MPV_DEPRECATED_A53_CC_OPT + FF_MPV_DEPRECATED_MATRIX_OPT #endif { NULL }, }; @@ -4714,6 +4715,7 @@ static const AVOption h263_options[] = { #if FF_API_MPEGVIDEO_OPTS FF_MPV_DEPRECATED_MPEG_QUANT_OPT FF_MPV_DEPRECATED_A53_CC_OPT + FF_MPV_DEPRECATED_MATRIX_OPT #endif { NULL }, }; @@ -4748,6 +4750,7 @@ static const AVOption h263p_options[] = { #if FF_API_MPEGVIDEO_OPTS FF_MPV_DEPRECATED_MPEG_QUANT_OPT FF_MPV_DEPRECATED_A53_CC_OPT + FF_MPV_DEPRECATED_MATRIX_OPT #endif { NULL }, }; From patchwork Tue Apr 6 21:55:15 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 26784 Return-Path: X-Original-To: patchwork@ffaux-bg.ffmpeg.org Delivered-To: patchwork@ffaux-bg.ffmpeg.org Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by ffaux.localdomain (Postfix) with ESMTP id BA10944AF20 for ; Wed, 7 Apr 2021 00:55:58 +0300 (EEST) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 9F51E68A6EB; Wed, 7 Apr 2021 00:55:58 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR02-HE1-obe.outbound.protection.outlook.com (mail-oln040092068010.outbound.protection.outlook.com [40.92.68.10]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id E853B68A6B5 for ; Wed, 7 Apr 2021 00:55:54 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=byfkqYttNuM/Rx2ur8Z0tFwW3zpgxZkV7V6ZwlPxtelPKEHXd6k8l54xZStatn4VD5bILAu5d2c3NfxD8VEv3u7+TND3TygXdldGJcBR5TlRZmsBHEeGM0UcSMASO5NgIeou6JURCiaaQSev++96NZo3fE9MsVC8/IsrwKwNMxLHdnM/4DI5zouEu4vBRtG3Ychz+1jwTi5kStbvgnZJ+7B43FAUYm49Gg8bKqMEPvPq2CBSuoe6RmfjCe4FPZxyKx1w0d+6tU7SGuplzRkJ4dqLnK9AtA61yja+Dbw6HwzD7bb+LXeCyFVXqM19szWW+hfRMeJ9vV26thewHVMqQA== 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-SenderADCheck; bh=aYAMyJnCLttg4pXo5Z4Uq8BgchgZ9SuUbJgb8pTyMoc=; b=F6YZVA56Y2o07WRxEs6hjICL66oGBd31YPzlVKp/8IRJKuiP9fGz9u1BsmLBlpDimf36+QmcAn9gwjeqlZB4bi+pulOWOYujrviM6m3ALPSQ3pboKRt41hjd8GkCeiCY9xi8/8M8Pj49JEK0oV7WjkMh9Lc8p9c0PQg3FWrXVChelu7IaXF/fIpe1EmzhezKqzPRYg1FW+0O+R4GYWkzgDozMST3DWbM4zdTiqEoHZSrQeVYQHwPvzg0rJoLACs6xJQjyszJzP3ad9p43CMNjDolBDo9jksCFHyEHcMkNyLYNvUALaVMWiUja7jbtTMhpqPpjVVf5/lLqTdHByGTtw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=aYAMyJnCLttg4pXo5Z4Uq8BgchgZ9SuUbJgb8pTyMoc=; b=K8wuCgA4pKofm4W656tkGY3mTCi6/zSgUpOiYYR+lc2K85uONVLaCww0KRXj0itWGKjolqnKxuTu/boXV/HkHclMRBJxTfsxyjF0lH5ts8PIJlY/z5iO4OAkNPK8aRnNz/bJpuMJbOkUf1YZitlL4NZZfJgSOScb37Z0X3jDACXadY41/iA0iunfnlMNWpgd4lvst+2slwCid4vVH5O6R6Uw3DgLYGx3rvA3k6KJzq/XygJHb4yrVwK+2y/2F+a1oiw3f+hNb/+T/+QfNuQmb3pIePM13bgeZGSSJJtLv3n+lpbjT1aow3e8/kRSls1QLyTnbJLl+z3jzFOETQFFtA== Received: from AM5EUR02FT037.eop-EUR02.prod.protection.outlook.com (2a01:111:e400:7e1c::45) by AM5EUR02HT005.eop-EUR02.prod.protection.outlook.com (2a01:111:e400:7e1c::89) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28; Tue, 6 Apr 2021 21:55:53 +0000 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com (2a01:111:e400:7e1c::46) by AM5EUR02FT037.mail.protection.outlook.com (2a01:111:e400:7e1c::182) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28 via Frontend Transport; Tue, 6 Apr 2021 21:55:53 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:A8767CD6EBBCDD173736D639D96A9B47109460B8743366B744CBFDD452812E1F; UpperCasedChecksum:24428FCB2388465AC7FBDDAF94502C82F3FD92DEC3EFF6CC84A20CCDCDACFE63; SizeAsReceived:7611; Count:48 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::8128:5de5:4e94:9a21]) by HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::8128:5de5:4e94:9a21%3]) with mapi id 15.20.3999.032; Tue, 6 Apr 2021 21:55:53 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Tue, 6 Apr 2021 23:55:15 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [aKsOLJhMFdbtuL9TMuNahQOIuKXBasIJ] X-ClientProxiedBy: ZR0P278CA0046.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:1d::15) To HE1PR0301MB2154.eurprd03.prod.outlook.com (2603:10a6:3:2a::22) X-Microsoft-Original-Message-ID: <20210406215516.832944-9-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.137.96) by ZR0P278CA0046.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:1d::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.16 via Frontend Transport; Tue, 6 Apr 2021 21:55:52 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: d682f9ff-e80a-4d20-2653-08d8f946bfb3 X-MS-Exchange-SLBlob-MailProps: S/btQ8cKWiRct5ooVDkA416xUUNF5iBFPPrWu/Sm0ARzAe4EeYrZx3e0JMG0s4ImwR1hPfDmG0t38VUFTxV4RmSFr5ZiTQLCdr5BdfghYEHF5BvHtL4JVRvlJZKQYz1q1+bnEEmWKTv6Ec8GkaZP6/qBuilNSBdr0rGR4ETahqTk6Vdwp9iHVOVuBxcS4W2sJIL8lJjWzz1xIlpBTojwO9j+tYv/1DvQzP4aLZLKeiVAP3nkdzXp0dzkjuXG55sXQTX+XPzYQkGQ/+Il2huIyQ5CeLoWFXHPyHmuN2nmMiGYNkcodXTygbzIilbGKjM2x84b4kvZ8jLA1aIVZHAhuoxGY2pjNMWjV0JppiWkvlVN5ekr/OBLRVrF5nyJgZLiuG5rc8gAAgjsyC/irmzrrwkyQOPAVA7q6X5zdRx9FFZAKd84Ntcng37Hthi/IbPNKz/CffjgDyuNNh3xjsQm7PkBE9DyyheGU3n5MGBUYzTImsXlJi6rFWCHdfxN9K5/Nd/+ZJr0QpZjqk5v2/94txv7LUHDVp+4SVPV63lil/WqpWCFzJ10GcdrBuZx38hb6xtejvYUHH9SzcJW6DsDa5xbwR5OulSC49KngfHWHBwdgaz7dERrmpiyoObAzs8T7U6DmAQOtJz2yGNThOVr9q/XUzS3uu6+T1+bEgSdIsn33y9bKSpvsCmEaMai6KDnqxl9ehwLX319y1c+MBybi6+P2V9OxBmT/JTKGW28afRGbw+yq6rPBY+Fs6MJVA+Cg4L6HSe1olM= X-MS-TrafficTypeDiagnostic: AM5EUR02HT005: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: v84pzypIkGr+2VRlTxNjS9H+dtInnOx3ehdfp4bPIN4rkIhT9dS6m9EDvAuQicM22w0/JU4GHrnZKoGbuAuuTXQ3iY5T9/cNXH1Qa8wGabbtfRSbiZcMJcpVZBRwW+JGZUsgRKHkvf6M6S4h1BVVhejm2tJrcaqMkIq5W9I5gKwiHFC/HzbuqFDyC1zeEU8bxIfhXM+f6XfXNtWDL5J4sjYMDC+5tvo/M3S8CYADhplNt2E/IK+RojW6nCopvQ9JZGP1L+QPOLh+m0UdR31xxEXOjLmJisHH6KlUa0p3+LgN24/aof8OJVTL8ow6ZMHyUYvpCy2Duq4hXUz7FVmsWnEmT8tJVOwOLgomnBV98PL6D8EqZhfYrXSr/U1oS18hpT8Ps1RsIry+cxDl1tv9kg== X-MS-Exchange-AntiSpam-MessageData: 0tsp9+IswUWI6H7xHndgVhqshc2NOk1HFUeqNZl4GJLeudz0c4uNjKSSl7dxPdIvJy4UmYK+YkVgtg6pxDMOoIHMxtoXERh2/XCUpfxgo/VF9I08k1jvACFBXH6tSME9enbWT6n7cZfSDMXtqzrJzg== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: d682f9ff-e80a-4d20-2653-08d8f946bfb3 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Apr 2021 21:55:53.4180 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: AM5EUR02FT037.eop-EUR02.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5EUR02HT005 Subject: [FFmpeg-devel] [PATCH 18/19] avcodec/mpegvideo: Deprecate bframe opts for encoders not supporting them X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 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: Andreas Rheinhardt Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" MPEG-1/2/4 are the only mpegvideo based encoders that support bframes; yet even the encoders not supporting bframes have options that only make sense for an encoder that supports bframes; setting any of these options for such an encoder has no impact on the encoded outcome (but setting b_strategy to two slows down encoding considerably). So deprecate these options. Signed-off-by: Andreas Rheinhardt --- It seems to me that MJPEG/AMV does not use the motion estimation code at all (or rather, the options don't affect the output). If so, these options should be deprecated/removed as well. Will look into this. libavcodec/mjpegenc.c | 1 + libavcodec/mpeg12enc.c | 1 + libavcodec/mpeg4videoenc.c | 1 + libavcodec/mpegvideo.h | 12 +++++++++--- libavcodec/mpegvideo_enc.c | 3 +++ 5 files changed, 15 insertions(+), 3 deletions(-) diff --git a/libavcodec/mjpegenc.c b/libavcodec/mjpegenc.c index 792169d6bb..b355f97f14 100644 --- a/libavcodec/mjpegenc.c +++ b/libavcodec/mjpegenc.c @@ -597,6 +597,7 @@ FF_MPV_COMMON_OPTS #if FF_API_MPEGVIDEO_OPTS FF_MPV_DEPRECATED_MPEG_QUANT_OPT FF_MPV_DEPRECATED_A53_CC_OPT +FF_MPV_DEPRECATED_BFRAME_OPTS #endif { NULL}, }; diff --git a/libavcodec/mpeg12enc.c b/libavcodec/mpeg12enc.c index 0b88408046..dccb11b222 100644 --- a/libavcodec/mpeg12enc.c +++ b/libavcodec/mpeg12enc.c @@ -1148,6 +1148,7 @@ av_cold void ff_mpeg1_encode_init(MpegEncContext *s) OFFSET(scan_offset), AV_OPT_TYPE_BOOL, { .i64 = 0 }, 0, 1, VE }, \ { "timecode_frame_start", "GOP timecode frame start number, in non-drop-frame format", \ OFFSET(timecode_frame_start), AV_OPT_TYPE_INT64, {.i64 = -1 }, -1, INT64_MAX, VE}, \ + FF_MPV_COMMON_BFRAME_OPTS static const AVOption mpeg1_options[] = { COMMON_OPTS diff --git a/libavcodec/mpeg4videoenc.c b/libavcodec/mpeg4videoenc.c index f97c506d13..7145bfe8ce 100644 --- a/libavcodec/mpeg4videoenc.c +++ b/libavcodec/mpeg4videoenc.c @@ -1377,6 +1377,7 @@ static const AVOption options[] = { { "alternate_scan", "Enable alternate scantable.", OFFSET(alternate_scan), AV_OPT_TYPE_BOOL, { .i64 = 0 }, 0, 1, VE }, { "mpeg_quant", "Use MPEG quantizers instead of H.263", OFFSET(mpeg_quant), AV_OPT_TYPE_INT, {.i64 = 0 }, 0, 1, VE }, + FF_MPV_COMMON_BFRAME_OPTS FF_MPV_COMMON_OPTS #if FF_API_MPEGVIDEO_OPTS FF_MPV_DEPRECATED_A53_CC_OPT diff --git a/libavcodec/mpegvideo.h b/libavcodec/mpegvideo.h index 9a6ad75166..30dcf99188 100644 --- a/libavcodec/mpegvideo.h +++ b/libavcodec/mpegvideo.h @@ -662,9 +662,6 @@ FF_MPV_OPT_CMP_FUNC, \ { "zero", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = FF_ME_ZERO }, 0, 0, FF_MPV_OPT_FLAGS, "motion_est" }, \ { "epzs", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = FF_ME_EPZS }, 0, 0, FF_MPV_OPT_FLAGS, "motion_est" }, \ { "xone", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = FF_ME_XONE }, 0, 0, FF_MPV_OPT_FLAGS, "motion_est" }, \ -{"b_strategy", "Strategy to choose between I/P/B-frames", FF_MPV_OFFSET(b_frame_strategy), AV_OPT_TYPE_INT, {.i64 = 0 }, 0, 2, FF_MPV_OPT_FLAGS }, \ -{"b_sensitivity", "Adjust sensitivity of b_frame_strategy 1", FF_MPV_OFFSET(b_sensitivity), AV_OPT_TYPE_INT, {.i64 = 40 }, 1, INT_MAX, FF_MPV_OPT_FLAGS }, \ -{"brd_scale", "Downscale frames for dynamic B-frame decision", FF_MPV_OFFSET(brd_scale), AV_OPT_TYPE_INT, {.i64 = 0 }, 0, 3, FF_MPV_OPT_FLAGS }, \ {"skip_threshold", "Frame skip threshold", FF_MPV_OFFSET(frame_skip_threshold), AV_OPT_TYPE_INT, {.i64 = 0 }, INT_MIN, INT_MAX, FF_MPV_OPT_FLAGS }, \ {"skip_factor", "Frame skip factor", FF_MPV_OFFSET(frame_skip_factor), AV_OPT_TYPE_INT, {.i64 = 0 }, INT_MIN, INT_MAX, FF_MPV_OPT_FLAGS }, \ {"skip_exp", "Frame skip exponent", FF_MPV_OFFSET(frame_skip_exp), AV_OPT_TYPE_INT, {.i64 = 0 }, INT_MIN, INT_MAX, FF_MPV_OPT_FLAGS }, \ @@ -677,6 +674,11 @@ FF_MPV_OPT_CMP_FUNC, \ {"intra_penalty", "Penalty for intra blocks in block decision", FF_MPV_OFFSET(intra_penalty), AV_OPT_TYPE_INT, {.i64 = 0 }, 0, INT_MAX/2, FF_MPV_OPT_FLAGS }, \ FF_MPV_RC_STRATEGY_OPTS +#define FF_MPV_COMMON_BFRAME_OPTS \ +{"b_strategy", "Strategy to choose between I/P/B-frames", FF_MPV_OFFSET(b_frame_strategy), AV_OPT_TYPE_INT, {.i64 = 0 }, 0, 2, FF_MPV_OPT_FLAGS }, \ +{"b_sensitivity", "Adjust sensitivity of b_frame_strategy 1", FF_MPV_OFFSET(b_sensitivity), AV_OPT_TYPE_INT, {.i64 = 40 }, 1, INT_MAX, FF_MPV_OPT_FLAGS }, \ +{"brd_scale", "Downscale frames for dynamic B-frame decision", FF_MPV_OFFSET(brd_scale), AV_OPT_TYPE_INT, {.i64 = 0 }, 0, 3, FF_MPV_OPT_FLAGS }, + #if FF_API_MPEGVIDEO_OPTS #define FF_MPV_DEPRECATED_MPEG_QUANT_OPT \ { "mpeg_quant", "Deprecated, does nothing", FF_MPV_OFFSET(mpeg_quant), AV_OPT_TYPE_INT, {.i64 = 0 }, 0, 0, FF_MPV_OPT_FLAGS | AV_OPT_FLAG_DEPRECATED }, @@ -684,6 +686,10 @@ FF_MPV_RC_STRATEGY_OPTS { "a53cc", "Deprecated, does nothing", FF_MPV_OFFSET(a53_cc), AV_OPT_TYPE_BOOL, { .i64 = 1 }, 0, 1, FF_MPV_OPT_FLAGS | AV_OPT_FLAG_DEPRECATED }, #define FF_MPV_DEPRECATED_MATRIX_OPT \ { "force_duplicated_matrix", "Deprecated, does nothing", FF_MPV_OFFSET(force_duplicated_matrix), AV_OPT_TYPE_BOOL, {.i64 = 0 }, 0, 1, FF_MPV_OPT_FLAGS | AV_OPT_FLAG_DEPRECATED }, +#define FF_MPV_DEPRECATED_BFRAME_OPTS \ + { "b_strategy", "Deprecated, does nothing", FF_MPV_OFFSET(b_frame_strategy), AV_OPT_TYPE_INT, { .i64 = 0 }, 0, 2, FF_MPV_OPT_FLAGS | AV_OPT_FLAG_DEPRECATED }, \ + { "b_sensitivity", "Deprecated, does nothing", FF_MPV_OFFSET(b_sensitivity), AV_OPT_TYPE_INT, { .i64 = 40 }, 1, INT_MAX, FF_MPV_OPT_FLAGS | AV_OPT_FLAG_DEPRECATED }, \ + { "brd_scale", "Deprecated, does nothing", FF_MPV_OFFSET(brd_scale), AV_OPT_TYPE_INT, { .i64 = 0 }, 0, 3, FF_MPV_OPT_FLAGS | AV_OPT_FLAG_DEPRECATED }, #endif extern const AVOption ff_mpv_generic_options[]; diff --git a/libavcodec/mpegvideo_enc.c b/libavcodec/mpegvideo_enc.c index 2330e4440e..7909a5630a 100644 --- a/libavcodec/mpegvideo_enc.c +++ b/libavcodec/mpegvideo_enc.c @@ -90,6 +90,7 @@ const AVOption ff_mpv_generic_options[] = { FF_MPV_DEPRECATED_MPEG_QUANT_OPT FF_MPV_DEPRECATED_A53_CC_OPT FF_MPV_DEPRECATED_MATRIX_OPT + FF_MPV_DEPRECATED_BFRAME_OPTS #endif { NULL }, }; @@ -4716,6 +4717,7 @@ static const AVOption h263_options[] = { FF_MPV_DEPRECATED_MPEG_QUANT_OPT FF_MPV_DEPRECATED_A53_CC_OPT FF_MPV_DEPRECATED_MATRIX_OPT + FF_MPV_DEPRECATED_BFRAME_OPTS #endif { NULL }, }; @@ -4751,6 +4753,7 @@ static const AVOption h263p_options[] = { FF_MPV_DEPRECATED_MPEG_QUANT_OPT FF_MPV_DEPRECATED_A53_CC_OPT FF_MPV_DEPRECATED_MATRIX_OPT + FF_MPV_DEPRECATED_BFRAME_OPTS #endif { NULL }, }; From patchwork Tue Apr 6 21:55:16 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 26786 Return-Path: X-Original-To: patchwork@ffaux-bg.ffmpeg.org Delivered-To: patchwork@ffaux-bg.ffmpeg.org Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by ffaux.localdomain (Postfix) with ESMTP id A882E44AF20 for ; Wed, 7 Apr 2021 00:56:00 +0300 (EEST) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 7F30668A6EE; Wed, 7 Apr 2021 00:56:00 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR02-VE1-obe.outbound.protection.outlook.com (mail-oln040092069015.outbound.protection.outlook.com [40.92.69.15]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 84B4668A700 for ; Wed, 7 Apr 2021 00:55:55 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=HLJclDwYo8zvKFRhtsSRGzSLDmy/lCHYpcenEQwJ7RneFq3O9KWHvjW1OAbNBxKqRUp0omK/PjpaSQla/m61Iu49R3wtxT7kTlOB6wzXSYU+iseywcBX/KYGM04g0ne54jtES5k+Cc2jh5IalasCOgD+jO434oNEZ9Aq/LkhV7w4b7ABFql9bktFDDOZPF50jEUpgcNNkCwq7QiP2qtypzvlGioF9xFMSOwAGnlrvlOw4E6ISZwqj9ksBAFKTUQoZ44OKl/RzcCvNW6i3Ho0F2JD+zQDr2QpDxQrr4HKsUg2gy97fBTAkuhrtNAQc9ETV2gSSJjfpoaOUsK5W1wzPw== 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-SenderADCheck; bh=Ty76lCRwkI4LVloBWuNyChZJFOSh4BGjlcrQLZ1c2Eo=; b=R1kwaTYCMbPZoxfyV4tAxCQPRHlaPeYRF3d1hlBbtZXee6HDEuNr5QHaG9fq0L/PBEasJLjkP4Sft8b4Y7WvefWKznYorOP4jtTmFBDwja3JzPmUgsbhIIr/PwxvxvC7S5EWLDzWXnu/XJAtwAZsQz4TtolPdwbHK8GRCoSM9Id1i2XKPPDIDU0w0CHtHcBHHTvKAnCTDV3Es4N7r7EYweg34QoE+yUf45QIHrTWOrFzASPn/M4bFR+4YnOB3If+ZgcjTCSubKzay9hM6fZO4l3VWOWyw9pQOpUiZwgtm9zFD88+ZiAenVbniNtAor/Cl5V8IGu4hOQRslygWNotzg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Ty76lCRwkI4LVloBWuNyChZJFOSh4BGjlcrQLZ1c2Eo=; b=GjZ2FE45BdoxPOlLUAF6ma9hzrLg9zuwQKG2fmuPHgENWFRPOEsLOU4OfGBR8hMwpY5jBVBznRrlc0p3YhswiKmuMsxB8vaZ5yhjIfqzvwZ5CBcsI3Ipgj79LYK9tPztJE3vba11XO0eEmXd3YRuUfZQPodS+D+ua6xXuUUZs5FfCRZaluMgGMQWa4UKa4PMPvhgrjfh6Cq8wbI/WsU4Hc3ILRc+bIpe4p/UFq8W+es1RN/f5Radkbn4mXTngxcUROEIFDJsXSai1mf3pgQwxlypfOXaMSG8bJB6eYDrlKj/vo/ijp7vb1dfoRx2c7qeUFPPFh+dwnJ4nbl1gn7TAQ== Received: from AM5EUR02FT037.eop-EUR02.prod.protection.outlook.com (2a01:111:e400:7e1c::4f) by AM5EUR02HT212.eop-EUR02.prod.protection.outlook.com (2a01:111:e400:7e1c::340) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28; Tue, 6 Apr 2021 21:55:54 +0000 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com (2a01:111:e400:7e1c::46) by AM5EUR02FT037.mail.protection.outlook.com (2a01:111:e400:7e1c::182) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3999.28 via Frontend Transport; Tue, 6 Apr 2021 21:55:54 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:EBC49622AC1E051E38560594130ED24DD7B1ED3515F4516C0F24907B3DDEF3F3; UpperCasedChecksum:2C7231A4514DE3C74FC3C62A3CF2C7C72FAEBE618A1DC0F902F9CF10C053B04D; SizeAsReceived:7571; Count:48 Received: from HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::8128:5de5:4e94:9a21]) by HE1PR0301MB2154.eurprd03.prod.outlook.com ([fe80::8128:5de5:4e94:9a21%3]) with mapi id 15.20.3999.032; Tue, 6 Apr 2021 21:55:54 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Tue, 6 Apr 2021 23:55:16 +0200 Message-ID: X-Mailer: git-send-email 2.27.0 In-Reply-To: References: X-TMN: [8v5HIPU+30KXy4OgZNM9V4E7zxCHkkaT] X-ClientProxiedBy: ZR0P278CA0046.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:1d::15) To HE1PR0301MB2154.eurprd03.prod.outlook.com (2603:10a6:3:2a::22) X-Microsoft-Original-Message-ID: <20210406215516.832944-10-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.137.96) by ZR0P278CA0046.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:1d::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.16 via Frontend Transport; Tue, 6 Apr 2021 21:55:54 +0000 X-MS-PublicTrafficType: Email X-IncomingHeaderCount: 48 X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-Correlation-Id: c5b3c674-1c2d-4320-cd27-08d8f946c068 X-MS-Exchange-SLBlob-MailProps: gjx25WM8ZNWokjkIuSHCLcr3WWR6SqcKo6TOX06BYOiKCv01VOsW6dTU4ljtzAfjyava1IlhG/vrOP15+KDZxL73Z6MpMWSY01c9WXUm3m4cgBF7s9u2ZzqvfHTfgMgUQASlvsDcRnWDEDufYPzpPxHNRMauefvCZ8Syh/4tui4GaZYsSG5ac7fqxBLkU0lbdI6X9YBN4LQRRXLSPdNoinHFBQcAVe57lNrBgw9h6gXjE2jwVfbBH0SEY+r5HUU4EW/WtXNUEVQ7gJoaFwlSITAnPRDgdM5QWHZ/zp1x49LiYGtUT3FqV6ZW+3nmtML+6ZPrYUm5c2nP5mglTKk7oKk4dEc8EFIEDNec4dFHsJedBtp5Bh2iOfLS3tbRhis5ZfloLLsji09E6QqjzX70gNbgGfj9bz9Or/WbwfHA+/MhQKp1eaV3ZJLXFC4KMemwx0+cKmYp7Q0M4WdJ3veDPRTZ3tjYXdzu5ZWs8GNlPte/1n52HCtYcZiJK6qUnoHwlPfQZ0137vbRd13XiViFAMAS7y0EmyFXEWT0/ELyQEUUrZLU2pIheNFVipT3bOJFF4HuE7epSxhg4YbA+uqCBGClejOl3QHggosOJkgoG9rNYgipW8v5kPoieQtA4IbjtId0zbVzEatryOxYMqOj+ryK/0cyvzsS4/+d4BtBMGSbC4F9pW0ByJTuwRn82c8LGX9LomhxkEvwXV+kLYOF+iTRqy1rpfz1aeA33aLgFz0= X-MS-TrafficTypeDiagnostic: AM5EUR02HT212: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: YqQ6T6e+FvChKD10wp+LWShdlVLpyNXbpFGWn/VEXmnSMqNyRAR7wUWZ1pZDI/FLLxfZ103fR374myYv575RVdR42pkb3rB3snzTwLbAXhjvCAsUtrWubsxM8get8hV82/jlrYVpXocqFGnwdi+DsDXxURvIt160tdI/20Y+Szpcx8qrOgXPOi/9bAXgwLbrUDrQWsxzH/tz152sr7NyGiK4aCPiCvuEgr/Mic3nC4mhaYoZ2rmSAh9RsMV7gDafgmn9aBIBGXUXjp7y3ua/qG81ovEQWFN7AXV05UAcb+/Mpu2NzFMYuh/l5UwVTSnYZkaL9FhpX7VI0SAgkcq5t6ki/BRTD+GBUifRzhvXTlB0rRkNDA8AHGE4leEd0h2Rb6tpotWhgcT7aBKe6snW9g== X-MS-Exchange-AntiSpam-MessageData: H7SPhVBeBOc/rpr1TlQQLd//PEeSrDbnOYpKAmzuEukdiBeacJ9OmcEPaGpCczuYr/HZi1Fzh+ifTag0nBI/eWMFaFlSEKDgE08QJqPxO8DOMgjsrSx1GdaoArmZLxcgnt5o6I6AnP/a0DPKQfBQzQ== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: c5b3c674-1c2d-4320-cd27-08d8f946c068 X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Apr 2021 21:55:54.6104 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-AuthSource: AM5EUR02FT037.eop-EUR02.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: Internet X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5EUR02HT212 Subject: [FFmpeg-devel] [PATCH 19/19] avcodec/mpeg12dec: Remove redundant writes X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 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: Andreas Rheinhardt Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" ff_mpv_decode_init() already sets MpegEncContext.codec_id. Signed-off-by: Andreas Rheinhardt --- libavcodec/mpeg12dec.c | 1 - 1 file changed, 1 deletion(-) diff --git a/libavcodec/mpeg12dec.c b/libavcodec/mpeg12dec.c index 92dd6a0b24..db522963c4 100644 --- a/libavcodec/mpeg12dec.c +++ b/libavcodec/mpeg12dec.c @@ -1067,7 +1067,6 @@ static av_cold int mpeg_decode_init(AVCodecContext *avctx) s->mpeg_enc_ctx_allocated = 0; s->mpeg_enc_ctx.picture_number = 0; s->repeat_field = 0; - s->mpeg_enc_ctx.codec_id = avctx->codec->id; avctx->color_range = AVCOL_RANGE_MPEG; return 0; }