From patchwork Mon Apr 8 20:13:51 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 47949 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:3f98:b0:1a7:a0dc:8de5 with SMTP id ay24csp136310pzb; Mon, 8 Apr 2024 13:16:21 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCXQQ/IdBjmLJTLrHaaoNWrqPqmLImHpp6B8zl/anHOnMQlD9nbDQlAK5WfDNOvyY3M6gmbgVslGbXD9Pkah/6TAQxiIjzOeDlfR2A== X-Google-Smtp-Source: AGHT+IF5UVqtMeVhIXdWDBFPUCeZtRS3t06Dml+uvqyJTG9E5Kcl60LStZeqDCLkTfYkURumn80n X-Received: by 2002:a2e:8095:0:b0:2d6:fa0c:77b0 with SMTP id i21-20020a2e8095000000b002d6fa0c77b0mr6001039ljg.2.1712607380383; Mon, 08 Apr 2024 13:16:20 -0700 (PDT) Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id f23-20020a2e6a17000000b002d8647feb8fsi2335641ljc.579.2024.04.08.13.16.19; Mon, 08 Apr 2024 13:16:20 -0700 (PDT) Received-SPF: pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) client-ip=79.124.17.100; Authentication-Results: mx.google.com; dkim=neutral (body hash did not verify) header.i=@outlook.com header.s=selector1 header.b=Ips1m65v; arc=fail (body hash mismatch); spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=outlook.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id C314768D314; Mon, 8 Apr 2024 23:15:17 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR01-VE1-obe.outbound.protection.outlook.com (mail-ve1eur01olkn2044.outbound.protection.outlook.com [40.92.66.44]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 93D8568D39C for ; Mon, 8 Apr 2024 23:15:13 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=N2PrGQ04AnWpeIMlSsTcr3fFN4AEgrpF+vxdsgleUP9fMVfELhzZc1l0g8+WyLCqAjjv3PPU9jwLraJTgrwrcc3auW8lxyM2hkoWPAj0TB2yXTYFoFmuF+v6k3pWgUdHVOkFOAi7xtj84YqvBMmrPfc1Xfgb/l4g0b3OpqxVX0NhEnSoVdGybdsVVhNYl6V+qrVFPffK8dbD0lDBgYy2uMbmME/6BbzNYc0TUmjVRseXRDVgRNB4qL9FeE8sEl7opZrQZJFO8L4a9jap9w8U7L/sIyOSZDo1jyyfzVT/JucBJ4zCCxfpZEuAnCMdgQuUcZtKaTk9Uz+4dEx7idrwdg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=FfhibJFdMVH3G5qPumGLREJdk7nT0CxhW9H5bxDfEkc=; b=jjbyfJzUyAoncZHX9MBfQ/bcbxtuxCb+YNOH4085672xOJtegaE6tqHsAoobU5A++oBqvuDVcRN/qf0I9tHnLQ29ZBK0om1OgRW2o5F2FvM3ZGCA1+zRPYLzYzgx2o1KwX5bcFJJ0l7nu76LTDBheMFlh46O6t6y15UF5niV62vEQFJ9hm5kvK2LejPsM9joubZpoxGURUvs7RobcDuYNR5F346VnC6x4G2jst+F7owEdIWolD+or0Xr6PsCrMQdF9X3o/4/8gTwm7uzT/zGDE42Zm+BEx+Gcwuf8Q8tk/n/VVwGFW0lunllzwBy2+uB2Y2PspvdPfTLWqATFB3y9Q== 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=FfhibJFdMVH3G5qPumGLREJdk7nT0CxhW9H5bxDfEkc=; b=Ips1m65vNBUekPuV/uwwrZKI3nT1n76/XfCgbqnWASRDK13LEj9Mka+iyTfwoTDsCa0etupRy1LzjUkX4KGZFfKwRW3nJDHS9Z34Fh8IjnqlI2dSDaoJCVmZx5lnI4wxyzQIzspcx2kRl2x+B6s69r9YVfc+HW86O3oKoTHUwe80OpXvuDIguJLGLZKod/Tms8/wBBcJeNnmqhus+Ga8h3ApXPYI0EWl7vOXpdakmiyQ43pcEOpB9AQImZjOwqR/s4mseITFp4oc/4YG0m8bUaOZmXG071hcIPYUXBno6CCTEDtHhU9Ig7+2qwZ5qVsdzatwzDfgy5x8y+D1GLCxmA== Received: from GV1P250MB0737.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:8e::17) by PAXP250MB0494.EURP250.PROD.OUTLOOK.COM (2603:10a6:102:28d::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7409.46; Mon, 8 Apr 2024 20:15:09 +0000 Received: from GV1P250MB0737.EURP250.PROD.OUTLOOK.COM ([fe80::4a3b:cf76:cddc:c68d]) by GV1P250MB0737.EURP250.PROD.OUTLOOK.COM ([fe80::4a3b:cf76:cddc:c68d%4]) with mapi id 15.20.7409.042; Mon, 8 Apr 2024 20:15:09 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Mon, 8 Apr 2024 22:13:51 +0200 Message-ID: X-Mailer: git-send-email 2.40.1 In-Reply-To: References: X-TMN: [Ujf9seg6ETw2fIZmk6ijqlBDjUDJeKjkXwSFj3e+9HY=] X-ClientProxiedBy: ZR0P278CA0124.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:20::21) To GV1P250MB0737.EURP250.PROD.OUTLOOK.COM (2603:10a6:150:8e::17) X-Microsoft-Original-Message-ID: <20240408201405.2136840-12-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: GV1P250MB0737:EE_|PAXP250MB0494:EE_ X-MS-Office365-Filtering-Correlation-Id: 99e3502f-9d67-41b9-b146-08dc58089629 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: cAKHiELnnottnNkXHti3ccdPGjUFKiEdZUZsn1kQHh7rUBcR2KIDQ5d+QLwSdhCDXOhvy6R4WrY0zNQJFhjLA2U4vkfZecANi6f6KvBHqTZPD46vGtfhh7Kf1ID2tMQnIoqM8YKxMHZUJtOUmA/zPemErbSjbtroSznP8CY35JJZG2ddTfSCrGHcK7OeeWF5iDtX3vMs2/RMhrICyP+6E1JcGxlfxbRe7WDXQGofpaEvZWc5mpDlJ1WvDVnmLuFm6/9EDICSHprCa7/zUWZazl0euxRXaMmjv4g2q4gG+1FOAVTzCwFTFhYiYd58je+c3ViRtN8qjmuzyTUUTIbyKTWL67lmvqz7WWjNst4/bYuCUcnerM6N18iCxAGDKWDvo95slzWSPPHmiF/gycQJQifTEj/FcpToOeRU55M/qwpfC8iKhhw1Am3hqHss6Sl6WU0tsFTzW/vu6PTGlRqskJZGwapqY0+Q3/aUC0cxjCRxLEB3Ecdv8C87DFRa1vdEFle5tPS/C1MSAxNxM7thvVbYdA2xcgNWvOEq+5RxDQfd+PH7Z+DXkUyA2WAMK6D2K2dITRWGsisNWDaKQrTvb2BUs+CBwIxLZewiSulqjiWpLE0MxwirBkHhNrC2Uej8 X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: 2ZcVOQ2aMIfPdMfWi/vlAzsUePM2leYgv32UtUd3RnTyqyEEAty19CuV9RDiBFwW16rORk+VXtq6ToBvT6xtRM28WIzKbV0weN10Y+ZlBdxOtIRJNs2I0RX4IVLBwwu5fNbzpj2itOerWbQesbO2tO2DUCRADTU/RrioKq8hNgEdgDK1isCKYbI7ewgeEza67x3GKMJu5f3H49kEK4VwJIhHlIEFUZZV0qcz99rIbhUMh6CFLmHYJngRgQXIb7Qqy61F/2gQh/Or8ZnAXDiEkjOvAY4CscG3rsllqR5ZbE5LasLHYjWuhF/VCleH1udKwSCZYn4sOhUMe7a/teq2nqJ3XvppIFdar0JHywNNbQhZ6ehRCxezAF2Am2oEajEUNIZEbmwr0HckwFP6RA/46uLAeAXEqJuLoiIdf7lR1v+7puzSRrSD5ve/qIr7sBrYywYQWK5jsRw45ABAx9Lola3adZSH6HumGqD8jx7N/IYr3mPbcBe4Rozlkd4D6BheHqs+GQfgIsQ8EhLZ4Vt+8NAnQPGgYGgRwdsGCt1hrijdw/01njAqx/Y6vKTUmP4IF0BuBXijSTIlgkeblp219vJsE5Hq8RWet+PseliYB0YlhjloUkmeRzSBBvznoLglRL/Y1EuLeRCKeScH2io4F9lZBaF7mQwk14Ib2WJghfcf+fXqu5GzXDl//slkQfkKIM/ywwYiRzmXtVI++1dm9ohhBuehp2GsNQPI4UkV1Ll5FvpSoa+7ePxabPXY2TEeym1RPt2bSlSFe/Hg8l9HZRjyXb8OSl+dFaxpUx+3oUuexkbsArulhicYtvf4Zgd7Y/Ow9rU4Fr97I9x9aXcxTKy1Kb4pVhmkACzZCD6YQmAOiohJjudjIpuvRmEtQgUIF09cKYaLMPcAK+Y7u7V7XTh9OFjTMlUC3+LdYjyUL2jbHCDfQXXQBTD1l4ZRQP61g5fpA9Oq+va+NhFH2Irn05OVMiiGO/0XGRKOsyNTVEkOHUynKDHlwKVZka4ZnSgPszRZi/xQcoWfAyPmnbVzMwRK/Y1uVdosClXLLysHXVjn+jOKX8xhsUn9r7GyIKFtg9Zaj/j69Wu5/ca9eTGnLjpcL22pooIo8mW6ZJyN3jiut4FLH5G6cxoWJHNlO3A/oIRXve9qvycyMvd5egb1Tszh0tNT6fF1QdV5bPg5ZT178Ili66xKHsCCj92YmxIjlxAtftlyk0Rnno9gMB6E/Ls3Ajxk6ATeAq5gTdHOyY5AHpYv7xF2h4DB55UyKUjmwJ8/wjUpZdC9iBQejhP17w== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 99e3502f-9d67-41b9-b146-08dc58089629 X-MS-Exchange-CrossTenant-AuthSource: GV1P250MB0737.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Apr 2024 20:15:08.4112 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXP250MB0494 Subject: [FFmpeg-devel] [PATCH v2 13/27] avcodec/wavpack: Only reset DSD context upon parameter change X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Cc: Andreas Rheinhardt Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: pR9g6dYGryGj The current code resets it all the time unless we are decoding a DSD frame with identical parameters to the last frame. Signed-off-by: Andreas Rheinhardt --- libavcodec/wavpack.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/libavcodec/wavpack.c b/libavcodec/wavpack.c index 6fd297a002..51ac943fe7 100644 --- a/libavcodec/wavpack.c +++ b/libavcodec/wavpack.c @@ -1526,10 +1526,10 @@ static int wavpack_decode_block(AVCodecContext *avctx, AVFrame *frame, int block } /* clear DSD state if stream properties change */ - if (new_ch_layout.nb_channels != wc->dsd_channels || - av_channel_layout_compare(&new_ch_layout, &avctx->ch_layout) || - new_samplerate != avctx->sample_rate || - !!got_dsd != !!wc->dsdctx) { + if ((wc->dsdctx && !got_dsd) || + got_dsd && (new_ch_layout.nb_channels != wc->dsd_channels || + av_channel_layout_compare(&new_ch_layout, &avctx->ch_layout) || + new_samplerate != avctx->sample_rate)) { ret = wv_dsd_reset(wc, got_dsd ? new_ch_layout.nb_channels : 0); if (ret < 0) { av_log(avctx, AV_LOG_ERROR, "Error reinitializing the DSD context\n");