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 F1A524B092 for ; Mon, 27 May 2024 17:36:38 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 172E668D44A; Mon, 27 May 2024 20:36:35 +0300 (EEST) Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-db5eur01olkn2039.outbound.protection.outlook.com [40.92.64.39]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id B275768D199 for ; Mon, 27 May 2024 20:36:27 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=V40d/lgOZMHcw/SFXoSnX/TdarHNHpCBfQYu9eN852GzASSumKppyExLg7D6u0Z3qIpm4CXjum/NWkfGFVkJX24O+y9qlPEaQ9K9NOxsKwyJ9PirLaRjQ2deNdXQWJ2Z4YOLcsuPpvrMciQ0N895JLWUwZWGT3CF6+h/JZIx1+u4ajUiLjtyznCBKAtQWB2LgXSxcsTi0vTAqEa5n2Ybo4PeZCQyp74HRohi2iiplt0QF7GkiWTcKJFy7RhvLSuNTvYBaIuASGr7xcdD2B3AS5TqFYyKjKb5rRA/lchruUOIryHD8Pqjx6sNcAQtcDLw9dgXCRIZyx1L1vF0fjryYQ== 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=gTRG3Xt6iolF47iUc9xGfiyWf+rTLQANUla6gR01RSE=; b=TIzwA9lF+MkICzmqFhKM8Z2PDTAWFvgdbOYXms5vpa6fsPeaZmAlfiO+ljC7p+aP1Zf5hBKokM8IsaBQMVUTiIweV2y/zuoqajKmVKnewGEbcM6xpQvl3wa8qTla7HL/LyWi9Uyk94ak4/IROwY1idv476MBMYvp58MBA6HK7bI3NsKP1w82OfYXpKsqPuvKAoYGEaOmhWHkXnBrKwtz4raobtgOwLIjBU/EYNRQx/KPt/yyWfpLF9KGuCwqDr6EWQlsXvzNXJumgtYd9k7VAdwnBbVtKMyhIPTYmY+PU7yXrqL7LYsSjSLtMI4FpRc19DlN2qX+sTiPzlsIV9aF+w== 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=gTRG3Xt6iolF47iUc9xGfiyWf+rTLQANUla6gR01RSE=; b=jLGCEHlYmvlUOW42Jq4rpzhvNrEWb0S+xsntIAG4HYbaMCJbKBLvhnvVPaec2bnxx9CwCwjc9FK4kckXgpYpTvhF6OO8BJ9E/cIv8HMUAcPRrV/1PHjGGclNs1FP5CSKxsvvHESQxmTs2+zN951whReJ6KnJegPouSQGuRdzoLaSt+PUZBTMMUIY91F/p1INbs6mAYiIcASSyB/4PlYg/4lNf40In8Gj5PVFiADBVm9cdFOpS5KX6UQyeOCGBlG3O7Y1x4sZGuxu9S/9wJDEb0Mv/iDb0UdpcuXNKimFcVzbHZDpH4c51w6cTuPVvJzzurssEFq0X3CZzdv+lySlQQ== Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) by PR3P250MB0179.EURP250.PROD.OUTLOOK.COM (2603:10a6:102:17a::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7611.29; Mon, 27 May 2024 17:36:26 +0000 Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM ([fe80::384d:40d4:ecb7:1c9]) by AS8P250MB0744.EURP250.PROD.OUTLOOK.COM ([fe80::384d:40d4:ecb7:1c9%4]) with mapi id 15.20.7611.025; Mon, 27 May 2024 17:36:26 +0000 Message-ID: Date: Mon, 27 May 2024 19:36:23 +0200 User-Agent: Mozilla Thunderbird To: ffmpeg-devel@ffmpeg.org References: <20240525022813.2292001-1-dev@lynne.ee> <20240525022813.2292001-10-dev@lynne.ee> Content-Language: en-US From: Andreas Rheinhardt In-Reply-To: <20240525022813.2292001-10-dev@lynne.ee> X-TMN: [SKvhvBfGIythiGgSFRLaUvoy70EA3ap7xKabCqzlQC0=] X-ClientProxiedBy: ZR0P278CA0007.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:16::17) To AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) X-Microsoft-Original-Message-ID: <7201e887-62d9-4402-bbdd-66f272a8a278@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AS8P250MB0744:EE_|PR3P250MB0179:EE_ X-MS-Office365-Filtering-Correlation-Id: df7f0990-8e39-4c53-1db4-08dc7e7388a5 X-Microsoft-Antispam: BCL:0;ARA:14566002|461199019|3412199016|440099019; X-Microsoft-Antispam-Message-Info: QJQqwtIYjgBbEiYKmhML17r3bW4SeMrhhzF3Tg7lsrN9HSDyo/jzylfTQlSKPnhRIs3F2sOsFv62SXFOBviwthQFvT5XVVUtxF7/1y4w4pDJkQhzY8dPpPnAzT1ateqCNitt7Hs14uQ5ukNb+XZQ1n4yMxOgG13JQhBAEh2LfLZhG5KC0ttGc5w9FyAq/JjY+qos0Fa/Bv+oupn0YyTRQjNU/7KmoP3tmrNjG7A/+vcF0jDL613GCXBg0QQI1+APSg4c3Us/lbZ3sElxcxbhAsWOWCYufH7izqRSvmDGLfGClM+bvenv8cHXq4gbOaciKvzMQRLTrYtXlzWsREjLLXflKZ87p/mu3W+E4ramwMhz7s0lkNavITlb6ira+HksSBRkpHaLiimrESjOquwuiNmu6gx5AwO8pZWZMWVE1rVNrEfpEslV1RMPLNem80YTUhTnLR2jT+8mxGA/Rbo5wtJF46ZboUvHbxdbjmYlgffDvmf6FcgdXr7fqvqvWKwl+e2REuGADhYc4CW0JslddHD1jzb9OgOwyen+8TwefmmjJfKsPwd2GnvCiIusZcBB X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?MVdoVzE0ZHFUcEJ2Z2pBZ3kwUVNYckFLT2VxMWFObUlPRTVOaU9PTVJmK3Ji?= =?utf-8?B?NFU2KzhqNUpqSE5pTzBRY3piZmE5UHdFRzdGUjljZjkxdFNhVDJ5cldmd2FP?= =?utf-8?B?UTRZTFU3VmFFakt6QmpnYmVrenV6VTRxaGtKK0xITldIRzRNV2ZpL2xNdmYy?= =?utf-8?B?ZzNZSnZxRDRWMVVUZlBsaUtQaStTWU0wV3ZDQk9GTW9POHpDcEZOVXJaRm1O?= =?utf-8?B?WHlzK3hoc3Z0UFV0VmNWS2hXVUIrd2dSYWZyUVlIVEdISldEYWhPQUdLeEE3?= =?utf-8?B?U1JvREFaUklxdVpjOGxBUGJ1MUxzZVh1Y2xXTHJqRE5ncWR1cjl1azdTWEt2?= =?utf-8?B?WTBkM2tGYmxKWjE2YUp1Q01JNlhuN0ZzQ2JlLzNnMG44b3FOZFpPaGVJN2tp?= =?utf-8?B?a2ptaDg4ZFlTK0s1RFBLdjI1ZkVLTTk4WFYxZDE5dHY1UlhzckpaMWxoNVpW?= =?utf-8?B?Tks3Mm96d280VWcxdnlvSGg4ZUpNRHlMVVhyVE0rdmlJR3NFV1NVOWY0M0tV?= =?utf-8?B?MkVwZVYzTkZTdU0xampqVERGeC9pZk1RUTFLekJqUkNJR3ZTdXk4anc5NUkw?= =?utf-8?B?S05MQUloVlRFUm4vYXJ4RXNqYXc3VGFaQytiT2J5UkY4MGwzWUlGeS9uY1NF?= =?utf-8?B?NUEyWjIwbGdLdVFEaHB0TVpIa2RYN09pNWh0aWxsdnNSN1VBZExSTEdNR3Jh?= =?utf-8?B?Znc5Q3JPbStSZ0ptT3oxTjJkN09pV01KTTZnOTd1SStaYTBiVXBZaHVTcE95?= =?utf-8?B?ek0yUVE5QjlpdFcvdXM4QnhwbFhwYldraUYweGl4VmozMXhOeEpiV3h1ajZ2?= =?utf-8?B?ZmRXa2Yvd0FCNDJkNzF4TnRjYmI4QzJvMWFETzlBWkU0dHZ5dGJKRnRjY3Bx?= =?utf-8?B?WURzaFdNQTVSS2kvQS9sZHNYVjFzTndETDJsTFkzQzdSQ0xoazdRNFlXbzRR?= =?utf-8?B?eU5idURMVXdFUTBJYWtIZjJ0ZFhvR0l1TXNXQUtuWWszT0JoZlVUL3BXOHZh?= =?utf-8?B?ajlPTVVOTHdpTldPOUdrdnBuS01HczdoVEdydmRxdW5Hc0pyTVFBMnpkcG1I?= =?utf-8?B?aStBSFpFWC9rZ1NjYnRvc2JBWERaTUMwbkR3V2VsWVFKNlFTSCtOT080OE1T?= =?utf-8?B?V1hlT1dBcGh5ODdScjh5KzBSNlE1QXRhK1FpRU5zN3BYM05jWlJnRjdRQkN4?= =?utf-8?B?dWJ4ZytSV01SWVFSSEFoMUFJRDgvV21iWFRSTmNIT3l5b2ZYUDVMUUxxWjZT?= =?utf-8?B?Sis5UlVFdzFjL1BDZHZDMHk1RVhGVXRFNGNpZUQvelAzSFN2YVVuT1ZDaHA3?= =?utf-8?B?ZmVkeCthSmVFcjRtR3NGNnkxeGlqZmt2Yk5VMFEzSDhoVlNyT0x3WkFPRVlB?= =?utf-8?B?VW56dCsveGZxL2RUWkRpcjE0WCtIdFYzc0t6UUYya3RFa0NSVXplQWVDSFRn?= =?utf-8?B?T0E3ZUpPdGo0a3BPZW02Q1JJNEEwTVdqLzVncTFSWUplNno0ZjJEL0k0eHB1?= =?utf-8?B?R3lxVytnV29iVGpwLzBKa0UzL1RGSkZYaGFyMWl3Y1NhMGdqT1JtMy9qK2tp?= =?utf-8?B?TGttU1lNQWRiOTR0UFhnVGFJb1Rjb3lhZ2c2NjNFcERjZnhyVmNEaXRtRWdN?= =?utf-8?B?NFV5WmNubXcySUQrVTBKcW9GQ3d2QnRwUUJIUkYyeEN5azNzRE01Nkdub0J3?= =?utf-8?B?RTliUUhKbVBINzBVQmZnaERUazRZWllCck13cTBndkhRV2xtU21SQlF3PT0=?= X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: df7f0990-8e39-4c53-1db4-08dc7e7388a5 X-MS-Exchange-CrossTenant-AuthSource: AS8P250MB0744.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 May 2024 17:36:26.0274 (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: PR3P250MB0179 Subject: Re: [FFmpeg-devel] [PATCH v3 09/10] aacdec: add a decoder for AAC USAC (xHE-AAC) 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-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: Lynne via ffmpeg-devel: > This commit adds a decoder for the frequency-domain part of USAC. > > What works: > - Mono > - Stereo (no prediction) > - Stereo (mid/side coding) > - Stereo (complex prediction) > > What's left: > - Speech coding > > Known issues: > - Desync with certain sequences > - Preroll crossover missing (shouldn't matter, bitrate adaptation only) > --- > libavcodec/aac/Makefile | 3 +- > libavcodec/aac/aacdec.c | 188 +-- > libavcodec/aac/aacdec.h | 187 +++ > libavcodec/aac/aacdec_ac.c | 208 ++++ > libavcodec/aac/aacdec_ac.h | 54 + > libavcodec/aac/aacdec_dsp_template.c | 4 +- > libavcodec/aac/aacdec_latm.h | 14 +- > libavcodec/aac/aacdec_lpd.c | 198 ++++ > libavcodec/aac/aacdec_lpd.h | 33 + > libavcodec/aac/aacdec_usac.c | 1592 ++++++++++++++++++++++++++ > libavcodec/aac/aacdec_usac.h | 37 + > libavcodec/aactab.c | 42 + > libavcodec/aactab.h | 10 + > 13 files changed, 2494 insertions(+), 76 deletions(-) > create mode 100644 libavcodec/aac/aacdec_ac.c > create mode 100644 libavcodec/aac/aacdec_ac.h > create mode 100644 libavcodec/aac/aacdec_lpd.c > create mode 100644 libavcodec/aac/aacdec_lpd.h > create mode 100644 libavcodec/aac/aacdec_usac.c > create mode 100644 libavcodec/aac/aacdec_usac.h > > + > + if (samples) { > + frame->nb_samples = samples; > + frame->sample_rate = avctx->sample_rate; > + frame->flags = indep_flag ? AV_FRAME_FLAG_KEY : 0x0; > + *got_frame_ptr = 1; > + } else { > + av_frame_unref(ac->frame); > + frame->flags = indep_flag ? AV_FRAME_FLAG_KEY : 0x0; > + *got_frame_ptr = 0; Doesn't this actually imply that you need to remove the intra-only flag from the AAC codec descriptor (which would then also affect (de)muxers and the encoders (which would need to be updated)? > + } > + > + /* for dual-mono audio (SCE + SCE) */ > + is_dmono = ac->dmono_mode && sce_count == 2 && > + !av_channel_layout_compare(&ac->oc[1].ch_layout, > + &(AVChannelLayout)AV_CHANNEL_LAYOUT_STEREO); > + if (is_dmono) { > + if (ac->dmono_mode == 1) > + frame->data[1] = frame->data[0]; > + else if (ac->dmono_mode == 2) > + frame->data[0] = frame->data[1]; > + } > + > + return 0; > +} _______________________________________________ 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".