From patchwork Thu Jan 13 01:50:48 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Almer X-Patchwork-Id: 33365 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a6b:cd86:0:0:0:0:0 with SMTP id d128csp24116iog; Wed, 12 Jan 2022 18:10:45 -0800 (PST) X-Google-Smtp-Source: ABdhPJxUQF3Wyb56G0gu8qrr0V0x6B4LpGtV0JzQ5AgV8uYLsvndHBX5hLvXnVNEeVPYv5tBQrFa X-Received: by 2002:a05:6402:3da:: with SMTP id t26mr2289313edw.116.1642039845195; Wed, 12 Jan 2022 18:10:45 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1642039845; cv=none; d=google.com; s=arc-20160816; b=mKN0y503XFVuKFIk5oPc7+ouS1/jBuYMckaZmKcGd+eCqXs4plDI4iX5T2kSD3Kw/6 e1LQaTNSP+/RJKwebIv1Z3XofcHqovvChvu5yoiciJizHfP2nv59niYzDBtsJz3//sGQ uke3pEctjf1/Ct9ww1Sovl4iEIDqzy5Pbr2kbJjaPGm+vmd45c9hbyOsCMCPMH00yAXA Ol7W5Pzt90oU6wr3YVLF5JsMFx2ZNSUWd1U9MRHwvmyIDOxA+4eZhg0h07aJjQX1qP6F XUVzxxRq3+pLNb8+wZT66W6ewAwZepsgN+Zie1S4WMn2YhteiWDv+DIyTYnZj9fukb2g L8ZQ== 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:references:in-reply-to:message-id :date:to:from:dkim-signature:delivered-to; bh=N4irvu/u+CmDCFlpe6eW0ZpfShm5EDVIqlYr2KtE3ac=; b=MSoEvzJK1e40T3zAB0Tj6c8ZbUFmOb9PLhkyE+aFHko9ZlnR+5woCJoC2I1DO0FRS9 cF98NdKq9CSgPvYo2ezV2W6zqZJUFUnCbqOHWndCuWGOAxI2n57xRiww2tLOh5iEjdlY Ms7FfJz7dTfWDAbKYUwLoJ8007DCu0UUiuUrBapqB64u4oUixFcl5hbP4bYQCCuE3jPw +Qh0RaK2VOhgvCTlC7iJ/0mJ8yIRqhr609l4PZw2XEQ5ypNKygOgLecEc6DOUDKzmepZ HV1RxHFl5b7rEs4jhfriBOmqbQq2YrpNRKiYBSRKCRS3RdyNqus04SOyeAiQEpcfIV6r Y4dQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20210112 header.b=Sd5zqyQ7; 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 zh8si707280ejb.979.2022.01.12.18.10.44; Wed, 12 Jan 2022 18:10:45 -0800 (PST) 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=Sd5zqyQ7; 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 58BC668B221; Thu, 13 Jan 2022 03:53:48 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-qk1-f182.google.com (mail-qk1-f182.google.com [209.85.222.182]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 676A668B20A for ; Thu, 13 Jan 2022 03:53:45 +0200 (EET) Received: by mail-qk1-f182.google.com with SMTP id z10so1203704qkf.7 for ; Wed, 12 Jan 2022 17:53:45 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:subject:date:message-id:in-reply-to:references:mime-version :content-transfer-encoding; bh=DhOVrKla3kszH/aOpCy49UyB1KPEff18uNGXqmvAkqQ=; b=Sd5zqyQ7vhWH9tnDD4bEODVSboll42xTXm86ZzhCXnxKJONkkMNFfkseJha54Wwt2M Q/UtJxuuuhxzHjWclr3YZXF8cKut/BgBsEt2QaTrASH5omhjpaq9HsratBT01JvhOd6k gE4EBbt/XrCLeKiowKe8xI/M1ZukVT9FqlcOPLnyi46U171VqsYEGx7yUZFP8WtnAp2G 5f5F4E5pDW1c/7toQ+qgssuas9E1vzgEPChWl+hwRsf3ttGfM8yoJFkUldMYlLdptf+z 9Dh4ApH2Co0z53j/tTYEMrMVovhVSySXhRhs3FPUu4yZlY/rDLYHvr1zGGeyaL6jhkwf K6dA== 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:in-reply-to :references:mime-version:content-transfer-encoding; bh=DhOVrKla3kszH/aOpCy49UyB1KPEff18uNGXqmvAkqQ=; b=WHjreWGZ+cgxq2mmzTuGvXNmWfaW8zXw/vggAjU8fKPw03toB4fz8uVeQLPjsMknM4 B9310Gcm/h5UnGrHpFVL0nRF//45HqiOjSsCfquWF3JgXk4C7YJqrXDuoWHKFPGhAaWD FKKGJGWn+UbZipnjveN9kFLeDVoutOYwTpuN2xJpvpVX8jY7j9o27GIjruULV5SpH6I1 WwhyxSmXBuSxR/gguTVqxAG3dtaMLU2LCDLqi5zu1mo1wJtLm7DTcpe4muULhsHMZgGs oTYdWE1G7kv4zkFQuVggG47e8bqw4ezN3X12nrAyx268+p8Yvp3wWhUy6xccC+H2nhNp CnJQ== X-Gm-Message-State: AOAM532gB+pGz+Ezls8aaeRLqNKhAvlQKK6gwYcmOWMtwSGnllVYnIdm NeLNtKgsZx0b/wcdquAKh5rXAfsU3T0= X-Received: by 2002:ae9:ee08:: with SMTP id i8mr1836447qkg.73.1642038824008; Wed, 12 Jan 2022 17:53:44 -0800 (PST) Received: from localhost.localdomain ([186.136.131.95]) by smtp.gmail.com with ESMTPSA id i21sm1204710qti.31.2022.01.12.17.53.43 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 12 Jan 2022 17:53:43 -0800 (PST) From: James Almer To: ffmpeg-devel@ffmpeg.org Date: Wed, 12 Jan 2022 22:50:48 -0300 Message-Id: <20220113015101.4-87-jamrial@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20220113015101.4-1-jamrial@gmail.com> References: <20220113015101.4-1-jamrial@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 086/281] kvag: convert to new channel layout API 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: t8kM3Ewj5vBi Signed-off-by: James Almer --- libavformat/kvag.c | 19 ++++++------------- 1 file changed, 6 insertions(+), 13 deletions(-) diff --git a/libavformat/kvag.c b/libavformat/kvag.c index a277c28128..5cb856cf07 100644 --- a/libavformat/kvag.c +++ b/libavformat/kvag.c @@ -71,18 +71,11 @@ static int kvag_read_header(AVFormatContext *s) par->codec_id = AV_CODEC_ID_ADPCM_IMA_SSI; par->format = AV_SAMPLE_FMT_S16; - if (hdr.stereo) { - par->channel_layout = AV_CH_LAYOUT_STEREO; - par->channels = 2; - } else { - par->channel_layout = AV_CH_LAYOUT_MONO; - par->channels = 1; - } - + av_channel_layout_default(&par->ch_layout, !!hdr.stereo + 1); par->sample_rate = hdr.sample_rate; par->bits_per_coded_sample = 4; par->block_align = 1; - par->bit_rate = par->channels * + par->bit_rate = par->ch_layout.nb_channels * (uint64_t)par->sample_rate * par->bits_per_coded_sample; @@ -90,7 +83,7 @@ static int kvag_read_header(AVFormatContext *s) st->start_time = 0; st->duration = hdr.data_size * (8 / par->bits_per_coded_sample) / - par->channels; + par->ch_layout.nb_channels; return 0; } @@ -105,7 +98,7 @@ static int kvag_read_packet(AVFormatContext *s, AVPacket *pkt) pkt->flags &= ~AV_PKT_FLAG_CORRUPT; pkt->stream_index = 0; - pkt->duration = ret * (8 / par->bits_per_coded_sample) / par->channels; + pkt->duration = ret * (8 / par->bits_per_coded_sample) / par->ch_layout.nb_channels; return 0; } @@ -147,7 +140,7 @@ static int kvag_write_init(AVFormatContext *s) return AVERROR(EINVAL); } - if (par->channels > 2) { + if (par->ch_layout.nb_channels > 2) { av_log(s, AV_LOG_ERROR, "KVAG files only support up to 2 channels\n"); return AVERROR(EINVAL); } @@ -168,7 +161,7 @@ static int kvag_write_header(AVFormatContext *s) AV_WL32(buf + 0, KVAG_TAG); AV_WL32(buf + 4, 0); /* Data size, we fix this up later. */ AV_WL32(buf + 8, par->sample_rate); - AV_WL16(buf + 12, par->channels == 2); + AV_WL16(buf + 12, par->ch_layout.nb_channels == 2); avio_write(s->pb, buf, sizeof(buf)); return 0;