From patchwork Sat Jan 20 14:11:09 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Stefano Sabatini X-Patchwork-Id: 45676 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:a402:b0:199:de12:6fa6 with SMTP id z2csp463767pzk; Sat, 20 Jan 2024 06:11:25 -0800 (PST) X-Google-Smtp-Source: AGHT+IHojsgZeVGteurwZZXrKZgrLPU5RMvw96lj/9zmiv7d8wltRBRaxUCQ9EaF4/a4xjuCnVum X-Received: by 2002:a05:6402:1ca6:b0:55a:8bff:6e37 with SMTP id cz6-20020a0564021ca600b0055a8bff6e37mr313891edb.97.1705759884803; Sat, 20 Jan 2024 06:11:24 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1705759884; cv=none; d=google.com; s=arc-20160816; b=qkWfVcxlTXT8cKuL5Gdg9yPVmZQAYVL9sJivHWNsmITa/6AV9w+N40Ld4m0zgYybel sLJekc0FcuIxmOA43BG4JrOJ8wXRRJQr44W4I9AR176g4U9sqt0QTISVYxnzwtE0LVSK qrWIQsrw9zov3MQVpwuP235nqAn4jtyVijFRvJPF5G+0uDdErEG5ybOurK0ZizQF0wuQ pUKmftAf+YJueNCKJ82XrARAFFlXHXfyRbsmhefpXs86Vihpm/xx/bgdnXdNjMC/9U29 4upp1AFqtEPiYDS6AalTaK5vVaQgPlMAq4nhnUfloPXPVjfFev8Ac191xFG/kFk4U9St At9g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:cc: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=Hv6EHAT/vgnOJWAUwlVltfngYaAMBh1pqq09aRqiq5c=; fh=QdWxt2OToL83TTnLQn0lGhLakV7i1QyAJdC8te7qN0E=; b=iWYki/MX+NP4fWgEdSylnGi88d0A0JPEE5JKE62vL6SoRO6vMVkqEwjnjUjjbk09j+ gBuLOWt4jI2qcTVOFl5gIA/QP7IVWpbN1T+H/b/Hgzj1h/DYV5d/enMPo9JKGMYpW2Mr 4zd2wMfaLbJTD1UsS0/PToVnymlMKyU1Zrll/b5VB0dbPaA1UK+91msdUBRMu8BLz2Qp xeQK0KprO5N9cfk06e8CXSm2FLlaXr8JPlK4bejmPL08TihRzMheaYZue28poensylHx /pvsfylMxpNe5uZBJk8TR/4OMx8tp9S7PcLMjo2IuDUS9/Znr5y2TygrSa0bijC0KFui 2lHQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=HaF3ek8Q; 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 m14-20020a50998e000000b00558bc74372asi8409271edb.51.2024.01.20.06.11.24; Sat, 20 Jan 2024 06:11:24 -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=20230601 header.b=HaF3ek8Q; 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 BFEB868D07E; Sat, 20 Jan 2024 16:11:20 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-ed1-f53.google.com (mail-ed1-f53.google.com [209.85.208.53]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 3730668CD6D for ; Sat, 20 Jan 2024 16:11:14 +0200 (EET) Received: by mail-ed1-f53.google.com with SMTP id 4fb4d7f45d1cf-55ad2a47b7aso302347a12.3 for ; Sat, 20 Jan 2024 06:11:14 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1705759872; x=1706364672; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=yXtQSHNmXp0HN3PxgSC4pwD6OsJ9VCNHJLAI1HPqj5Q=; b=HaF3ek8QJdI9f99/EIRkJBiJ73nwrRSziBYXJzll+qpMO/KfaU46r0mgtb1Fjm+ssd /cprXUyfz0Cz/rjaoUxkSK1ziC32thH7HROnT0g3Ui5T191AZ5TPmo64d5eE32p+e6vz c3jYJaEL86pBk7GYMC+5kW9jsyWizVuzt12i+lv0SJW37M/liOUhkQmlsV21gxGlROvO KRI8XmhGlrIJcERY4cZlc6M3VGkesRW63bcsUhaLEllWelNoaqxvi3Mwpf6J409lwt2h QxjVuO1d6DugJ38P2feMhAZvjPjksruin/SgFkIeQlLmJXvyagUr/jzM+3sydQZDqH// yzuA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1705759872; x=1706364672; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=yXtQSHNmXp0HN3PxgSC4pwD6OsJ9VCNHJLAI1HPqj5Q=; b=OdaITtNGlJ9iieZOJFbuUO9K4nUQeCc5Mf1qXixY9TEHnLMVUoampFDpzZjAb3cWa+ sbfmt/wcMFjK+lQ6YEjYteIS6iJNsKiH8w1U6WZ0nDN1WT3aqCvJtefA5jBIuB0Uska6 yVwhI/gKsrtriSsHjtY/udb6sFYsYvniRTMpJWlTJOHnSUy/em/BcmiPFuUvVcMMI+fN 1rWn6ZGogRvu5C/EZb9HwsotfOxZwXgqkhaaiCXxlgir4+Bn2KpXENOJxWWjGTZzTUf5 LYtHdW1Z6zHNzHb3r8L7ckIYsrk+c0teiy7KzHaWRnrcr5RyDwux8PaQwyJEkBY4+cq5 JDjQ== X-Gm-Message-State: AOJu0YxThkPKJLEld7cJBzGf+q8UxtesfWR1Dr9KAuOvmdfKLQLHQjx7 FWOwUJGAielPixJ8OgaA6Yfjz5AkvCAC1iFaUZ9e8MfQxBNJ9gOX9Vu4dl5I X-Received: by 2002:aa7:dbcd:0:b0:55a:4a1:3615 with SMTP id v13-20020aa7dbcd000000b0055a04a13615mr444273edt.110.1705759872215; Sat, 20 Jan 2024 06:11:12 -0800 (PST) Received: from mariano (dynamic-adsl-84-220-189-10.clienti.tiscali.it. [84.220.189.10]) by smtp.gmail.com with ESMTPSA id j19-20020aa7de93000000b0055900cc4640sm9749641edv.23.2024.01.20.06.11.11 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 20 Jan 2024 06:11:11 -0800 (PST) Received: by mariano (Postfix, from userid 1000) id D2FAFBFCDC; Sat, 20 Jan 2024 15:11:10 +0100 (CET) From: Stefano Sabatini To: FFmpeg development discussions and patches Date: Sat, 20 Jan 2024 15:11:09 +0100 Message-Id: <20240120141110.601060-1-stefasab@gmail.com> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 1/2] lavf/daudenc: clarify error messages 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 Cc: Stefano Sabatini Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: GUYyul5ODCtb --- libavformat/daudenc.c | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/libavformat/daudenc.c b/libavformat/daudenc.c index 2d84b16650..8e8bce8be3 100644 --- a/libavformat/daudenc.c +++ b/libavformat/daudenc.c @@ -25,8 +25,21 @@ static int daud_init(struct AVFormatContext *s) { AVCodecParameters *par = s->streams[0]->codecpar; - if (par->ch_layout.nb_channels != 6 || par->sample_rate != 96000) + + if (par->ch_layout.nb_channels != 6) { + av_log(s, AV_LOG_ERROR, + "Invalid number of channels %d, must be exactly 6\n", + par->ch_layout.nb_channels); + return AVERROR(EINVAL); + } + + if (par->sample_rate != 96000) { + av_log(s, AV_LOG_ERROR, + "Invalid sample rate %d, must be 96000\n", + par->sample_rate); return AVERROR(EINVAL); + } + return 0; } @@ -34,7 +47,8 @@ static int daud_write_packet(struct AVFormatContext *s, AVPacket *pkt) { if (pkt->size > 65535) { av_log(s, AV_LOG_ERROR, - "Packet size too large for s302m. (%d > 65535)\n", pkt->size); + "Packet size %d too large for s302m, must be <= 65535)\n", + pkt->size); return AVERROR_INVALIDDATA; } avio_wb16(s->pb, pkt->size); From patchwork Sat Jan 20 14:11:10 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Stefano Sabatini X-Patchwork-Id: 45677 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:a402:b0:199:de12:6fa6 with SMTP id z2csp463853pzk; Sat, 20 Jan 2024 06:11:34 -0800 (PST) X-Google-Smtp-Source: AGHT+IFUHRYCj2PXs+TkZm4KEP/L3AFcuYJniGLmaTWpYmY08Qfd8wLt0kLFMF2ulTwvLGYlZYY2 X-Received: by 2002:a05:600c:45d4:b0:40e:7c23:8969 with SMTP id s20-20020a05600c45d400b0040e7c238969mr574499wmo.114.1705759894425; Sat, 20 Jan 2024 06:11:34 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1705759894; cv=none; d=google.com; s=arc-20160816; b=nmcm3RJduU8GlXWQXdV9nGfxxe01YjFvSpVpzYIB4YvaLineIBLunK8VIyA5zuDmfx Hz3xJD3EUeJ6ob6O2oaV+vfO7+9pgqRJTX5kMvvGP/LX2Jhin8f8cFlaSP+d9PfepzPs hoIRsApopS5AvYgeP8bwGE6tyHfYm/MN8V5x5J05QsVgDvc0QSbIqmR8xhpmANMa52uP +DzuKurfzgkSOOwVq269FlDek5zXhttPfpEZ9PStH3Pbd67yqJvklpEeJB0Blg1G8WF+ LEt5cav+kf1fpx66gbmg39IyoZgBNWPD5e37GpzS5lGVMtV5TM1lalGLkJG0whI8idW7 EeYQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:cc: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=palCkD43qqIPhAuiwwLTfBR7VLcqi3ZzueHDoxg055Y=; fh=QdWxt2OToL83TTnLQn0lGhLakV7i1QyAJdC8te7qN0E=; b=DG64hVmvVD5M4pMu+ZsXTfooOclodjyUO0pVTItpMq+4Fkxpl1B4PRMUmVHVky1gMB OTe7gdw9JYzU2Plr0uKi8kRewTMNtRNs370hIJqCHgjtv6Sd+AtS3a66uT6dwN089K49 FHLKBylPQuODC7T5Agr6CjTBU0CXIJQ1+MYUxZ4qFMujgnBkSoPUtxM+gjiWT5KU1jyV 2L9hkk2sm6Kzjt4raiGCu/rPPbma3MgrbgxfvR2H0PH3FKncph6ckHiUZXpjWYBsFe6K jh2ZzBR39LoGULC88vj2MaUNA/hg4ZCooCL+yP3rsC563NInWcVAfCHyZCBIQiz+QPII SOkA== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20230601 header.b=GyzyJn9u; 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 u8-20020a50eac8000000b00558e4b60470si7909493edp.669.2024.01.20.06.11.34; Sat, 20 Jan 2024 06:11:34 -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=20230601 header.b=GyzyJn9u; 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 0494768D098; Sat, 20 Jan 2024 16:11:22 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-ej1-f48.google.com (mail-ej1-f48.google.com [209.85.218.48]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 3CB5968CF88 for ; Sat, 20 Jan 2024 16:11:14 +0200 (EET) Received: by mail-ej1-f48.google.com with SMTP id a640c23a62f3a-a28cc85e6b5so202529166b.1 for ; Sat, 20 Jan 2024 06:11:14 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1705759873; x=1706364673; darn=ffmpeg.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=uRbkgzSCZhulodzM+IymGLdN1yWnFA3TEa6uQ74w9vA=; b=GyzyJn9uMwTR0VbQ6qPJxqF/JuRdzHx7wUjOGxcQcbbsMjy8joGaPT/Rercj3GvfVv 9FbLdctThgnsVzbqubwL/OxRYcOHKZc6Hjo2r/4Tk2ZHI1I/QotHthkfN7u1lzhuBJnB dSrpYd4f4UVWNkIJ9rzLDZw/C+bEt/xDkAee3oQuSgkWI42cJZyQV5CaindkaAGHc2fE tEY72lA7puTpORAEg6uJSMSGu02wqEwf5iABVCRL94PTQ4Tlm0gvuyE7eQldVz30huNy W6yv63lxKrE8qou7RTBphB51NvVSZPW3X7+eBoS9y3iuNBOQooH5u6w8L+IoGihrYYaV T0tw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1705759873; x=1706364673; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=uRbkgzSCZhulodzM+IymGLdN1yWnFA3TEa6uQ74w9vA=; b=e0yWogPyTen/ZoYCvApGUTcwAwFy3AH6QcGpQvjHtJqfxe+i4wInRhwg+G412B7q71 JehmcsqS8pKCG4w/wxjyYmw34sZAY5mkA616N72ZaoQwEXcyYi3n29Og2iBtz4oqso12 LWJf/UcLCmmdTqdjCUGpnhwhxoXa5oY2eee5AEzSUwMBh6Pw6ELt030RoXefYB+u2hqU talf+4LafPTqrObA3uDWZWnwR/e0v+/Ll2xoWiUmSmZoxFTq3ovhE0ndRjwKhynfNCYx ULP5JeAVfEydVnO3dqX4L7QF4Hn9IRIqDu8RmTQG3zQ8/2eZv4b2VB8LienM8e53THSf gavw== X-Gm-Message-State: AOJu0YwyyLR6cI9M1KCSs/mW/46GPJ2j1QbS+Cl8EM+Szo+sTBoXep84 iZB49E0If6mebPVt3TTzEEeUVz9muSQD2vS+RvBNEUzeJyIvBGKJVwif+8AJ X-Received: by 2002:a17:907:8b95:b0:a28:d9df:40f8 with SMTP id tb21-20020a1709078b9500b00a28d9df40f8mr574766ejc.29.1705759872394; Sat, 20 Jan 2024 06:11:12 -0800 (PST) Received: from mariano (dynamic-adsl-84-220-189-10.clienti.tiscali.it. [84.220.189.10]) by smtp.gmail.com with ESMTPSA id vi14-20020a170907d40e00b00a2f1a1259fesm3219203ejc.207.2024.01.20.06.11.11 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 20 Jan 2024 06:11:11 -0800 (PST) Received: by mariano (Postfix, from userid 1000) id D5849BFCDA; Sat, 20 Jan 2024 15:11:10 +0100 (CET) From: Stefano Sabatini To: FFmpeg development discussions and patches Date: Sat, 20 Jan 2024 15:11:10 +0100 Message-Id: <20240120141110.601060-2-stefasab@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20240120141110.601060-1-stefasab@gmail.com> References: <20240120141110.601060-1-stefasab@gmail.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 2/2] doc/muxers: add daud 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 Cc: Stefano Sabatini Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: EE/O9qJyGbYw --- doc/muxers.texi | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/doc/muxers.texi b/doc/muxers.texi index a49853daf2..a9f2f6fe17 100644 --- a/doc/muxers.texi +++ b/doc/muxers.texi @@ -1312,6 +1312,32 @@ ffmpeg -re -i -map 0 -map 0 -c:a libfdk_aac -c:v libx264 \ -f dash /path/to/out.mpd @end example +@section daud +D-Cinema audio muxer. + +It accepts a single 6-channels audio stream resampled at 96000 Hz +encoded with the @samp{pcm_24daud} codec. + +In addition, each muxed packet size must not be greater than 65535 bytes. + +@subsection Example +Use @command{ffmpeg} to mux audio. + +The command convert the input audio to a @samp{5.1} channel layout +resampled at 96000Hz: +@example +ffmpeg -i INPUT -af aresample=96000,pan=5.1,asetnsamples=3640 slow.302 +@end example + +The @samp{asetnsamples} filter is used to reduce the number of samples +of each audio packet, with a size computed according to the formula: +@example +65535 / (@var{channels} * @var{encoded_sample_size}) = 655535 / (6 * 3) = 3640 +@end example + +The @var{encoded_sample_size} = 3 factor is due to sample size of the +@samp{pcm_24daud} encoder. + @anchor{fifo} @section fifo