From patchwork Thu Jul 28 17:22:47 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Almer X-Patchwork-Id: 37027 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a21:1649:b0:8b:613a:194d with SMTP id no9csp407991pzb; Thu, 28 Jul 2022 10:23:19 -0700 (PDT) X-Google-Smtp-Source: AGRyM1sQpkrRGlmQRMWPvQ3fBus1/uMasNqNvLXo1pG3zMSaXT0q5PlQzXLKm3V+Zq+9RdlF1WgT X-Received: by 2002:a05:6402:4489:b0:43c:7789:cf43 with SMTP id er9-20020a056402448900b0043c7789cf43mr13261edb.104.1659028999005; Thu, 28 Jul 2022 10:23:19 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1659028999; cv=none; d=google.com; s=arc-20160816; b=zHy9ouCzA/QhggNZ0ywfuhF0yZjsZ8VHfS5COmPmD9mVCjKHjWJTryrKtqxsp2vTA3 ImbxWyKR+OQkyHwcFYItIqm0VPD0DJFsO2JSBNcbEVXsBsjQ0qv2ejNmVf4qIk24B+yx Ghi+7R9h7BWJmjANA81ZIpvTIhdD3a/BzTI9cLUcrB4cSPYGUFibYIY8VgT6YVWMepPu c1I3YRexelhpKx9bhI7A+Dr6CvWIhj5m0aY9WWue1oMyCyHedpixV2Akps1uawiFo5zn oXGyxxAnXUOQARMqWaZ4qB1VYNdRU2G8xtQ+vPgdM9hqo1k1Sf1ML/a0S6xeiOTdnAju 0w0w== 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=UzRK/WOeEwrbw/GQ8feqdKxH7emgQs85uW2QKG7zOLo=; b=gxume7iA9PiVw8jtuKwiyK++/GBdrYt1Xl0rMJ8rBMKI8lSbsWR5T6AJ4SZ2+yGxEH Ic/WJp745g1rQgZZxvDd3Q0CLQ4wxbtxphIys1xZn807WyUxgq7BINn6W5DO796nY6Nk Y1ShxAS361I2bAa4TUBrtNS6+oMN/kpM7shCaGzDhckbyafXKVPWu8NTUUX7I2479YgL 0BmctLImu+Gf8H4xkZ9qGE+xQQQppfNKI4UtxUPQNw17OnnxEj9CnAAALZd8UVCS8aKs QJY+gmD6LbXKydgKlh9EE3YLPXsKKEhj2u2I/Xk7hdtqA0pCcZyPaiaxCXCWphpSONEy 5Mgw== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20210112 header.b=m+iQuYIq; 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 i6-20020a1709064ec600b0072ecfeec4cbsi972930ejv.463.2022.07.28.10.23.17; Thu, 28 Jul 2022 10:23:18 -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=m+iQuYIq; 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 920C268B991; Thu, 28 Jul 2022 20:23:13 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-ot1-f52.google.com (mail-ot1-f52.google.com [209.85.210.52]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 8262D68B8DD for ; Thu, 28 Jul 2022 20:23:07 +0300 (EEST) Received: by mail-ot1-f52.google.com with SMTP id z12-20020a056830128c00b0061c8168d3faso1599424otp.7 for ; Thu, 28 Jul 2022 10:23:07 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:mime-version:message-id:date:subject:to :from:from:to:cc; bh=3o5Q6azTxvWlTshJTl451tMA6KtXop/1bid6iTrXuXE=; b=m+iQuYIqtaVipkosCIwCapiZl79UpwtNKw7PBZypgQb6FmkD+J8WHGFil+ZQPGPPp6 TJk1jZAZnK733uDEyRkbzdM4iagIZaO0lZHmgf+vvW24i676ju2U3nWpeR4zi42pRlih YUF1HMdDiiS/cDbu+n9jxR/Jj/3FCoKdTCzb8cCiZ52VmjfO4a9WcCT23NFATbMHc/7V YyqiXBWugDgHinGAIZOIcAEJASWIBEXmD3twzNU21Q1aaf7o3tZ9Drz9dWUZMkHQicA4 G2lOunyJvyhjSZkWedG7uk9wKsuLijoRd6cswTa1igZfX2LP5egReCFkdopXFf5Z7xhB 8SaA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:message-id:date:subject:to :from:x-gm-message-state:from:to:cc; bh=3o5Q6azTxvWlTshJTl451tMA6KtXop/1bid6iTrXuXE=; b=YxsLQ8JRfWoj6p/IfL4gm9GU5pJXwmmGFZxCBDFpFcWN1KllPnSaxAkjCpSZAIIEx/ VFuW2CbgdfAo8iXAw9vkI66+FD3MWDVPGtPzbc9MU3ehHUT1FQuL/SZjpNrKYArqWReQ nGXH9CaaDfEWTseECZVmaGdksvFnz2Hlw1rwcsTTwCBCsA8VGHGfA67btXNy7Ma/2XJB 3/FIwncJX/Ah7ZGqZvSTS+lUlW8gDWLDSAyoEpAqaB1LkEEd0VbhYr5Q5Qj0dba3lffK LzPFYAXbrj5aDDOCrbHpsNK1v/kLq1bGPlmJoU8bNAGFv7Ua/E+1u2xjigwZKPnhJXYu QhGw== X-Gm-Message-State: AJIora9hMav/0Euir6ZRo2XYITr3bJML0QnLRrPmdTAPT30fPoNlZbq6 uXTjcbUafZDZ2Hfbd/El/EwVon9omC+Vhw== X-Received: by 2002:a05:6830:2908:b0:61d:26f8:94c5 with SMTP id z8-20020a056830290800b0061d26f894c5mr6489otu.64.1659028984683; Thu, 28 Jul 2022 10:23:04 -0700 (PDT) Received: from localhost.localdomain ([186.136.131.204]) by smtp.gmail.com with ESMTPSA id a6-20020a0568300b8600b0061ca92ae442sm472847otv.72.2022.07.28.10.23.03 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 28 Jul 2022 10:23:03 -0700 (PDT) From: James Almer To: ffmpeg-devel@ffmpeg.org Date: Thu, 28 Jul 2022 14:22:47 -0300 Message-Id: <20220728172247.2092-1-jamrial@gmail.com> X-Mailer: git-send-email 2.37.1 MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH] avcodec/aacdec: print a log message when treating mono HE-AAC as stereo 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: 9zbpVAxeCUmV Since this behavior is intentional, use the VERBOSE level instead of WARNING as it's nothing the user should worry about. Signed-off-by: James Almer --- libavcodec/aac.h | 1 + libavcodec/aacdec_template.c | 4 ++++ libavcodec/aacsbr_template.c | 2 ++ 3 files changed, 7 insertions(+) diff --git a/libavcodec/aac.h b/libavcodec/aac.h index 53be546857..c8d6b17710 100644 --- a/libavcodec/aac.h +++ b/libavcodec/aac.h @@ -366,6 +366,7 @@ struct AACContext { int warned_960_sbr; unsigned warned_71_wide; int warned_gain_control; + int warned_he_aac_mono; /* aacdec functions pointers */ void (*imdct_and_windowing)(AACContext *ac, SingleChannelElement *sce); diff --git a/libavcodec/aacdec_template.c b/libavcodec/aacdec_template.c index 119976aa19..4266d89c6d 100644 --- a/libavcodec/aacdec_template.c +++ b/libavcodec/aacdec_template.c @@ -2584,6 +2584,10 @@ static int decode_extension_payload(AACContext *ac, GetBitContext *gb, int cnt, ac->avctx->profile = FF_PROFILE_AAC_HE; } res = AAC_RENAME(ff_decode_sbr_extension)(ac, &che->sbr, gb, crc_flag, cnt, elem_type); + if (ac->oc[1].m4ac.ps == 1 && !ac->warned_he_aac_mono) { + av_log(ac->avctx, AV_LOG_VERBOSE, "Treating HE-AAC mono as stereo.\n"); + ac->warned_he_aac_mono = 1; + } break; case EXT_DYNAMIC_RANGE: res = decode_dynamic_range(&ac->che_drc, gb); diff --git a/libavcodec/aacsbr_template.c b/libavcodec/aacsbr_template.c index b72c94b76d..dccae0526e 100644 --- a/libavcodec/aacsbr_template.c +++ b/libavcodec/aacsbr_template.c @@ -955,6 +955,8 @@ static void read_sbr_extension(AACContext *ac, SpectralBandReplication *sbr, } else { *num_bits_left -= ff_ps_read_data(ac->avctx, gb, &sbr->ps.common, *num_bits_left); ac->avctx->profile = FF_PROFILE_AAC_HE_V2; + // ensure the warning is not printed if PS extension is present + ac->warned_he_aac_mono = 1; } break; default: