From patchwork Sat Sep 2 17:02:46 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: aler9 X-Patchwork-Id: 43496 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:4f16:b0:149:dfde:5c0a with SMTP id gi22csp269911pzb; Sat, 2 Sep 2023 10:02:59 -0700 (PDT) X-Google-Smtp-Source: AGHT+IFyc6BjPBKjTsOYlM2IhLkL40wzZM7tppHHmUWawhoDlUxHO8H7jUOg9xNhmC+iYRSasK86 X-Received: by 2002:a17:906:309a:b0:9a5:deef:87f with SMTP id 26-20020a170906309a00b009a5deef087fmr3963509ejv.1.1693674178971; Sat, 02 Sep 2023 10:02:58 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1693674178; cv=none; d=google.com; s=arc-20160816; b=xS0EmOqfauEe0rj3FFuvKt0Qxqhe7rLibxuFZ3+8yW3hFsbJE4B+B4Cdv2xZGr149H iLw9ppa/OgKEHNl5bfolIwdrYL9oLJAgVHX0ZG+F4IO92WCI8FDuI29IiC+MZ9n7S9Ji 6vO1uzBliSqW+2ml/s/oYNMTxSI60tzZtvA6mibn9H1vh6HkzhYv/zP9X2wz6gpn2hjB Ie1cUHV3PCikTs/CXVKKJzUcz3i0IIylP9+AUvMHRmMRdT1uBOH9kwNR4N9LbjfrQJq3 HGvml6bhTcWrvkoRwdPatSadL42P1l5iUcZE/Khh0ooF2AgH6N+8dSvtTq1NqL1BiX5R 3msQ== 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:content-language:to:from:user-agent:mime-version :date:message-id:dkim-signature:delivered-to; bh=NQxop+/G9e1OX3qQV+k9nA4sRugdzhKE4sE49Q+cD94=; fh=YOA8vD9MJZuwZ71F/05pj6KdCjf6jQRmzLS+CATXUQk=; b=SYUUQpHkUye6F6zM76QF50BSJiI7gSX7GGnFgmCsFkChoEI1pDNb7CZIt1Fh+LQqK4 OAwTmdKUgtg37LLkQKZ5agJkcUull3TZIpiQjQC3iselM/GvOFfH0IqqYTQxrGa44BI2 sgLcRlakBVhdaf4CNjBlh9vf8vKvQ4VE5lNmifuCOWLtq/Ty8AzlTJRyDLvpU1kZnpSf NBbpUxpAYXicrRMmnQoNIk+6F8FhP5dxXbhoDwg3fBOOVcM5Q7AAwIcDZIn+zx/SuP9y sxS7lQ8EPfn/n2x8V214cl5W4Isin928iaqtmM47dgwWenvgaqdQHIC7LVmkhlcaSJ7u 6nrQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20221208 header.b=nEGOTyRg; 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 q19-20020a170906941300b0099bcb3ad52dsi3892738ejx.805.2023.09.02.10.02.58; Sat, 02 Sep 2023 10:02:58 -0700 (PDT) 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=20221208 header.b=nEGOTyRg; 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 0187168C79E; Sat, 2 Sep 2023 20:02:56 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-wm1-f43.google.com (mail-wm1-f43.google.com [209.85.128.43]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 23F6368A05D for ; Sat, 2 Sep 2023 20:02:49 +0300 (EEST) Received: by mail-wm1-f43.google.com with SMTP id 5b1f17b1804b1-401da71b7c5so1011825e9.2 for ; Sat, 02 Sep 2023 10:02:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1693674168; x=1694278968; darn=ffmpeg.org; h=content-transfer-encoding:content-language:to:subject:from :user-agent:mime-version:date:message-id:from:to:cc:subject:date :message-id:reply-to; bh=2G5rdN5qc852uhuCmmRnLlh7j0zjrdXsrs/0+Yiqhfs=; b=nEGOTyRgY/ouwhEzKMTcvXTqD6Ks7loxtiOLuIizP3RZAjxeyqukhYRduJuJQKP1iO cajMn5Yhbe9wgmYF6InVHJLwnSXrBfHL0CMxAh4uGQqmU/Lwo3JoSqZaOS44qv1wku5P ibKBbSi9Cr97rtzM0lNywlR5zzg2BAvpmDAJawuIdodDr5IWBmUHL9TNHwB9hz4s0/BE xouhMJPRlxSj9eC8CaB7FZOCEA+30cumAMl8hy1RnOBvey4KvHNhG/+kdI/pPeGezp8M cePSpoEAsVZo18qJzBE9WoMa/ODaicdnKhf0YWlDS1OpAT/x+pVRKfQj5QvADhLymQ7y 09Uw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1693674168; x=1694278968; h=content-transfer-encoding:content-language:to:subject:from :user-agent:mime-version:date:message-id:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=2G5rdN5qc852uhuCmmRnLlh7j0zjrdXsrs/0+Yiqhfs=; b=jI5nIPyjI8M57cwRFEASXqrmKmjhx7817NR/w3H0JcpPQvQc5oWFXizZZ3xXZWYjjI dgm+ZXN9aQm57/vyf9FkkDmwZI8PqhCaiB6n4ac3v98uKKVXjpunCz+5SO7fgPx3ZElS rIiHt2KIb7HLBK8ZYTRsofzECRrVQiz4h4FmF0sY0bfS2Th/T9sKM2n52XCcOJp5iZLO 34m5Wz2xJg0Fw4eI3sCAJ77ytkMVe8kOMBO1SPJNf2a8SGyNS8dE81Epc6Q5UdvvMUrv yBsYrny5RXtH5iegDjJhcjyI5xVYRqcukvBmS63oirSkKyiTump6EdNx3+KQOmxDt19E xbcg== X-Gm-Message-State: AOJu0Yy/ksbdx5jkP9DZHp9wSL9MU+m7uQgxQ/OGljYRUrt6+Z+2yJQf TnMqXtcj4fcG7uaM20+PF4XaUWOp9rKteg== X-Received: by 2002:a05:600c:b58:b0:401:aa8f:7570 with SMTP id k24-20020a05600c0b5800b00401aa8f7570mr3854194wmr.1.1693674168425; Sat, 02 Sep 2023 10:02:48 -0700 (PDT) Received: from [192.168.3.218] ([151.48.239.185]) by smtp.gmail.com with ESMTPSA id x15-20020a1c7c0f000000b003feef82bbefsm8396885wmc.29.2023.09.02.10.02.47 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sat, 02 Sep 2023 10:02:48 -0700 (PDT) Message-ID: Date: Sat, 2 Sep 2023 19:02:46 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.13.0 From: Alessandro Ros To: ffmpeg-devel@ffmpeg.org Content-Language: en-US Subject: [FFmpeg-devel] [PATCH] avformat/vpcc: fix vpcC generation for RTMP 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: ip6JmqiTkYvI In order to send VP9 tracks with RTMP, the enhanced RTMP specification tells that VPCodecConfigurationRecord, a.k.a. vpcC ISO-BMFF box, must be inserted into a metadata message. However, the function responsible for generating vpcCs currently returns invalid boxes, that are lacking the Version and Flag fields, inherited from FullBox. For some reason, both flags were being added manually in movenc. This patch fixes the issue. Signed-off-by: Alessandro Ros --- libavformat/movenc.c | 3 --- libavformat/vpcc.c | 2 ++ 2 files changed, 2 insertions(+), 3 deletions(-) avio_w8(pb, (vpcc.bitdepth << 4) | (vpcc.chroma_subsampling << 1) | vpcc.full_range_flag); diff --git a/libavformat/movenc.c b/libavformat/movenc.c index 7ef6cef46a..696ae5a6c9 100644 --- a/libavformat/movenc.c +++ b/libavformat/movenc.c @@ -1441,10 +1441,7 @@ static int mov_write_vpcc_tag(AVFormatContext *s, AVIOContext *pb, MOVTrack *tra avio_wb32(pb, 0); ffio_wfourcc(pb, "vpcC"); - avio_w8(pb, 1); /* version */ - avio_wb24(pb, 0); /* flags */ ff_isom_write_vpcc(s, pb, track->vos_data, track->vos_len, track->par); - return update_size(pb, pos); } diff --git a/libavformat/vpcc.c b/libavformat/vpcc.c index ea66959abf..256407dd6d 100644 --- a/libavformat/vpcc.c +++ b/libavformat/vpcc.c @@ -208,6 +208,8 @@ int ff_isom_write_vpcc(AVFormatContext *s, AVIOContext *pb, if (ret < 0) return ret; + avio_w8(pb, 1); /* version */ + avio_wb24(pb, 0); /* flags */ avio_w8(pb, vpcc.profile); avio_w8(pb, vpcc.level);