From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTP id 646AC49295 for ; Sun, 7 Apr 2024 20:51:50 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 0B0BF68CF45; Sun, 7 Apr 2024 23:51:48 +0300 (EEST) Received: from mail-pf1-f170.google.com (mail-pf1-f170.google.com [209.85.210.170]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id C919768CDE3 for ; Sun, 7 Apr 2024 23:51:41 +0300 (EEST) Received: by mail-pf1-f170.google.com with SMTP id d2e1a72fcca58-6ed2dbf3c92so251417b3a.2 for ; Sun, 07 Apr 2024 13:51:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1712523099; x=1713127899; darn=ffmpeg.org; h=content-transfer-encoding:in-reply-to:from:content-language :references:to:subject:user-agent:mime-version:date:message-id:from :to:cc:subject:date:message-id:reply-to; bh=fyYrpKMl3tmOUqeN3OLIi2kJz4OPRiKqhbsa8pFr5mQ=; b=Tlsl6qHkgJpIcAt5KYlBYH1P7sVA4KfYPEnvQMJPgfdeg4AlpjD0rGj2JQPPU1eblq 8M4K183MGtexVIQ2f74Z+ukAWILhG63gItd7Nwbus0qK+a8pOa39GtROcL+BrGLbATG6 h3gFsnV5vaKuDySeOC2tDfwdffYZ9nfDTzzYAQ+hwFaHUGGkZ42IJ2aLzdMhMtPEhFXu cVPV3wzSDunncQLnp21wn4A/nOQTj/dX2CAOesDp4Absm7KNrahDrPuGW8AFbqce2tmu i1vhVvAxLt6+vtDk4o48Iv/+e/X03N5JMoN+RWK9Iu3ewRFrpShCQQiUVEEsR517dGsR mB5A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1712523099; x=1713127899; h=content-transfer-encoding:in-reply-to:from:content-language :references:to:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=fyYrpKMl3tmOUqeN3OLIi2kJz4OPRiKqhbsa8pFr5mQ=; b=buKZwIVWhIaxjnmcUXXoQOV/gBn3mFzUtFWnxa/WTa4vZlcRU6J4g8Jth12fRyezt8 tQm40Ny3REmXlv0oBxA+WV+5dZj46FBn/ixlOlFgzWnLiNRZ3+07XIpZN49W4na1Fjo8 MOgVuUupBxyUrjG6f/vTB1W6AyFMV3YhyQo4947dfIbJ0Vr4MLQ7R42SlU+zDsiWreOQ V5MX8LKjWqGQh3YMSafoAcVpe+cWHD4tSTx2jTx5igokMMPzM4UxNTvQWfK38NePk3p1 lNbDgHOPFC0TNYkNtBsxmsvgJKw9Rx+t+8e3lQ9D8b3lVEWtEegZoNWvqTrepX4LzG7N EZrQ== X-Gm-Message-State: AOJu0Ywva4TYLP42XXTCkJq7wXSF8e09php8F7S3Eg1Q2E+1fyj5621S 72Trf8K31mw7dp8++e38lcs87mvsiLWPrgP3KQy5IxtFEMq74ks/oP8gRbT+ X-Google-Smtp-Source: AGHT+IEvGsAc7LI69TqSfZPCjLHQJh6L/hFowpD7sE4bLxRzgPIetj5X+VGsoUC/cnXRO7AXa0ZT0g== X-Received: by 2002:a05:6a21:9181:b0:1a3:dc12:d253 with SMTP id tp1-20020a056a21918100b001a3dc12d253mr7021678pzb.46.1712523098768; Sun, 07 Apr 2024 13:51:38 -0700 (PDT) Received: from [192.168.0.16] ([190.194.167.233]) by smtp.gmail.com with ESMTPSA id j12-20020a170902f24c00b001dd2bacf30asm5377506plc.162.2024.04.07.13.51.37 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sun, 07 Apr 2024 13:51:38 -0700 (PDT) Message-ID: <5495cd91-0fcf-4ef2-a62e-e561bf436a9f@gmail.com> Date: Sun, 7 Apr 2024 17:51:38 -0300 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird To: ffmpeg-devel@ffmpeg.org References: Content-Language: en-US From: James Almer In-Reply-To: Subject: Re: [FFmpeg-devel] [PATCH 01/17] avcodec/ac3enc: Don't presume ch_layout to be AV_CHANNEL_ORDER_NATIVE 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 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: On 4/7/2024 5:39 PM, Andreas Rheinhardt wrote: > It is perfectly legal for users to use a custom layout > that is equivalent to a supported native one. Is that really the case? FFCodec.p.ch_layouts[] has a list of native ones, and the generic encode.c code will reject anything not in it. I guess the encode.c check could be improved with av_channel_layout_retype(). > In this case the union in AVChannelLayout is not an uint64_t mask, > but a pointer to a custom map. > > Signed-off-by: Andreas Rheinhardt > --- > libavcodec/ac3enc.c | 6 +----- > 1 file changed, 1 insertion(+), 5 deletions(-) > > diff --git a/libavcodec/ac3enc.c b/libavcodec/ac3enc.c > index 7a6bcf7900..dc197c1517 100644 > --- a/libavcodec/ac3enc.c > +++ b/libavcodec/ac3enc.c > @@ -2192,18 +2192,14 @@ av_cold int ff_ac3_encode_close(AVCodecContext *avctx) > static av_cold int set_channel_info(AVCodecContext *avctx) > { > AC3EncodeContext *s = avctx->priv_data; > + uint64_t mask = av_channel_layout_subset(&avctx->ch_layout, ~(uint64_t)0); Might as well use UINT64_MAX. > int channels = avctx->ch_layout.nb_channels; > - uint64_t mask = avctx->ch_layout.u.mask; > > if (channels < 1 || channels > AC3_MAX_CHANNELS) > return AVERROR(EINVAL); > if (mask > 0x7FF) > return AVERROR(EINVAL); > > - if (!mask) > - av_channel_layout_default(&avctx->ch_layout, channels); > - mask = avctx->ch_layout.u.mask; > - > s->lfe_on = !!(mask & AV_CH_LOW_FREQUENCY); > s->channels = channels; > s->fbw_channels = channels - s->lfe_on; _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".