From patchwork Wed Oct 24 20:03:29 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "pkv.stream" X-Patchwork-Id: 10773 Return-Path: X-Original-To: patchwork@ffaux-bg.ffmpeg.org Delivered-To: patchwork@ffaux-bg.ffmpeg.org Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by ffaux.localdomain (Postfix) with ESMTP id 47D2A44B53D for ; Wed, 24 Oct 2018 23:08:50 +0300 (EEST) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id AC87D68A659; Wed, 24 Oct 2018 23:08:21 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-wr1-f44.google.com (mail-wr1-f44.google.com [209.85.221.44]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 27C24680056 for ; Wed, 24 Oct 2018 23:08:16 +0300 (EEST) Received: by mail-wr1-f44.google.com with SMTP id l6-v6so6934958wrt.1 for ; Wed, 24 Oct 2018 13:08:45 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=to:from:subject:message-id:date:user-agent:mime-version :content-language; bh=OxhuHqq+Qdppj1aNz2dakve+4p0p4iMzOUtraMhMS70=; b=VMdNIV5eixpalhQXQa3lItXfsU+DZYH5pf2qW14N4ZcbpBvFygo3lj8nwF6rH4wEXK 4eJ1qCqnlSXbCCZIY8CdwXQ49/M0u3MmbnViIEwmOXYnTx1eZEJAgLrKqu8X6aTmnyN3 FjWwrwVkGCALC0jftq849tS9SgyrrvXVMn6ijCIENuW9WHJzPFu4h2YaiIeqydUhbw8N WJUrXlO7XA3nXBEMbjwTNapUiRNN3lhvlxC6lSMupUeztSLnk7h/7L3mTGNt71vzYT6o 2s9SvQ+ZagisXwGMhMb9ChV0XNEY6xbwv41XsLnZK/4Sf+55zzCeT17bDTdy/zyvAmMQ IAPw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:to:from:subject:message-id:date:user-agent :mime-version:content-language; bh=OxhuHqq+Qdppj1aNz2dakve+4p0p4iMzOUtraMhMS70=; b=h+sDtBBGuQjKFe1fUDiP6Jp2H83P3KDgilrXRdNdvhiq5cKW2f8iOFKl5FYcAa8Hva ru38aMsAxDr6vRMylZ7dtUq1jjNdo7t7NNho+Wc7d8yD7k95qSO8iiksp7x7P4t3/fH7 YXwWZP1PsklZQ42a6yOdCqDbGvcS7vFgMEYraDt/AEsYSx4BHNPBioDOx6tZOFJLDIxb 5lTBi1EAQfFYXwXW/+tlrktn4q0vwAFLz6bQrTfX5s4GcGdyMrbTcDOlOmaiElgwcOvB +zEuz0oZZw6gXbLqQDARW9Mupf/98XCZveGgBPUFR5eTJdn7018t+N2DCMFv3nfzpGLz ucVw== X-Gm-Message-State: AGRZ1gLpaB+8t595I3Uh9dMgUgZrebvMDIeHTV3dD8Gp60xGkpT3sjU8 HT5IKVeMH5uWcvzrvm8WXMHUM8U5 X-Google-Smtp-Source: AJdET5eAtD0+1g/1q9vIS/Z7RPOhtM/FnDUSonzt/5Y+M7HSuewTSIdhgrwNu/fi8HQsuu65wFSWxw== X-Received: by 2002:adf:ff4e:: with SMTP id u14-v6mr1218286wrs.232.1540411414693; Wed, 24 Oct 2018 13:03:34 -0700 (PDT) Received: from [192.168.0.101] (176-159-7-188.abo.bbox.fr. [176.159.7.188]) by smtp.googlemail.com with ESMTPSA id q17-v6sm5310525wrw.19.2018.10.24.13.03.33 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 24 Oct 2018 13:03:33 -0700 (PDT) To: ffmpeg-devel@ffmpeg.org From: "pkv.stream" Message-ID: <8bca1fd5-e779-685d-e0e0-3ec29cb7ed62@gmail.com> Date: Wed, 24 Oct 2018 22:03:29 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:60.0) Gecko/20100101 Thunderbird/60.2.1 MIME-Version: 1.0 Content-Language: fr Subject: [FFmpeg-devel] [PATCH v3 2/3] avcodec/aacenc: Add PCE support for 11 to 15 channels X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 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" unchanged from previous version From 85bf92a516779919399979670a185710d4616f6f Mon Sep 17 00:00:00 2001 From: pkviet Date: Sun, 16 Sep 2018 01:46:05 +0200 Subject: [PATCH 2/3] avcodec/aacenc: Add PCE support for 11 to 15 channels This adds supports to 11 to 15 channels through PCE. Signed-off-by: pkviet --- libavcodec/aacenc.h | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/libavcodec/aacenc.h b/libavcodec/aacenc.h index d970d0af05..14b711f964 100644 --- a/libavcodec/aacenc.h +++ b/libavcodec/aacenc.h @@ -360,6 +360,46 @@ static const AACPCEInfo aac_pce_configs[] = { .config_map = { 6, TYPE_CPE, TYPE_CPE, TYPE_CPE, TYPE_SCE, TYPE_CPE, TYPE_SCE }, .reorder_map = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }, }, + { /* Arbitrary layout selected to provide 11 channels; mask = 0x5F37 */ + .layout = AV_CH_LAYOUT_OCTAGONAL | AV_CH_TOP_CENTER | AV_CH_TOP_FRONT_LEFT | AV_CH_TOP_FRONT_RIGHT, + .num_ele = { 4, 2, 1, 0 }, + .pairing = { { 0, 0, 1, 1 }, { 1, 0 }, { 1 }, }, + .index = { { 0, 1, 0, 1 }, { 2, 2 }, { 3 } }, + .config_map = { 7, TYPE_SCE, TYPE_SCE, TYPE_CPE, TYPE_CPE, TYPE_CPE, TYPE_SCE, TYPE_CPE }, + .reorder_map = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }, + }, + { /* Arbitrary layout selected to provide 12 channels; mask = 0x7F37 */ + .layout = AV_CH_LAYOUT_OCTAGONAL | AV_CH_TOP_CENTER | AV_CH_TOP_FRONT_LEFT | AV_CH_TOP_FRONT_RIGHT | AV_CH_TOP_FRONT_CENTER, + .num_ele = { 4, 2, 2, 0 }, + .pairing = { { 0, 0, 1, 1 }, { 1, 0 }, { 1, 0 }, }, + .index = { { 0, 1, 0, 1 }, { 2, 2 }, { 3, 3 } }, + .config_map = { 8, TYPE_SCE, TYPE_SCE, TYPE_CPE, TYPE_CPE, TYPE_CPE, TYPE_SCE, TYPE_CPE, TYPE_SCE }, + .reorder_map = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 }, + }, + { /* Arbitrary layout selected to provide 13 channels; mask = 0x17F37 */ + .layout = AV_CH_LAYOUT_OCTAGONAL | AV_CH_TOP_CENTER | AV_CH_TOP_FRONT_LEFT | AV_CH_TOP_FRONT_RIGHT | AV_CH_TOP_FRONT_CENTER | AV_CH_TOP_BACK_CENTER, + .num_ele = { 3, 2, 2, 0 }, + .pairing = { { 0, 1, 1 }, { 1, 1 }, { 1, 1 }, }, + .index = { { 0, 0, 1 }, { 2, 3 }, { 4, 5 } }, + .config_map = { 7, TYPE_SCE, TYPE_CPE, TYPE_CPE, TYPE_CPE, TYPE_CPE, TYPE_CPE, TYPE_CPE }, + .reorder_map = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 }, + }, + { /* Arbitrary layout selected to provide 14 channels; mask = 0x2FF37 */ + .layout = AV_CH_LAYOUT_OCTAGONAL | AV_CH_TOP_CENTER | AV_CH_TOP_FRONT_LEFT | AV_CH_TOP_FRONT_RIGHT | AV_CH_TOP_FRONT_CENTER | AV_CH_TOP_BACK_LEFT | AV_CH_TOP_BACK_RIGHT, + .num_ele = { 4, 2, 2, 0 }, + .pairing = { { 0, 0, 1, 1 }, { 1, 1 }, { 1, 1 }, }, + .index = { { 0, 1, 0, 1 }, { 2, 3 }, { 4, 5 } }, + .config_map = { 8, TYPE_SCE, TYPE_SCE, TYPE_CPE, TYPE_CPE, TYPE_CPE, TYPE_CPE, TYPE_CPE, TYPE_CPE }, + .reorder_map = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13 }, + }, + { /* Arbitrary layout selected to provide 15 channels; mask = 0x3FF37 */ + .layout = AV_CH_LAYOUT_OCTAGONAL | AV_CH_TOP_CENTER | AV_CH_TOP_FRONT_LEFT | AV_CH_TOP_FRONT_RIGHT | AV_CH_TOP_FRONT_CENTER | AV_CH_TOP_BACK_CENTER | AV_CH_TOP_BACK_LEFT | AV_CH_TOP_BACK_RIGHT , + .num_ele = { 4, 2, 3, 0 }, + .pairing = { { 0, 0, 1, 1 }, { 1, 1 }, { 1, 1, 0 }, }, + .index = { { 0, 1, 0, 1 }, { 2, 3 }, { 4, 5, 2 } }, + .config_map = { 9, TYPE_SCE, TYPE_SCE, TYPE_CPE, TYPE_CPE, TYPE_CPE, TYPE_CPE, TYPE_CPE, TYPE_CPE, TYPE_SCE }, + .reorder_map = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 }, + }, { .layout = AV_CH_LAYOUT_HEXADECAGONAL, .num_ele = { 4, 2, 4, 0 },