From patchwork Fri Mar 18 01:07:29 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Almer X-Patchwork-Id: 34828 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6838:3486:0:0:0:0 with SMTP id ek6csp1404210nkb; Thu, 17 Mar 2022 18:08:09 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxSlMNPo4sSFck/mLqa4Xx3lUtHyb6MGTarU93V1XIeW8/cKwYJDAgtSIHyQGujDLKJkZ8u X-Received: by 2002:a17:907:1b09:b0:6d8:faa8:4a06 with SMTP id mp9-20020a1709071b0900b006d8faa84a06mr6761374ejc.701.1647565689277; Thu, 17 Mar 2022 18:08:09 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1647565689; cv=none; d=google.com; s=arc-20160816; b=bbScxl65NprN0wR3zCOPy5YpF1wr6l8tk2kpeRevklTJyEbyUMi0deDBrfNs1un5b5 2e0y0y/z1HXm13qsnZn/1mPoCuXUEIjRcIbmn2MJjBHrdYnHckehoZ0Ivgr6Fu+bYaJ2 2Te+qN051aR9vAEvse+j4Wct10Slj1MQHYiU7E/nUvBpkrxL5kpreFth6tDgrmgZ1OdV Z3PGMJt9/XM5i8WdLehpsDpE3YqkkbiI3lmqV/x2YhqaB/dNCy5AMMcVDwxWVmQXoKsP VTknLqneFX3XL5uTZ6fTIc1vhW5T1a+o7ZGxS7BF09WwxmcCn8gZnI8ptWXhsE8vEROw 0gEw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:reply-to:list-subscribe :list-help:list-post:list-archive:list-unsubscribe:list-id :precedence:subject:mime-version:message-id:date:to:from :dkim-signature:delivered-to; bh=iuhmmduxOtDp0QR2ka0pqx1yMAkrBDBw+AD2zjNKvTA=; b=K/b/IMyaCNk5LHNxKitA0AHL8h72cQkbZoRlVbs4ZCjPR64lWUHHn8QZPg8oV1xXQ/ GBs/rpYTtdc+ONzvoSSAcFZGujhEDQU5sWkRDZwPp+/YXiLyWleimSK3A8RIYyHLp4VX OHDsN3/URLCpELzDv45USQhD5yaGwhyBBXotKIcdGLBYztmEZ2YFzMOgu2ylHDw5Y9EA 3wQ9lr0hlEGRusTs++RbgXz4W1nylFdb80NuF9CmnSrGWiHXgnN1ZYutMgP52I9hhEp9 vpC4wNZG/tsyGO+XSisQ0V4Iyhrr3q8BX6ypDNmQmvWCOaqhcnBaN8fXB2m8dProYKZm KuDg== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20210112 header.b=a+KLvbsS; 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=gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id r1-20020a056402234100b00418c2b5be1dsi2633674eda.255.2022.03.17.18.08.08; Thu, 17 Mar 2022 18:08:09 -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=@gmail.com header.s=20210112 header.b=a+KLvbsS; 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=gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 2383368B0A8; Fri, 18 Mar 2022 03:08:06 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-oi1-f178.google.com (mail-oi1-f178.google.com [209.85.167.178]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id E8AD968A5B3 for ; Fri, 18 Mar 2022 03:07:59 +0200 (EET) Received: by mail-oi1-f178.google.com with SMTP id o83so7488876oif.0 for ; Thu, 17 Mar 2022 18:07:59 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:subject:date:message-id:mime-version :content-transfer-encoding; bh=QxKqyyusM8bE4Z7IsNYaKVSyBj4LOoki3Zbk3yzcfiQ=; b=a+KLvbsSpSTsg1V/Lro/gi/e93PKKpWXu0fQdew8d3mX7krPCK6973KTzfbL5C41Ai I6/DQ5J5elK8RPges2mECHggIE0yFeBgO7LB4DJqGGyV73pph4w4yCb/UPj6QepfLP4D NBqIFj/SOL+kK8Lr1ZOcmMndXbZ+cBU+7PNNM5YdCfF5L+QKqZ/Mij/EqRZaT8fXAUrZ RvdD9wcXVlCThZ4fbliod8+L8NozaXwMG0Oj0cwRQ4jfadLwSndJLR2/zChFJUQ3E31X 3Odj1C8UEvvU1+AFvrExMl/wSLPXp2GEyldYwL1wK6Gno00Cir6nUwCzlf1uKSgAl9Tb njLA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:subject:date:message-id:mime-version :content-transfer-encoding; bh=QxKqyyusM8bE4Z7IsNYaKVSyBj4LOoki3Zbk3yzcfiQ=; b=lXHfInPj4FR6Xg+Nv/vGJBYm+0WI/CZid53RxZfqCyHxS5x+esow/VONSUjubGO3ps yItGk8n4hcEJ6f6NPj3tmtFhQ0VYEkBQidqFgLfkGi6lsTzIrwnWgPfRZxj08if0p9+v /aGlwwhICdFlwJGv5FFijkao+Pqay90uORTGX6psh2FuOsqKCwZgHcuqFvJNRfzNbExy fibAqJGwok22Hy2kID+0w+F6rSGvTK8GsaUsNYpyhKXyB5qnfSSa1FmhDCoiHg/G3k6f rORRIFfsGhJiY5XHRU7DZaPfcgBa2FrkamAKDzSr9DGlgvCpM6tc2/FMy8/EvcEAEGPw qo5w== X-Gm-Message-State: AOAM533S4cytwcAA67efho3zIPfETFDUXE2fXXPXaMRQbycQlw20bDdg x2RfXBvLH7X7UClHh34RVGKcBxyYLjP2Fg== X-Received: by 2002:aca:2110:0:b0:2ec:b1cf:2dda with SMTP id 16-20020aca2110000000b002ecb1cf2ddamr7196950oiz.143.1647565678001; Thu, 17 Mar 2022 18:07:58 -0700 (PDT) Received: from localhost.localdomain ([186.136.131.95]) by smtp.gmail.com with ESMTPSA id l12-20020a056808020c00b002da28c240dfsm3176275oie.16.2022.03.17.18.07.56 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 17 Mar 2022 18:07:57 -0700 (PDT) From: James Almer To: ffmpeg-devel@ffmpeg.org Date: Thu, 17 Mar 2022 22:07:29 -0300 Message-Id: <20220318010729.12418-1-jamrial@gmail.com> X-Mailer: git-send-email 2.35.1 MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH] avcodec/wmaprodec: ensure channel count in the private context and decoder context are consistent X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: a2t7cKM3FxnZ avctx->ch_layout will be reinitialized using channel_mask later in the function. Signed-off-by: James Almer --- libavcodec/wmaprodec.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavcodec/wmaprodec.c b/libavcodec/wmaprodec.c index 5c1d38eca5..6a8b895c1b 100644 --- a/libavcodec/wmaprodec.c +++ b/libavcodec/wmaprodec.c @@ -402,7 +402,7 @@ static av_cold int decode_init(WMAProDecodeCtx *s, AVCodecContext *avctx, int nu s->decode_flags = AV_RL16(edata_ptr+14); channel_mask = AV_RL32(edata_ptr+2); s->bits_per_sample = AV_RL16(edata_ptr); - s->nb_channels = avctx->ch_layout.nb_channels; + s->nb_channels = channel_mask ? av_popcount(channel_mask) : avctx->ch_layout.nb_channels; if (s->bits_per_sample > 32 || s->bits_per_sample < 1) { avpriv_request_sample(avctx, "bits per sample is %d", s->bits_per_sample);