From patchwork Mon Jul 18 16:08:31 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: facefunk X-Patchwork-Id: 36819 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a21:1649:b0:8b:613a:194d with SMTP id no9csp1205521pzb; Mon, 18 Jul 2022 09:11:17 -0700 (PDT) X-Google-Smtp-Source: AGRyM1vFJJDVzBiD3jnjTITf+6JSxrbWvV1o7X3sJo1uFOmLFKDPuJGrqFOhjoa186amrMOPJ54T X-Received: by 2002:a17:907:8686:b0:72f:90:f80c with SMTP id qa6-20020a170907868600b0072f0090f80cmr14836987ejc.409.1658160677599; Mon, 18 Jul 2022 09:11:17 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1658160677; cv=none; d=google.com; s=arc-20160816; b=DJGxxUTJS1mF5Wr5c1dDwo1z3X8h/cKJeNVDgmtibRZjD9cnDEf07xj66M7OsSadTm 81MKkJBvz0X8eK+KXNj9NGtdyYXFMB/O4ubS0AUJbG8yhKaQ8xqAT0YJ44J0PztlpBhG hfu3uGCMxM2FMMO8yy0lCfDDLc5NEEd9dUiZ8YFcE+zJLOT6gvRl+F/X8w/Nbg6B4kQE TZkbkvraETMz15bEn8vYkaEP6VwT/7spFUS6JTHnQCO6ZOSYd94OgEBlBcahoyc39aZC I5NfZFiQT+b/gngFtsHSa1THfCnWfEkrS7rOUi1PMVRvwl9Etadm6cKxY+4GhHCl1M9v 2rtQ== 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:delivered-to; bh=LZgZ5Tnph+F2pbclzSLCZLkbHcPHJbrwxrZ9IZ5mPZs=; b=TqNiAL9MPoV2u459Tcx9pfcQprZLQks9Ae358RSudFntaK6n9Zc5KKLeiedP4vN8Q6 M7bKldO3mj0N/zPry/ouMSdQye+ObBUkAGPf3eH+Jeb1g5odiBbt4Sf0GFNRwNzfsSDB bSdm/ZJr/Pj3pXSmWQ1x2mvMAKyUgFQbjrek/Q5OQy8Tc/TfkUnKh5IILxphbUNVJf+p YmK7c90Q8S8dah9yhVRXObTBjkJYCNHQWtSs/hRsWGIl5P8gbZ0gRMULKhj39m779ujr ccbVvRuuIukh4NJeFU8qpNVNeZ/a5itARetfjLWuO+YV8KJ8T+rL5dzY2R28qybL0SSW RXWQ== ARC-Authentication-Results: i=1; mx.google.com; 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 t2-20020a056402524200b0043ad5087cf2si15105723edd.13.2022.07.18.09.11.16; Mon, 18 Jul 2022 09:11:17 -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; 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 B4E6F68B859; Mon, 18 Jul 2022 19:11:13 +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 1DAF868B7E0 for ; Mon, 18 Jul 2022 19:11:07 +0300 (EEST) Received: by mail-wm1-f43.google.com with SMTP id c187-20020a1c35c4000000b003a30d88fe8eso6045057wma.2 for ; Mon, 18 Jul 2022 09:11:07 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=6ARa/p3KRzIxWQPofPzhXDoKOiz0H8zi08F9t+EI+uY=; b=IMh8QVovH3KKCE249FnppWD8ZxKqFNL6Mrx0xjT1EDgPNu0O0AevV6QZe2lqZ0cMzZ 5V/W/MYjuxrk4X3eE7iX9bCEnBJdyhXJkPYRUQePzgxoMrGVWm7AEMcT0m5XvJUPDdMR OgWH+cvvmzmji12VtfJmNhJi35dwOi+uUHCwguOpaFldAf1vvEI5xqQEPwwqzYD4eiw9 lGddNvwaxATkGWBVGiZL+FvvIA0VGFsEaq+ikiZSeBvHRuw93JPYsWp0/Ia22B8UR329 FfiKZ9wiFmZsXhh9eM8BLjnyFrVI8pJMYb5PokbMGqYTINLtrdSnYpCflnhOm+GLX3qT honQ== X-Gm-Message-State: AJIora8FmgaIO8RO3XHILM8CyAnNCjDJD52HW6+pnnI54E8JQMa1yp1O X7AjQOn6WlxKD3qjui93eyl6DvKDRgMUcg== X-Received: by 2002:a05:600c:4ed0:b0:3a0:5263:cf09 with SMTP id g16-20020a05600c4ed000b003a05263cf09mr27465603wmq.6.1658160666127; Mon, 18 Jul 2022 09:11:06 -0700 (PDT) Received: from localhost.localdomain ([84.71.185.98]) by smtp.gmail.com with ESMTPSA id co18-20020a0560000a1200b0021b5861eaf7sm11228737wrb.3.2022.07.18.09.11.05 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 18 Jul 2022 09:11:05 -0700 (PDT) From: facefunk To: ffmpeg-devel@ffmpeg.org Date: Mon, 18 Jul 2022 17:08:31 +0100 Message-Id: <20220718160833.12397-2-facefunk@fcfnk.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20220718160833.12397-1-facefunk@fcfnk.com> References: <20220717133256.35929-1-facefunk@fcfnk.com> <20220718160833.12397-1-facefunk@fcfnk.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 1/3] libavcodec: Make disposition forced work with mov_text subtitles. 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: facefunk Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: o4j21gkkWH+M We are not currently able to force mov_text subtitles by setting -disposition:s:0 +forced or equivalent. By setting the forced flags in movtextenc as specifid in https://developer.apple.com/library/archive/documentation/QuickTime/QTFF/QTFFChap3/qtff3.html subtitles can be forced as expected in VLC and similar players. Copy AVStream disposition to AVCodecContext and use to set DISPLAY_FLAG_ALL_SAMPLES_FORCED in movtextenc.c. Signed-off-by: facefunk --- fftools/ffmpeg_opt.c | 5 +++++ libavcodec/avcodec.h | 16 ++++++++++++++++ libavcodec/movtextenc.c | 41 ++++++++++++++++++++++++++++++++++++++++- 3 files changed, 61 insertions(+), 1 deletion(-) diff --git a/fftools/ffmpeg_opt.c b/fftools/ffmpeg_opt.c index e08455478f..d8ea1d4bc1 100644 --- a/fftools/ffmpeg_opt.c +++ b/fftools/ffmpeg_opt.c @@ -2244,6 +2244,11 @@ static int set_dispositions(OutputFile *of, AVFormatContext *ctx) if (ret < 0) return ret; + + // For output streams, copy stream disposition to the AVCodecContext + // object. + if(ost->enc_ctx) + ost->enc_ctx->stream_disposition = ost->st->disposition; } } else { // For each media type with more than one stream, find a suitable stream to diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h index cb5c25bf63..eb11de0293 100644 --- a/libavcodec/avcodec.h +++ b/libavcodec/avcodec.h @@ -37,6 +37,8 @@ #include "libavutil/pixfmt.h" #include "libavutil/rational.h" +#include "libavformat/avformat.h" + #include "codec.h" #include "codec_desc.h" #include "codec_par.h" @@ -2054,6 +2056,20 @@ typedef struct AVCodecContext { * The decoder can then override during decoding as needed. */ AVChannelLayout ch_layout; + + /** + * Stream disposition - a combination of AV_DISPOSITION_* flags from + * libavformat. + * + * Copied from the relevant AVStream object for codecs that need access to + * the stream disposition parameter, such as movtextenc.c which needs to + * read the AV_DISPOSITION_FORCED flag so it knows when to set forced + * subtitles. + * + * - encoding: Set by set_dispositions in ffmpeg_opt.c. + * - decoding: unused + */ + int stream_disposition; } AVCodecContext; /** diff --git a/libavcodec/movtextenc.c b/libavcodec/movtextenc.c index 728338f2cc..d2550585e8 100644 --- a/libavcodec/movtextenc.c +++ b/libavcodec/movtextenc.c @@ -50,6 +50,40 @@ #define FONTSIZE_SCALE(s,fs) ((fs) * (s)->font_scale_factor + 0.5) #define av_bprint_append_any(buf, data, size) av_bprint_append_data(buf, ((const char*)data), size) +/** + * https://developer.apple.com/library/archive/documentation/QuickTime/QTFF/QTFFChap3/qtff3.html + * + * Display flags + * A 32-bit integer containing flags that describe how the subtitle text should + * be drawn. + * The following flags are defined: + * + * Vertical placement + * Controls vertical placement of the subtitle text. + * If this flag is set, the subtitle media handler uses the top coordinate of + * the display bounds of the override 'tbox' text box to determine the + * subtitle’s vertical placement as described in Subtitle Track Header Size + * and Placement. Otherwise, the subtitle displays at the bottom of the video. + */ +#define DISPLAY_FLAG_VERTICAL_PLACEMENT_TOP 0x20000000 + +/** + * Some samples are forced + * Indicates whether any subtitle samples contain forced atoms. If this flag is + * set, at least one sample contains a forced ('frcd') atom as described in + * Subtitle Sample Data. + */ +#define DISPLAY_FLAG_SOME_SAMPLES_FORCED 0x40000000 + +/** + * All samples are forced + * If this flag is set, the subtitle media handler treats all samples as forced + * subtitles, regardless of the presence or absence of a 'frcd' atom. + * If this flag is set, the Some Samples Are Forced flag must also be set + * (making 0xC0000000). + */ +#define DISPLAY_FLAG_ALL_SAMPLES_FORCED 0x80000000 + typedef struct { uint16_t style_start; uint16_t style_end; @@ -183,6 +217,7 @@ static int encode_sample_description(AVCodecContext *avctx) int font_names_total_len = 0; MovTextContext *s = avctx->priv_data; uint8_t buf[30], *p = buf; + uint32_t display_flags = 0; // 0x00, 0x00, 0x00, 0x00, // uint32_t displayFlags // 0x01, // int8_t horizontal-justification @@ -241,7 +276,11 @@ static int encode_sample_description(AVCodecContext *avctx) (255 - ((uint32_t)style->back_color >> 24)); } - bytestream_put_be32(&p, 0); // displayFlags + if (avctx->stream_disposition & AV_DISPOSITION_FORCED) + display_flags = DISPLAY_FLAG_SOME_SAMPLES_FORCED | + DISPLAY_FLAG_ALL_SAMPLES_FORCED; + + bytestream_put_be32(&p, display_flags); // displayFlags bytestream_put_be16(&p, 0x01FF); // horizontal/vertical justification (2x int8_t) bytestream_put_be32(&p, back_color); bytestream_put_be64(&p, 0); // BoxRecord - 4xint16_t: top, left, bottom, right From patchwork Mon Jul 18 16:08:32 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: facefunk X-Patchwork-Id: 36820 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a21:1649:b0:8b:613a:194d with SMTP id no9csp1205601pzb; Mon, 18 Jul 2022 09:11:26 -0700 (PDT) X-Google-Smtp-Source: AGRyM1suHNPOo4wmnhl4IAJ0ir0ubTzlJt4OYhLGdIbXG9W5aR1k8cpBq+YgU7PkgyQR+moUrLKr X-Received: by 2002:a17:907:2ccc:b0:72b:6907:fce6 with SMTP id hg12-20020a1709072ccc00b0072b6907fce6mr26351653ejc.115.1658160686286; Mon, 18 Jul 2022 09:11:26 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1658160686; cv=none; d=google.com; s=arc-20160816; b=0R3Qa2fHuKWwmuc2UI3MIAQhm68GaiNIXcrnP4oDACxjud2JmWxN/ohesjGX0Ykq9g c4uJUXqDRlk22WxBo1OfLsPNOm4zJr1PsbNGcRZBnHwRv8vM/qeEyFXi74NrU7Gbd9Tn M2Pe36r1o+VmDmQr/urD9U4/wqmR2EBRuGElNAbMrFxSdCoBhCgY0KZG59KednLeXuE5 fGXOdKmssi+0v4AX4gymqZDPPM04Jz+2o1BpFOyB9dzgUAWtjx7e4FYJ+J+BYXjUYpUK Rng0XfOcPCVlwllsg7vTkXYTRoubDlidzbXXRszeXLreVwydGtMFrsGoUs3brffmkrP8 SU1A== 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:delivered-to; bh=1OcOpXJl+2bP31wHByvnkZqz642pn1lDfQDzcptgJ8g=; b=oP3YUyf34NTEd/3Vm9gRsnQtuCojQ5FV2C/bKuKUWrN0PRntF+I7cSPaO/97Mo0tjW 6ICJp9lR85E8Qof5GcJ2by1jYMpIgRRUPvfDw5k5Ubs4pc0oXOyVzS3IMkHoeaog3a6m 2+siqXq47GMcfy2gXTe6nf70YlN7LnKUntY6YgwIWuEY55eF40SiJS9TAgXxaocA046R JUrMIUmYJ65+2tNvX/+pcCrVyyYstCqE5GLJmOKYz5/8AcMmrobYdr7Hn9lYtH/bo5/9 P21KkZMa6sbifpUgTLEEJlv/WyQx7/WymKbsoKLuu34Rdb8AGXYv9mkUMdaflWlejNOH 2NGA== ARC-Authentication-Results: i=1; mx.google.com; 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 j10-20020a05640211ca00b004396851005fsi18835439edw.100.2022.07.18.09.11.25; Mon, 18 Jul 2022 09:11:26 -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; 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 EA66868B88F; Mon, 18 Jul 2022 19:11:15 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-wr1-f47.google.com (mail-wr1-f47.google.com [209.85.221.47]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 4100A68B88F for ; Mon, 18 Jul 2022 19:11:10 +0300 (EEST) Received: by mail-wr1-f47.google.com with SMTP id j1so13308157wrs.4 for ; Mon, 18 Jul 2022 09:11:10 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=Y3ndKnXPt5RskKcXxqOdH2ub8W4f4LulmN8ivuDMUug=; b=INyUkoukJoQtLxiSui5380TPgWHeoHK/RdJXdvkYy587ILk+L5Lta5XaRbDJ5lQewq +EorJkV6CAlLaUyLhrwR4FkmH42kIdOmTQvBSQMvA58kdgjpwBu+Edn8sKBmmxdR2l5Z jAkM0JIkC8yKOGmyKM3VOgZh366KObhG2zzZ+xdyoE+/ZmYoSetVMyhDuWyIBc/ou35n Km+trI3/6mV6xoo5IqGdGhvLqEplD88PQ60igZaHKdDrIH//Drai54ihzEKksY8Ngr+G NE7Li1eXIX1Q3uNHHbRl/SwdNbRnAUKOgex2S2dsUadxgT69VoaFhVwp0ee+v0fpFr+I xzwQ== X-Gm-Message-State: AJIora/FPfLSGXG6O/cIygTabGIAr0mZu0tNMouWxQSc9Lpi7Y9lVND2 wvKtzs0h+oqDA5ZNHiqYhTZgCCRey913xw== X-Received: by 2002:a05:6000:15ce:b0:21d:b177:a8f0 with SMTP id y14-20020a05600015ce00b0021db177a8f0mr23834810wry.370.1658160669280; Mon, 18 Jul 2022 09:11:09 -0700 (PDT) Received: from localhost.localdomain ([84.71.185.98]) by smtp.gmail.com with ESMTPSA id co18-20020a0560000a1200b0021b5861eaf7sm11228737wrb.3.2022.07.18.09.11.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 18 Jul 2022 09:11:08 -0700 (PDT) From: facefunk To: ffmpeg-devel@ffmpeg.org Date: Mon, 18 Jul 2022 17:08:32 +0100 Message-Id: <20220718160833.12397-3-facefunk@fcfnk.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20220718160833.12397-1-facefunk@fcfnk.com> References: <20220717133256.35929-1-facefunk@fcfnk.com> <20220718160833.12397-1-facefunk@fcfnk.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 2/3] libavcodec: Correct typo in mov_text encoder class name. 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: facefunk Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: ODFtFQtNKFCC Signed-off-by: facefunk --- libavcodec/movtextenc.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavcodec/movtextenc.c b/libavcodec/movtextenc.c index d2550585e8..6f54e2a64c 100644 --- a/libavcodec/movtextenc.c +++ b/libavcodec/movtextenc.c @@ -732,7 +732,7 @@ static const AVOption options[] = { }; static const AVClass mov_text_encoder_class = { - .class_name = "MOV text enoder", + .class_name = "MOV text encoder", .item_name = av_default_item_name, .option = options, .version = LIBAVUTIL_VERSION_INT, From patchwork Mon Jul 18 16:08:33 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: facefunk X-Patchwork-Id: 36821 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a21:1649:b0:8b:613a:194d with SMTP id no9csp1205722pzb; Mon, 18 Jul 2022 09:11:37 -0700 (PDT) X-Google-Smtp-Source: AGRyM1v3tEKGhrKHsD1/WiaHSEH4ta9+tG9CJGwu65vZAuL6fprNiJaJ2ZgrfsXYKRlF0hJ4QPKl X-Received: by 2002:a05:6402:3486:b0:43a:9b82:6d8a with SMTP id v6-20020a056402348600b0043a9b826d8amr39122980edc.23.1658160697006; Mon, 18 Jul 2022 09:11:37 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1658160697; cv=none; d=google.com; s=arc-20160816; b=sMuig+/9nzC6a9gFLUR6Z4vlHEtYsWXoCU/M9Lk+zFM6YWIzcaVmX/Uc6xdsN5GVig xEn9O+sBNfszYrWkjl0ZE3ohzs6IGKbSZpsDsw1c72QgXV+lPcAf+qdITmq79/A8Zlm6 9PAJhe/KO95JuFH44xj2SWRh0nS3WsOooHO1ilXSkPQrdKqnNVMklwJaCza3bvPOYakk 0Fb/1LKgKIWPzBD3do4AK0+BuMyIJxKC/nhuSoQzFmHvB427DdID0z0sJJI+BY+q76XE vPg50LrpW3m+aFa8EHRDE9sdph66FgTvYYaVSJVp1UHHf4sDsw9dgXaXqaEq9YGPPkFF 8R6A== 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:delivered-to; bh=qGiyAmB5ehL4wv4Roq2JilFoZi3LQHqkfYM8Cyf+vE8=; b=0tVb4ffJZ6LKROV1lIEVKW5kePtfuUUckorHUb78+bjZc24q8VWbqWHEoHbq2DRPrK PdXkPFXrRxbmteksYG0Y6tPMbO1xZ04jGX/lM5Q2W6WO+kx4J5GnHkFYaORMr7HHEws4 rnnyUKqL5tp5HfQoPUL5m6z8LUvtW4ag/ezDfg5q4JA8OJpwNOvqkow+t6FHrneg8BrR ZWVcRQoqt49UFHcX5HQpcqdaC3jZ5aKltDpgIfYZeMdIXUUSd0gcPKAo9C7SwHucjY/b mnZ5Rq+x0/4BcGk9VRaDJ/2e4L+jBPdGsdFn8GtCViKrOTNQiCJS7Pfu8oX/7nUVssD+ kK9Q== ARC-Authentication-Results: i=1; mx.google.com; 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 k15-20020aa7d8cf000000b0043a3fa3ccb0si13674732eds.174.2022.07.18.09.11.36; Mon, 18 Jul 2022 09:11:36 -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; 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 F148268B8CF; Mon, 18 Jul 2022 19:11:18 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-wr1-f53.google.com (mail-wr1-f53.google.com [209.85.221.53]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 8CA4468B8B8 for ; Mon, 18 Jul 2022 19:11:12 +0300 (EEST) Received: by mail-wr1-f53.google.com with SMTP id bu1so17757548wrb.9 for ; Mon, 18 Jul 2022 09:11:12 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=BR7LL7H5WV6Yu1UeLA9+QKfrr0Ffwtpbq0P3TmovbQE=; b=RI97kbWBVVRBivvVKsm7eVXOLmughjucobkaAw+/axlkUI2GCdqvjsto3KGuH1puqr CHZmLCUc5c8cWthqEC2/EKd36uY7ZL6eBj3eSx76FUVYCB514tX5qcuYfwkpqgWTkIG7 FyH2nLCJhm3x0oZwHjUr1XFfAHGHYlO4LyKZ5fmHtsWDeyaZ6R9XG3a8eXIbLOLU5Eop RN3ewGzZuelAVEc1LZ1L60ELXrAW9ofZ1Lx81BtPhZj6ya2DTWqRVJ2+c7Y5YcAQnFTW Kfs0cPCjyzAizbNsA0aNqnM7KuGMscNKOwKP7i+aQOYi6LmJlwGycd512yvyq0PoawGe ePsA== X-Gm-Message-State: AJIora+xz9Sb0lb6y+fejfSbNUr+P1u4ITPi2Q/9PKP7AGYDEPzKGp1k WXLqVEQtUcEgM0bwZHPFoN3Cn14dz52XIA== X-Received: by 2002:a5d:6f19:0:b0:21e:2dab:83b with SMTP id ay25-20020a5d6f19000000b0021e2dab083bmr141359wrb.139.1658160671740; Mon, 18 Jul 2022 09:11:11 -0700 (PDT) Received: from localhost.localdomain ([84.71.185.98]) by smtp.gmail.com with ESMTPSA id co18-20020a0560000a1200b0021b5861eaf7sm11228737wrb.3.2022.07.18.09.11.11 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 18 Jul 2022 09:11:11 -0700 (PDT) From: facefunk To: ffmpeg-devel@ffmpeg.org Date: Mon, 18 Jul 2022 17:08:33 +0100 Message-Id: <20220718160833.12397-4-facefunk@fcfnk.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20220718160833.12397-1-facefunk@fcfnk.com> References: <20220717133256.35929-1-facefunk@fcfnk.com> <20220718160833.12397-1-facefunk@fcfnk.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 3/3] libavutil: Correct number of parameters in flag type options 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: facefunk Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: m7thIZdJi4az Signed-off-by: facefunk --- libavutil/opt.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libavutil/opt.h b/libavutil/opt.h index 461b5d3b6b..f250579b29 100644 --- a/libavutil/opt.h +++ b/libavutil/opt.h @@ -175,8 +175,8 @@ * above, put the following into the child_opts array: * @code * { "test_flags", "This is a test option of flags type.", - * offsetof(child_struct, flags_opt), AV_OPT_TYPE_FLAGS, { .i64 = 0 }, INT_MIN, INT_MAX, "test_unit" }, - * { "flag1", "This is a flag with value 16", 0, AV_OPT_TYPE_CONST, { .i64 = 16 }, 0, 0, "test_unit" }, + * offsetof(child_struct, flags_opt), AV_OPT_TYPE_FLAGS, { .i64 = 0 }, .unit = "test_unit" }, + * { "flag1", "This is a flag with value 16", 0, AV_OPT_TYPE_CONST, { .i64 = 16 }, .unit = "test_unit" }, * @endcode * * @section avoptions_use Using AVOptions