From patchwork Tue Mar 12 06:00:03 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Marth64 X-Patchwork-Id: 46982 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:dc95:b0:1a1:738b:6bc0 with SMTP id ky21csp1663105pzb; Mon, 11 Mar 2024 23:01:04 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCU+mIScSmXdrYzeU0r6w1xzVqANLu7tsnP6Zj/viLo5CJQvjyrRy+9TrGwUSPZkFOg6sm+WtjRCd0S5XVMnTKs6dxzcyyrO4TAx1w== X-Google-Smtp-Source: AGHT+IEnFgdAbIZN/bUcTwvFsEMGMLQKtEkKNvvAgzD7qahuY5tbPQMwwXGpil96RI0hI/Yq+ZR8 X-Received: by 2002:a50:9e44:0:b0:568:1b9f:d697 with SMTP id z62-20020a509e44000000b005681b9fd697mr6377857ede.17.1710223264147; Mon, 11 Mar 2024 23:01:04 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1710223264; cv=none; d=google.com; s=arc-20160816; b=mhCLp2aKTDrZVnZMEncKGatP+hEQZV5WBOG17uc5BkSxcdWeoeLVJYjvPh3UgKNIWk NyC+3oSUAyxPhXBixxddxxaVesvEjmCl/o3FWT4DG3OPALgcMp95BDES8m7pCSqXme4j fSz3HDVOypmWwOGCqpGD87vDGoH7u9Jd0GPcCoqM9Kihh7nBQ3O3szYeVHfxPCjpFw/Z ujlIim1N7k4ImFY+mf64GJRJUJvDxW753FbH2dUntAZ5nrSX2uffrTMY+AKJG0R/i5sl DHGOLBD4gCNk8WMd2L5saYfzHNKDzn7kTx8jRTMRSuOlkdY2JuY7Rlv+DplztESBN9F+ zZnA== 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=n9DERDOp2B2B3SD5ZaeMfVyI1gPIG+17oFfYO67cpo0=; fh=PlWMzmI9LD2qGS7ipLrQl8z0iaQTLQLHzoGuXcBzpCg=; b=wG2s99+DH8UhKJ1ibLpAI8bE6dpfvU7XuA88bJ0BPRYMbwBKSUZVxz3CsZnr0kMNnv nv4R0JXAtRj9ER41DybfeZ2cfQXvyQIJTz2KW7GAG3XneYHwhMBV/bnmYb4O8p+JBcOZ QcnQz5VOfj5cOaj5DeZbe+u/6K5oMH7GTHoYJlO+ARGnK9kytOZCsbVYkSWadnp2rpvr JctVL3eQrLVMZaL7y4mFcYKrOyMNteT90jiW5190tnoSa2mrDg74BPyHeMAKjdKjW6X5 5o5WXm+Cx0BEUeJsk6jWnnOk8iF46gNC8sfM8ygTmDTmy4GI7efG27IM4fvug+nyExDD o3Yg==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@proxyid.net header.s=google header.b=Aiw37h8v; 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 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id ek15-20020a056402370f00b005686c72fa5asi667070edb.564.2024.03.11.23.01.03; Mon, 11 Mar 2024 23:01:04 -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=@proxyid.net header.s=google header.b=Aiw37h8v; 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 Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id E9F3868D139; Tue, 12 Mar 2024 08:00:23 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-yb1-f226.google.com (mail-yb1-f226.google.com [209.85.219.226]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id DDE3F68C0A2 for ; Tue, 12 Mar 2024 08:00:12 +0200 (EET) Received: by mail-yb1-f226.google.com with SMTP id 3f1490d57ef6-dd02fb9a31cso3565444276.3 for ; Mon, 11 Mar 2024 23:00:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=proxyid.net; s=google; t=1710223211; x=1710828011; 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=F9IhYVFkeA+I/c4b/96JIEoR+UzKLcE47pZc563eAKE=; b=Aiw37h8vha6S8rhyf7PuP3QdRXvEUnfDLMUn+ria3rTsx6V9l4J8rcc2BK4JgceYMf mXuShoQYvK+utmhdvmUq208tl4sz/DcNQUZRBaB6sdPaheNYQaLBo9xojzqO6oAeMzrV grgdsNHOai0QGF1Di+HPJzJyCiTaL0ioHiK4CU02GklzR0Wq9dEpZxPElDo6nX1eA38I qw7vD5YwFRk/TJSUi20xMefOOSSBlA9T9F3+rQJ8sdXTW86sU7p3FeqiWiuD5RJCNUoh AB2yuqTA9qDLno+8oBv+Ob4hNEyWWlKS4ENx+A9zaSU5p2UvNsn1Gb1BBtkFmEYfq5l3 MZOw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1710223211; x=1710828011; 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=F9IhYVFkeA+I/c4b/96JIEoR+UzKLcE47pZc563eAKE=; b=q0M/KOSwsiRgwfOLVHhv9qI4TNr7vfrnGQx+OVQKcHvajGYJQFJUkBPiQ6crDFa87T qDpzr7PwxfN5YpsFb2tRjSpoiP95PuPTiSHZELMvL+pWrtyaBuQ4eFIRm0zEu/7EYD0g APAERsV1CFcXA0vXY/plEkODD8lkxs6RTnBZSzoomeTrYk9lSIItMYsEukayVxVShCw3 Wtp1Qr6Acb8Vv2hP17IFE+XHwHsrU7OZHy7ItjSuV+ihJPBC3gqjEC9mm28GXSCkiUD2 f57yk0IReuG3NvupoNSL4K8ejv8hmPb+1V4Vny8Lw1Q6WqcFmZR6gU9CF1ZIbsCfsJcm Z9vQ== X-Gm-Message-State: AOJu0YyhJPlaD/RLMmJl4pgk03VmIcVVqkM1Qzsy4jF+Vh/9P9QlXRaz TOwM5WFgyxZM+zmMGS1aWZHvyce4/f/hn6fAfq1HDF7XOya1sRel+/kvEVlWFCvjBzolZkLjNmU WgqotTYntd+eH+YNSojb9R+ecCrdUo1I5ZpGhKS+e X-Received: by 2002:a25:ad5c:0:b0:dcc:5aa1:7ac3 with SMTP id l28-20020a25ad5c000000b00dcc5aa17ac3mr5746915ybe.2.1710223211554; Mon, 11 Mar 2024 23:00:11 -0700 (PDT) Received: from wsx-cc1-001.. (c-76-141-249-38.hsd1.il.comcast.net. [76.141.249.38]) by smtp-relay.gmail.com with ESMTPS id ds4-20020a056902248400b00dc6185d4494sm322329ybb.6.2024.03.11.23.00.11 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 11 Mar 2024 23:00:11 -0700 (PDT) X-Relaying-Domain: proxyid.net From: Marth64 To: ffmpeg-devel@ffmpeg.org Date: Tue, 12 Mar 2024 01:00:03 -0500 Message-Id: <20240312060005.2111135-5-marth64@proxyid.net> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20240312060005.2111135-1-marth64@proxyid.net> References: <20240312060005.2111135-1-marth64@proxyid.net> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH v3 4/6] avcodec/rcwtenc: canonize name and refresh documentation 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: Marth64 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: fm0lrnIGak2w The formal title of the muxer according to the specification is "RCWT (Raw Captions With Time)", so canonize this in the long name of the codec and docs. In the documentation section, point #2 was wrong: ccextractor extracts the Closed Captions data and stores normalized bits similarly to this muxer. Signed-off-by: Marth64 --- libavformat/rcwtenc.c | 21 +++++++-------------- 1 file changed, 7 insertions(+), 14 deletions(-) diff --git a/libavformat/rcwtenc.c b/libavformat/rcwtenc.c index a6060ba7c4..ed72de81ef 100644 --- a/libavformat/rcwtenc.c +++ b/libavformat/rcwtenc.c @@ -1,6 +1,5 @@ /* - * Raw Captions With Time (RCWT) muxer - * Author: Marth64 + * RCWT (Raw Captions With Time) muxer * * This file is part of FFmpeg. * @@ -20,16 +19,16 @@ */ /* - * Raw Captions With Time (RCWT) is a format native to ccextractor, a commonly - * used open source tool for processing 608/708 closed caption (CC) sources. + * RCWT (Raw Captions With Time) is a format native to ccextractor, a commonly + * used open source tool for processing 608/708 Closed Captions (CC) sources. * It can be used to archive the original, raw CC bitstream and to produce * a source file for later CC processing or conversion. As a result, * it also allows for interopability with ccextractor for processing CC data * extracted via ffmpeg. The format is simple to parse and can be used * to retain all lines and variants of CC. * - * This muxer implements the specification as of 2024-01-05, which has - * been stable and unchanged for 10 years as of this writing. + * This muxer implements the specification as of March 2024, which has + * been stable and unchanged since April 2014. * * This muxer will have some nuances from the way that ccextractor muxes RCWT. * No compatibility issues when processing the output with ccextractor @@ -40,13 +39,7 @@ * (1) This muxer will identify as "FF" as the writing program identifier, so * as to be honest about the output's origin. * - * (2) ffmpeg's MPEG-1/2, H264, HEVC, etc. decoders extract closed captioning - * data differently than ccextractor from embedded SEI/user data. - * For example, DVD captioning bytes will be translated to ATSC A53 format. - * This allows ffmpeg to handle 608/708 in a consistant way downstream. - * This is a lossless conversion and the meaningful data is retained. - * - * (3) This muxer will not alter the extracted data except to remove invalid + * (2) This muxer will not alter the extracted data except to remove invalid * packets in between valid CC blocks. On the other hand, ccextractor * will by default remove mid-stream padding, and add padding at the end * of the stream (in order to convey the end time of the source video). @@ -172,7 +165,7 @@ static int rcwt_write_trailer(AVFormatContext *avf) const FFOutputFormat ff_rcwt_muxer = { .p.name = "rcwt", - .p.long_name = NULL_IF_CONFIG_SMALL("Raw Captions With Time"), + .p.long_name = NULL_IF_CONFIG_SMALL("RCWT (Raw Captions With Time)"), .p.extensions = "bin", .p.flags = AVFMT_GLOBALHEADER | AVFMT_VARIABLE_FPS | AVFMT_TS_NONSTRICT, .p.subtitle_codec = AV_CODEC_ID_EIA_608,