[FFmpeg-devel] [PATCH 25/31] fftools/ffmpeg_dec: pass AVCodecParameters through DecoderOpts

2024-01-24 Thread Anton Khirnov
Do not retrieve it from InputStream directly. This is a step towards decoupling Decoder and InputStream. --- fftools/ffmpeg.h | 1 + fftools/ffmpeg_dec.c | 4 ++-- fftools/ffmpeg_demux.c | 1 + 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/fftools/ffmpeg.h

[FFmpeg-devel] [PATCH 27/31] fftools/ffmpeg_dec: stop passing InputStream to dec_open()

2024-01-24 Thread Anton Khirnov
--- fftools/ffmpeg.h | 3 ++- fftools/ffmpeg_dec.c | 50 +++--- fftools/ffmpeg_demux.c | 4 +++- 3 files changed, 37 insertions(+), 20 deletions(-) diff --git a/fftools/ffmpeg.h b/fftools/ffmpeg.h index 02c614d0ff..c8cba72006 100644 ---

[FFmpeg-devel] [PATCH 21/31] fftools/ffmpeg_dec: pass top_field_first through DecoderOpts

2024-01-24 Thread Anton Khirnov
Do not read it from InputStream directly. This is a step towards decoupling Decoder and InputStream. --- fftools/ffmpeg.h | 3 +++ fftools/ffmpeg_dec.c | 2 +- fftools/ffmpeg_demux.c | 6 +- 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/fftools/ffmpeg.h

[FFmpeg-devel] [PATCH 23/31] fftools/ffmpeg_dec: eliminate InputStream use in hw_device_setup_for_decode()

2024-01-24 Thread Anton Khirnov
The same information can also be obtained from the decoder itself. This is a step towards decoupling Decoder and InputStream. --- fftools/ffmpeg_dec.c | 15 --- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/fftools/ffmpeg_dec.c b/fftools/ffmpeg_dec.c index

[FFmpeg-devel] [PATCH 29/31] fftools/ffmpeg: make InputStream.decoding_needed private to demuxer

2024-01-24 Thread Anton Khirnov
It is no longer used outside of ffmpeg_demux. --- fftools/ffmpeg.h | 3 --- fftools/ffmpeg_demux.c | 13 + 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/fftools/ffmpeg.h b/fftools/ffmpeg.h index 4881174632..29d8ea4355 100644 --- a/fftools/ffmpeg.h +++

[FFmpeg-devel] [PATCH 30/31] fftools/ffmpeg: make InputStream.decoder_opts private to demuxer

2024-01-24 Thread Anton Khirnov
It is no longer used outside of ffmpeg_demux. --- fftools/ffmpeg.h | 1 - fftools/ffmpeg_demux.c | 16 +--- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/fftools/ffmpeg.h b/fftools/ffmpeg.h index 29d8ea4355..8395fd260c 100644 --- a/fftools/ffmpeg.h +++

[FFmpeg-devel] [PATCH 28/31] fftools/ffmpeg_dec: eliminate all remaining InputStream uses

2024-01-24 Thread Anton Khirnov
Previously, the demuxer would register decoder with the scheduler, using InputStream as opaque, and pass the scheduling index to the decoder. Now the registration is done by the decoder itself, using DecoderPriv as opaque, and the scheduling index is returned to demuxer from dec_open().

[FFmpeg-devel] [PATCH 16/31] fftools/ffmpeg_dec: pass hwaccel options to the decoder in a separate struct

2024-01-24 Thread Anton Khirnov
Stop reading them from InputStream. This is a step towards decoupling Decoder and InputStream. --- fftools/ffmpeg.h | 16 +- fftools/ffmpeg_dec.c | 67 +++--- fftools/ffmpeg_demux.c | 36 --- 3 files changed, 65

[FFmpeg-devel] [PATCH 18/31] fftools/ffmpeg_dec: pass forced/estimated framerate though DecoderOpts

2024-01-24 Thread Anton Khirnov
Stop reading them from InputStream. This is a step towards decoupling Decoder and InputStream. --- fftools/ffmpeg.h | 7 +++ fftools/ffmpeg_dec.c | 15 ++- fftools/ffmpeg_demux.c | 6 ++ 3 files changed, 23 insertions(+), 5 deletions(-) diff --git

[FFmpeg-devel] [PATCH 24/31] fftools/ffmpeg_dec: pass AVCodec through DecoderOpts

2024-01-24 Thread Anton Khirnov
Do not retrieve it from InputStream directly. This is a step towards decoupling Decoder and InputStream. --- fftools/ffmpeg.h | 2 ++ fftools/ffmpeg_dec.c | 2 +- fftools/ffmpeg_demux.c | 2 ++ 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/fftools/ffmpeg.h

[FFmpeg-devel] [PATCH 22/31] fftools/ffmpeg_dec: pass decoder name through DecoderOpts

2024-01-24 Thread Anton Khirnov
Do not build it from InputStream values. This is a step towards decoupling Decoder and InputStream. --- fftools/ffmpeg.h | 2 ++ fftools/ffmpeg_dec.c | 17 +++-- fftools/ffmpeg_demux.c | 4 3 files changed, 17 insertions(+), 6 deletions(-) diff --git

[FFmpeg-devel] [PATCH 15/31] fftools/ffmpeg: move hwaccel_retrieve_data() from ffmpeg_hw to ffmpeg_dec

2024-01-24 Thread Anton Khirnov
This function is decoding-only and has no interaction with the rest of ffmpeg_hw. It thus belongs more properly in ffmpeg_dec. --- fftools/ffmpeg.h | 2 -- fftools/ffmpeg_dec.c | 42 ++ fftools/ffmpeg_hw.c | 42

[FFmpeg-devel] [PATCH 17/31] fftools/ffmpeg_dec: move flags to DecoderOpts

2024-01-24 Thread Anton Khirnov
Will be useful in the following commit. --- fftools/ffmpeg.h | 4 +++- fftools/ffmpeg_dec.c | 4 ++-- fftools/ffmpeg_demux.c | 7 --- 3 files changed, 9 insertions(+), 6 deletions(-) diff --git a/fftools/ffmpeg.h b/fftools/ffmpeg.h index abf95f106b..b4288e7352 100644 ---

[FFmpeg-devel] [PATCH 19/31] fftools/ffmpeg_dec: move setting compute_edt to demuxer

2024-01-24 Thread Anton Khirnov
It is done based on demuxer information, so that is the more appropriate place for this code. This is a step towards decoupling Decoder and InputStream. --- fftools/ffmpeg_dec.c | 9 - fftools/ffmpeg_demux.c | 9 + 2 files changed, 9 insertions(+), 9 deletions(-) diff --git

[FFmpeg-devel] [PATCH 09/31] fftools/ffmpeg_dec: drop a useless log message

2024-01-24 Thread Anton Khirnov
--- fftools/ffmpeg_dec.c | 12 1 file changed, 12 deletions(-) diff --git a/fftools/ffmpeg_dec.c b/fftools/ffmpeg_dec.c index baaba966c6..00428dff48 100644 --- a/fftools/ffmpeg_dec.c +++ b/fftools/ffmpeg_dec.c @@ -263,18 +263,6 @@ static int video_frame_process(InputStream *ist,

[FFmpeg-devel] [PATCH 14/31] fftools/ffmpeg_dec: replace InputFile.format_nots with a decoder flag

2024-01-24 Thread Anton Khirnov
Reduces the need to access InputFile from decoding. This is a step towards decoupling Decoder and InputStream. --- fftools/ffmpeg.h | 5 ++--- fftools/ffmpeg_dec.c | 8 fftools/ffmpeg_demux.c | 5 ++--- 3 files changed, 8 insertions(+), 10 deletions(-) diff --git

[FFmpeg-devel] [PATCH 13/31] fftools/ffmpeg: refactor disabling decoder threading for attached pictures

2024-01-24 Thread Anton Khirnov
* as this decision is based on demuxing information, move it from the decoder to the demuxer * as the issue being addressed is latency added by frame threading, we only need to disable frame threading, not all threading --- fftools/ffmpeg_dec.c | 3 --- fftools/ffmpeg_demux.c | 5 + 2

[FFmpeg-devel] [PATCH 02/31] fftools/ffmpeg_dec: export subtitle_header in Decoder

2024-01-24 Thread Anton Khirnov
This way the encoder does not need to access the decoder AVCodecContext, which will allow to make it private in future commits. --- fftools/ffmpeg.h | 3 ++- fftools/ffmpeg_dec.c | 3 +++ fftools/ffmpeg_enc.c | 19 ++- 3 files changed, 15 insertions(+), 10 deletions(-) diff

[FFmpeg-devel] [PATCH 04/31] fftools/ffmpeg: make decoding AVCodecContext private to the decoder

2024-01-24 Thread Anton Khirnov
--- fftools/ffmpeg.h | 3 +- fftools/ffmpeg_dec.c | 90 ++ fftools/ffmpeg_demux.c | 16 +--- 3 files changed, 60 insertions(+), 49 deletions(-) diff --git a/fftools/ffmpeg.h b/fftools/ffmpeg.h index 4c9424d02f..f0f57d48bc 100644 ---

[FFmpeg-devel] [PATCH 03/31] fftools/ffmpeg_filter: consolidate decoder/filter type checks

2024-01-24 Thread Anton Khirnov
Also perform them earlier. --- fftools/ffmpeg_filter.c | 18 +++--- 1 file changed, 7 insertions(+), 11 deletions(-) diff --git a/fftools/ffmpeg_filter.c b/fftools/ffmpeg_filter.c index 82ee4fae7d..4b660002ed 100644 --- a/fftools/ffmpeg_filter.c +++ b/fftools/ffmpeg_filter.c @@

[FFmpeg-devel] [PATCH 05/31] fftools/ffmpeg_dec: add an AVClass to Decoder

2024-01-24 Thread Anton Khirnov
Log decoder messages to the decoder rather than InputStream. This is a step towards decoupling Decoder and InputStream. --- fftools/ffmpeg.h | 2 + fftools/ffmpeg_dec.c | 92 2 files changed, 60 insertions(+), 34 deletions(-) diff --git

[FFmpeg-devel] [PATCH 01/31] fftools/ffmpeg_dec: split Decoder into a private and public part

2024-01-24 Thread Anton Khirnov
Similar to what is currently done for other components, e.g. (de)muxers. There is nothing in the public part currently, but that will change in future commits. --- fftools/ffmpeg.h | 4 +- fftools/ffmpeg_dec.c | 193 ++- 2 files changed, 104

Re: [FFmpeg-devel] [PATCH] fftools/opt_common: show if muxer is device

2024-01-23 Thread Anton Khirnov
ing supported\n" > + " .E = Muxing supported\n" > + " --\n"); > +} else { > +printf("Formats:\n" > + " D.. = Demuxing supported\n" > + " .E. = Muxing supported\n" > +

Re: [FFmpeg-devel] FFmpeg 7.0 blocking issues

2024-01-23 Thread Anton Khirnov
ything the commuity agrees should be in the release IIUC we wanted to do a major bump before 7.0 -- Anton Khirnov ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or

Re: [FFmpeg-devel] FFmpeg 7.0 blocking issues

2024-01-23 Thread Anton Khirnov
t I don't consider as blockers, just something nice to have: > > Vulkan encode (H264). Needs about a week of work. > HE-AAC 960-point. > Preliminary xHE-AAC support. Not sure. > AAC prepad fixes - perhaps partial (off by one sample for SBR). Sigh. We already had this dram

Re: [FFmpeg-devel] [PATCH 1/2 v2] avutil: add a Tile Grid API

2024-01-22 Thread Anton Khirnov
alue written for every entry. My point is that the API can abstract away the details of how the data is stored. You could have it always behave like a list of N rectangles, while only storing as much information as is needed. -- Anton Khirnov ___ ffmpeg-d

Re: [FFmpeg-devel] [PATCH 1/2 v2] avutil: add a Tile Grid API

2024-01-22 Thread Anton Khirnov
Quoting James Almer (2024-01-21 20:29:58) > On 1/21/2024 4:02 PM, Anton Khirnov wrote: > > I still don't see why should it be a good idea to use this struct for > > generic container cropping. It feels very much like a hammer in search > > of a nail. > > Because once we

Re: [FFmpeg-devel] [PATCH 7/8] fftools/ffmpeg_demux: implement -bsf for input

2024-01-22 Thread Anton Khirnov
Quoting Stefano Sabatini (2024-01-21 20:15:46) > On date Sunday 2024-01-21 19:35:01 +0100, Anton Khirnov wrote: > > Quoting Stefano Sabatini (2024-01-21 19:22:35) > > > On date Sunday 2024-01-21 18:43:36 +0100, Anton Khirnov wrote: > > > > Quoting Stefano

Re: [FFmpeg-devel] [PATCH 1/2 v2] avutil: add a Tile Grid API

2024-01-21 Thread Anton Khirnov
Quoting James Almer (2024-01-21 19:38:50) > On 1/21/2024 3:29 PM, Anton Khirnov wrote: > > Quoting James Almer (2024-01-21 18:47:43) > >> On 1/21/2024 2:29 PM, Anton Khirnov wrote: > >>> Honestly this whole new API strikes me as massively overthinking it. All >

Re: [FFmpeg-devel] [PATCH 7/8] fftools/ffmpeg_demux: implement -bsf for input

2024-01-21 Thread Anton Khirnov
Quoting Stefano Sabatini (2024-01-21 19:22:35) > On date Sunday 2024-01-21 18:43:36 +0100, Anton Khirnov wrote: > > Quoting Stefano Sabatini (2024-01-20 12:32:42) > [...] > > > When you present an example you usually start with an explanation > > > (what it does

Re: [FFmpeg-devel] [PATCH 1/2 v2] avutil: add a Tile Grid API

2024-01-21 Thread Anton Khirnov
Quoting James Almer (2024-01-21 18:47:43) > On 1/21/2024 2:29 PM, Anton Khirnov wrote: > > Honestly this whole new API strikes me as massively overthinking it. All > > you should need to describe an arbitrary partition of an image into > > sub-rectangles is an array of

Re: [FFmpeg-devel] [PATCH 7/8] fftools/ffmpeg_demux: implement -bsf for input

2024-01-21 Thread Anton Khirnov
Quoting Stefano Sabatini (2024-01-20 12:32:42) > On date Wednesday 2024-01-17 10:02:31 +0100, Anton Khirnov wrote: > > Quoting Stefano Sabatini (2024-01-06 13:12:19) > > > > > > This looks spurious, since this suggests the example is about the > > > list

Re: [FFmpeg-devel] [PATCH 1/2] lavf/dvenc: improve error messaging

2024-01-21 Thread Anton Khirnov
2. > > > -" video: 25fps or 29.97fps, audio: > > > 2ch/48|44|32kHz/PCM\n" > > > > +" video: 25fps or 29.97fps, audio: > > > 2ch/48000|44100|32000Hz/PCM\n" > > > > This does not

Re: [FFmpeg-devel] [PATCH 1/2 v2] avutil: add a Tile Grid API

2024-01-21 Thread Anton Khirnov
Quoting James Almer (2024-01-21 13:06:28) > On 1/21/2024 3:27 AM, Anton Khirnov wrote: > > Quoting James Almer (2024-01-20 23:04:06) > >> This includes a struct and helpers. It will be used to support container > >> level > >> cropping and tiled image f

Re: [FFmpeg-devel] [PATCH 1/2] lavf/mpenenc: extend options definition

2024-01-20 Thread Anton Khirnov
>Subject: Re: [FFmpeg-devel] [PATCH 1/2] lavf/mpenenc: extend options definition ^ typo -- Anton Khirnov ___ ffmpeg-devel mailing list ffmpeg-de

Re: [FFmpeg-devel] [PATCH 1/2] lavf/dvenc: improve error messaging

2024-01-20 Thread Anton Khirnov
atContext *s) > DVMuxContext *dvc = s->priv_data; > AVDictionaryEntry *tcr = av_dict_get(s->metadata, "timecode", NULL, 0); > > -if (!dv_init_mux(s)) { > +if (dv_init_mux(s) < 0) { > av_log(s, AV_LOG_ERROR, "Ca

Re: [FFmpeg-devel] [PATCH 1/2 v2] avutil: add a Tile Grid API

2024-01-20 Thread Anton Khirnov
to handling them in one struct? -- Anton Khirnov ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".

Re: [FFmpeg-devel] [PATCH] Revert "all: Don't set AVClass.item_name to its default value"

2024-01-19 Thread Anton Khirnov
Quoting James Almer (2024-01-19 14:01:47) > On 1/19/2024 9:36 AM, Anton Khirnov wrote: > > Some callers assume that item_name is always set, so this may be > > considered an API break. > > > > This reverts commit 0c6203c97a99f69dbaa6e4011d48c331ef5e. > >

Re: [FFmpeg-devel] [PATCH] web/template_head2: fix broken anchor on 'Contribute' link

2024-01-19 Thread Anton Khirnov
e > > -- > 2.34.1 Pushed all your pending web patches, hope I didn't miss any. Thanks, -- Anton Khirnov ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit

Re: [FFmpeg-devel] [PATCH 2/8] fftools/cmdutils: add a flag for per-stream options

2024-01-17 Thread Anton Khirnov
Quoting Michael Niedermayer (2024-01-17 14:01:49) > On Wed, Jan 17, 2024 at 01:40:29PM +0100, Anton Khirnov wrote: > > Not all OPT_SPEC options are per-stream, this will allow identifying > > those that are, which will be useful in following commits. > > --- > >

Re: [FFmpeg-devel] [PATCH 4/6] fftools/cmdutils: add option syntax for loading arbitrary arguments from a file

2024-01-17 Thread Anton Khirnov
Quoting Michael Niedermayer (2024-01-17 14:08:29) > On Wed, Jan 17, 2024 at 10:22:31AM +0100, Anton Khirnov wrote: > > Aligned with analogous feature for filter options in ffmpeg CLI. > > --- > > Changelog| 2 + > > doc/fftools-common-opts.

[FFmpeg-devel] [PATCH 8/8] fftools/ffmpeg_opt: improve wording in option descriptions

2024-01-17 Thread Anton Khirnov
--- fftools/ffmpeg_opt.c | 33 + 1 file changed, 17 insertions(+), 16 deletions(-) diff --git a/fftools/ffmpeg_opt.c b/fftools/ffmpeg_opt.c index bdb71d4283..6ff1cb229d 100644 --- a/fftools/ffmpeg_opt.c +++ b/fftools/ffmpeg_opt.c @@ -1476,7 +1476,7 @@ const

[FFmpeg-devel] [PATCH 4/8] fftools/ffmpeg_opt: add more structure to long help output

2024-01-17 Thread Anton Khirnov
Split the "Per-file main options" section into * per-file input and output * per-file input-only * per-file output-only * per-stream --- fftools/ffmpeg_opt.c | 43 ++- 1 file changed, 38 insertions(+), 5 deletions(-) diff --git a/fftools/ffmpeg_opt.c

[FFmpeg-devel] [PATCH 6/8] fftools/ffmpeg_opt: briefly mention stream specifier syntax in help output

2024-01-17 Thread Anton Khirnov
--- fftools/ffmpeg_opt.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/fftools/ffmpeg_opt.c b/fftools/ffmpeg_opt.c index 4abdd457d3..bdb71d4283 100644 --- a/fftools/ffmpeg_opt.c +++ b/fftools/ffmpeg_opt.c @@ -1194,6 +1194,9 @@ void show_help_default(const char *opt, const char *arg)

[FFmpeg-devel] [PATCH 2/8] fftools/cmdutils: add a flag for per-stream options

2024-01-17 Thread Anton Khirnov
Not all OPT_SPEC options are per-stream, this will allow identifying those that are, which will be useful in following commits. --- fftools/cmdutils.h | 13 +++-- fftools/ffmpeg_opt.c | 118 +-- 2 files changed, 68 insertions(+), 63 deletions(-) diff

[FFmpeg-devel] [PATCH 7/8] fftools/cmdutils: surround option arguments by <> in help output

2024-01-17 Thread Anton Khirnov
Makes it more clear that they are placeholders for actual values. --- fftools/cmdutils.c | 7 +++ 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/fftools/cmdutils.c b/fftools/cmdutils.c index f652820184..daf7673adb 100644 --- a/fftools/cmdutils.c +++ b/fftools/cmdutils.c @@

[FFmpeg-devel] [PATCH 5/8] fftools/cmdutils: indicate specifiers in option syntax in help output

2024-01-17 Thread Anton Khirnov
--- fftools/cmdutils.c | 6 ++ 1 file changed, 6 insertions(+) diff --git a/fftools/cmdutils.c b/fftools/cmdutils.c index be01372743..f652820184 100644 --- a/fftools/cmdutils.c +++ b/fftools/cmdutils.c @@ -126,6 +126,12 @@ void show_help_options(const OptionDef *options, const char *msg,

[FFmpeg-devel] [PATCH 1/8] fftools/cmdutils: hide some information listing options from basic help

2024-01-17 Thread Anton Khirnov
They are for advanced usage only and should not clutter basic output. --- fftools/ffmpeg_opt.c | 7 +-- fftools/opt_common.h | 24 2 files changed, 17 insertions(+), 14 deletions(-) diff --git a/fftools/ffmpeg_opt.c b/fftools/ffmpeg_opt.c index

[FFmpeg-devel] [PATCH 3/8] fftools/cmdutils: drop alt_flags parameter from show_help_options()

2024-01-17 Thread Anton Khirnov
No user sets it to more than one flag, so it is redundant with req_flags. --- fftools/cmdutils.c | 3 +-- fftools/cmdutils.h | 3 +-- fftools/ffmpeg_opt.c | 28 ++-- fftools/ffplay.c | 4 ++-- fftools/ffprobe.c| 2 +- 5 files changed, 19 insertions(+), 21

Re: [FFmpeg-devel] [PATCH 1/6] fftools/ffprobe: make option strings dynamically allocated

2024-01-17 Thread Anton Khirnov
Quoting Zhao Zhili (2024-01-17 12:22:10) > > > > On Jan 17, 2024, at 17:22, Anton Khirnov wrote: > > > > Do not store the supplied arg pointer directly. While that is valid for > > now, arg will become ephemeral in the future commits. > > --- > > fftoo

[FFmpeg-devel] [PATCH 5/6] fftools/ffmpeg: deprecate -filter_complex_script

2024-01-17 Thread Anton Khirnov
It is equivalent to -/filter_complex. --- doc/ffmpeg.texi | 9 + doc/filters.texi| 3 +-- fftools/ffmpeg.h| 1 + fftools/ffmpeg_opt.c| 9 - tests/fate/ffmpeg.mak | 2 +- tests/fate/filter-audio.mak | 8

[FFmpeg-devel] [PATCH 6/6] fftools/ffmpeg: deprecate -filter_script

2024-01-17 Thread Anton Khirnov
It is equivalent to -/filter. --- doc/ffmpeg.texi | 6 -- doc/filters.texi| 3 --- fftools/ffmpeg.h| 2 ++ fftools/ffmpeg_mux_init.c | 36 ++-- fftools/ffmpeg_opt.c| 4 +++- tests/fate/filter-audio.mak | 2 +-

[FFmpeg-devel] [PATCH 3/6] fftools/ffmpeg: make attachment filenames dynamically allocated

2024-01-17 Thread Anton Khirnov
Do not store the supplied arg pointer directly. While that is valid for now, it will become ephemeral in the future commits. --- fftools/ffmpeg_opt.c | 8 +++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/fftools/ffmpeg_opt.c b/fftools/ffmpeg_opt.c index ea995f2b5f..563f443bd8

[FFmpeg-devel] [PATCH 1/6] fftools/ffprobe: make option strings dynamically allocated

2024-01-17 Thread Anton Khirnov
Do not store the supplied arg pointer directly. While that is valid for now, arg will become ephemeral in the future commits. --- fftools/ffprobe.c | 18 +- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/fftools/ffprobe.c b/fftools/ffprobe.c index

[FFmpeg-devel] [PATCH 4/6] fftools/cmdutils: add option syntax for loading arbitrary arguments from a file

2024-01-17 Thread Anton Khirnov
Aligned with analogous feature for filter options in ffmpeg CLI. --- Changelog| 2 + doc/fftools-common-opts.texi | 9 fftools/cmdutils.c | 99 ++-- fftools/cmdutils.h | 3 ++ fftools/ffmpeg.h | 1 -

[FFmpeg-devel] [PATCH 2/6] fftools/ffplay: make option strings dynamically allocated

2024-01-17 Thread Anton Khirnov
Do not store the supplied arg pointer directly. While that is valid for now, it will become ephemeral in the future commits. --- fftools/ffplay.c | 30 +++--- 1 file changed, 23 insertions(+), 7 deletions(-) diff --git a/fftools/ffplay.c b/fftools/ffplay.c index

Re: [FFmpeg-devel] [PATCH 7/8] fftools/ffmpeg_demux: implement -bsf for input

2024-01-17 Thread Anton Khirnov
done in most literature I encounter. I find the reverse order you're suggesting far more weird and unnatural. -- Anton Khirnov ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visi

Re: [FFmpeg-devel] [PATCH 6/8] fftools/ffmpeg_demux: add demuxing thread private data

2024-01-16 Thread Anton Khirnov
Quoting Stefano Sabatini (2024-01-06 12:44:27) > On date Friday 2024-01-05 17:42:49 +0100, Anton Khirnov wrote: > > To be used for data that never needs to be visible outside of the > > demuxer thread, similarly as was previously done for other components. > > --- > >

Re: [FFmpeg-devel] [PATCH 5/8] fftools/ffmpeg_demux: only allocate the decoder when actually decoding

2024-01-16 Thread Anton Khirnov
Quoting Stefano Sabatini (2024-01-06 12:34:53) > On date Friday 2024-01-05 17:42:48 +0100, Anton Khirnov wrote: > > It is not needed otherwise. > > --- > > fftools/ffmpeg_demux.c | 24 > > 1 file changed, 12 insertions(+), 12 deletions(-) &g

Re: [FFmpeg-devel] [PATCH 4/8] fftools/ffmpeg_demux: set options on codec parameters rather than decoder

2024-01-16 Thread Anton Khirnov
Quoting James Almer (2024-01-06 15:22:10) > This does not fix the issue of the guessed channel layout not being > present on the output stream, Well, it wasn't supposed to fix anything. This patch exists as a prerequisite for the next one. -- Anton K

[FFmpeg-devel] [PATCH 7/8] fftools/ffmpeg_demux: implement -bsf for input

2024-01-05 Thread Anton Khirnov
Previously bitstream filters could only be applied right before muxing, this allows to apply them right after demuxing. --- Changelog | 1 + doc/ffmpeg.texi | 22 +++-- fftools/ffmpeg_demux.c | 139

[FFmpeg-devel] [PATCH 6/8] fftools/ffmpeg_demux: add demuxing thread private data

2024-01-05 Thread Anton Khirnov
To be used for data that never needs to be visible outside of the demuxer thread, similarly as was previously done for other components. --- fftools/ffmpeg_demux.c | 67 -- 1 file changed, 45 insertions(+), 22 deletions(-) diff --git

[FFmpeg-devel] [PATCH 8/8] fftools/ffmpeg_opt: mark -stream_group as expert option

2024-01-05 Thread Anton Khirnov
--- fftools/ffmpeg_opt.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fftools/ffmpeg_opt.c b/fftools/ffmpeg_opt.c index 76b50c0bad..ea995f2b5f 100644 --- a/fftools/ffmpeg_opt.c +++ b/fftools/ffmpeg_opt.c @@ -1531,7 +1531,7 @@ const OptionDef options[] = { { "program",

[FFmpeg-devel] [PATCH 3/8] fftools/ffmpeg_demux: do not set bitexact directly on the decoder

2024-01-05 Thread Anton Khirnov
Add it to decoder options instead, to be processed when opening the decoder. This way it won't be overridden by flags the user might be setting otherwise. --- fftools/ffmpeg_demux.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fftools/ffmpeg_demux.c b/fftools/ffmpeg_demux.c

[FFmpeg-devel] [PATCH 2/8] doc/ffmpeg: drop documentation for non-existent -sbsf

2024-01-05 Thread Anton Khirnov
--- doc/ffmpeg.texi | 2 -- 1 file changed, 2 deletions(-) diff --git a/doc/ffmpeg.texi b/doc/ffmpeg.texi index 7246a46d2f..d75517b443 100644 --- a/doc/ffmpeg.texi +++ b/doc/ffmpeg.texi @@ -1643,8 +1643,6 @@ option to disable streams individually. As an output option, disables subtitle

[FFmpeg-devel] [PATCH 5/8] fftools/ffmpeg_demux: only allocate the decoder when actually decoding

2024-01-05 Thread Anton Khirnov
It is not needed otherwise. --- fftools/ffmpeg_demux.c | 24 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/fftools/ffmpeg_demux.c b/fftools/ffmpeg_demux.c index 892094c512..c51140b1c5 100644 --- a/fftools/ffmpeg_demux.c +++ b/fftools/ffmpeg_demux.c @@

[FFmpeg-devel] [PATCH 4/8] fftools/ffmpeg_demux: set options on codec parameters rather than decoder

2024-01-05 Thread Anton Khirnov
This avoids the requirement to always have a decoder context. --- fftools/ffmpeg_demux.c | 43 +- 1 file changed, 21 insertions(+), 22 deletions(-) diff --git a/fftools/ffmpeg_demux.c b/fftools/ffmpeg_demux.c index cacdc76a71..892094c512 100644 ---

[FFmpeg-devel] [PATCH 1/8] fftools/ffmpeg_demux: replace abort() by av_assert0(0)

2024-01-05 Thread Anton Khirnov
This is the standard way to mark unreachable cases in a switch --- fftools/ffmpeg_demux.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/fftools/ffmpeg_demux.c b/fftools/ffmpeg_demux.c index 95af31e9ef..5d07b7153d 100644 --- a/fftools/ffmpeg_demux.c +++

[FFmpeg-devel] [PATCH 1/2] web: add a news entry for IAMF

2024-01-05 Thread Anton Khirnov
--- src/index | 7 +++ 1 file changed, 7 insertions(+) diff --git a/src/index b/src/index index 9a21161..a2536ff 100644 --- a/src/index +++ b/src/index @@ -35,6 +35,13 @@ News + December 18th, 2023, IAMF support + + The libavformat library can now read and write

[FFmpeg-devel] [PATCH 2/2] web: add a news entry for VVC

2024-01-05 Thread Anton Khirnov
--- src/index | 8 1 file changed, 8 insertions(+) diff --git a/src/index b/src/index index a2536ff..98cc516 100644 --- a/src/index +++ b/src/index @@ -35,6 +35,14 @@ News + January 3rd, 2024, native VVC decoder + + The libavcodec library now contains a native VVC

Re: [FFmpeg-devel] [PATCH] all: Don't set AVClass.item_name to its default value

2023-12-25 Thread Anton Khirnov
Quoting Zhao Zhili (2023-12-25 10:27:59) > > > > On Dec 25, 2023, at 16:38, Anton Khirnov wrote: > > > > Quoting Kacper Michajlow (2023-12-24 11:41:52) > >> On Fri, 22 Dec 2023 at 14:57, Anton Khirnov wrote: > >>> > >>> Quoti

Re: [FFmpeg-devel] [PATCH] all: Don't set AVClass.item_name to its default value

2023-12-25 Thread Anton Khirnov
Quoting Kacper Michajlow (2023-12-24 11:41:52) > On Fri, 22 Dec 2023 at 14:57, Anton Khirnov wrote: > > > > Quoting Andreas Rheinhardt (2023-12-22 14:48:45) > > > Avoids relocations. > > > > > > Signed-off-by: Andreas Rheinhardt > > > -

Re: [FFmpeg-devel] [PATCH] all: Don't set AVClass.item_name to its default value

2023-12-22 Thread Anton Khirnov
Quoting Andreas Rheinhardt (2023-12-22 14:48:45) > Avoids relocations. > > Signed-off-by: Andreas Rheinhardt > --- Maybe mention that it's not needed after acf63d5350adeae551d412db699f8ca03f7e76b9. LGTM otherwise. -- Anton Khirnov ___

Re: [FFmpeg-devel] [PATCH 1/2] lavf: allow setting AVStream.discard as an AVOption

2023-12-22 Thread Anton Khirnov
Quoting James Almer (2023-12-20 04:02:37) > On 12/19/2023 9:10 AM, Anton Khirnov wrote: > > Quoting James Almer (2023-12-19 13:09:05) > >> On 12/19/2023 7:41 AM, Anton Khirnov wrote: > >>> Quoting James Almer (2023-12-18 20:30:47) > >>>&g

Re: [FFmpeg-devel] [PATCH 13/13 v3] fftools/ffmpeg: convert to a threaded architecture

2023-12-22 Thread Anton Khirnov
factor of 2x speed. > > But simple transcode from doc/examples is still several times faster than > > that. > > > > I bet using mutexes and condition variables is far from perfect solution > > or fftools/ code is buggy. > > > > This is similar to -la

Re: [FFmpeg-devel] Temporary delays in patch reviewing and testing by me

2023-12-22 Thread Anton Khirnov
endant shops > > > they should be here soon but i dont know what "soon" is around christmess > > > > > > > > also i could try running it with just 2 modules, i might try that > > > tomorrow > > > > system seems working stable with 2

Re: [FFmpeg-devel] [PATCH] lavc: remove the QOA decoder

2023-12-21 Thread Anton Khirnov
Hi Paul, Quoting Paul B Mahol (2023-12-21 21:05:18) > Say what serious feature you contributed ? - Nothing. this is a personal attach. Personal attacks are not allowed on this mailing list. Please refrain from them in the future. -- Anton Khirnov (CC mem

Re: [FFmpeg-devel] Subject: [PATCH 1/3] lvac/dnxhdenc: add ff_dnxhdenc_init

2023-12-20 Thread Anton Khirnov
dnxhdenc.h > +++ b/libavcodec/dnxhdenc.h > @@ -111,6 +111,7 @@ typedef struct DNXHDEncContext { > const uint8_t *pixels, ptrdiff_t line_size); > } DNXHDEncContext; > > +void ff_dnxhdenc_init(DNXHDEncContext *ctx); Shouldn't it actually replace the existing ff_dnxhdenc_init_x86() c

Re: [FFmpeg-devel] [PATCH v3 1/3] fftools/ffmpeg_filter: fix NULL pointer dereference

2023-12-20 Thread Anton Khirnov
c > +++ b/fftools/ffmpeg_filter.c > @@ -2835,7 +2835,7 @@ read_frames: > for (unsigned i = 0; i < fg->nb_outputs; i++) { > OutputFilterPriv *ofp = ofp_from_ofilter(fg->outputs[i]); > > -if (fgt.eof_out[i]) > +if (fgt.eof_out[i] || !fgt

Re: [FFmpeg-devel] [PATCH] configure: Add a --disable-version-tracking option

2023-12-20 Thread Anton Khirnov
is seem fine? Otherwise I'd go > ahead with this in a day or two if there's no opposition to it. I am fine with the name and the general idea. -- Anton Khirnov ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-de

Re: [FFmpeg-devel] [PATCH 1/2] lavf: allow setting AVStream.discard as an AVOption

2023-12-19 Thread Anton Khirnov
Quoting James Almer (2023-12-19 13:09:05) > On 12/19/2023 7:41 AM, Anton Khirnov wrote: > > Quoting James Almer (2023-12-18 20:30:47) > >> On 12/18/2023 4:19 PM, Anton Khirnov wrote: > >>> --- > >>>libavformat/options.c | 10 ++ > >>>

Re: [FFmpeg-devel] [PATCH v2 1/3] fftools/ffmpeg_filter: fix NULL pointer dereference

2023-12-19 Thread Anton Khirnov
Quoting Zhao Zhili (2023-12-19 12:31:53) > > > > On Dec 19, 2023, at 18:32, Anton Khirnov wrote: > > > > Quoting Zhao Zhili (2023-12-19 16:37:01) > >> From: Zhao Zhili > >> > >> In close_output(), a dummy frame is created with format NO

Re: [FFmpeg-devel] [PATCH 1/2] lavf: allow setting AVStream.discard as an AVOption

2023-12-19 Thread Anton Khirnov
Quoting James Almer (2023-12-18 20:30:47) > On 12/18/2023 4:19 PM, Anton Khirnov wrote: > > --- > > libavformat/options.c | 10 ++ > > 1 file changed, 10 insertions(+) > > > > diff --git a/libavformat/options.c b/libavformat/options.c > &

Re: [FFmpeg-devel] [PATCH v2 3/3] fftools/ffmpeg_enc: assert necessary frame fields before create encoder

2023-12-19 Thread Anton Khirnov
Quoting Zhao Zhili (2023-12-19 16:37:03) > From: Zhao Zhili > > --- > fftools/ffmpeg_enc.c | 6 ++ > 1 file changed, 6 insertions(+) Ok. -- Anton Khirnov ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/m

Re: [FFmpeg-devel] [PATCH v2 2/3] fftools/ffmpeg_filter: remove semicolon after code block

2023-12-19 Thread Anton Khirnov
ols/ffmpeg_filter.c > +++ b/fftools/ffmpeg_filter.c > @@ -2456,7 +2456,7 @@ static int read_frames(FilterGraph *fg, > FilterGraphThread *fgt, > } > } > did_step = 1; > -}; > +} ok -- Anton Khirnov ___

Re: [FFmpeg-devel] [PATCH v2 1/3] fftools/ffmpeg_filter: fix NULL pointer dereference

2023-12-19 Thread Anton Khirnov
_NO_REQUEST); > -if (ret == AVERROR_EOF && !fgt->eof_out[ofp->index]) { > -ret = fg_output_frame(ofp, fgt, NULL); > -return (ret < 0) ? ret : 1; Why are you removing this block? -- Anton Khirnov ___ ffmpeg-devel mailing list

[FFmpeg-devel] [PATCH 1/2] lavf: allow setting AVStream.discard as an AVOption

2023-12-18 Thread Anton Khirnov
--- libavformat/options.c | 10 ++ 1 file changed, 10 insertions(+) diff --git a/libavformat/options.c b/libavformat/options.c index bf6113ca95..cc89dd6c72 100644 --- a/libavformat/options.c +++ b/libavformat/options.c @@ -229,6 +229,16 @@ static const AVOption stream_options[] = {

[FFmpeg-devel] [PATCH 2/2] fftools/ffmpeg_demux: set discard on the AVStream directly

2023-12-18 Thread Anton Khirnov
Avoid taking an ugly detour through the decoder AVCodecContext. --- fftools/ffmpeg_demux.c | 15 +++ 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/fftools/ffmpeg_demux.c b/fftools/ffmpeg_demux.c index eca3de709c..a28a94b5ed 100644 --- a/fftools/ffmpeg_demux.c +++

Re: [FFmpeg-devel] [RFC] fftools/ffmpeg and libavdevice/sdl issue

2023-12-18 Thread Anton Khirnov
Quoting Stefano Sabatini (2023-12-16 16:18:07) > On date Thursday 2023-12-14 10:35:56 +0100, Nicolas George wrote: > > Anton Khirnov (12023-12-14): > [...] > > > I have to strongly disagree. This is neither practically workable, > > > nor a good goal to aim at.

Re: [FFmpeg-devel] [PATCH] avcodec/libjxldec: emit proper PTS to decoded AVFrame

2023-12-18 Thread Anton Khirnov
Quoting Leo Izen (2023-12-15 00:33:33) > On 12/14/23 03:28, Anton Khirnov wrote: > > This logic seems shady to me. > > Which part, specifically? The animated logic, or the non-animated logic? Aspects of both looked questionable to me (which doesn't necessarily means it's wrong)

Re: [FFmpeg-devel] [PATCHv2 1/1] checkasm/lpc: test compute_autocorr

2023-12-18 Thread Anton Khirnov
easily available for > whoever wants to dissect the old existing x86 assembly implementations. > > That's clearly not ideal, but would pragmatically be better than to just > not merge the new checkasm test at all. What do others think?

Re: [FFmpeg-devel] [PATCH 1/2] fftools/ffmpeg_filter: fix null pointer dereference

2023-12-18 Thread Anton Khirnov
Quoting Zhao Zhili (2023-12-18 13:04:24) > > > > On Dec 18, 2023, at 19:19, Anton Khirnov wrote: > > > > Quoting Zhao Zhili (2023-12-17 12:01:08) > >> From: Zhao Zhili > >> > >> A dummy frame is created with format NONE passed to enc_

Re: [FFmpeg-devel] [PATCH] avformat/file: seek back to initial position for fd protocol

2023-12-18 Thread Anton Khirnov
3 insertions(+), 1 deletion(-) Looks ok. -- Anton Khirnov ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".

Re: [FFmpeg-devel] [PATCH 2/2] fftools/ffmpeg_enc: assert frame->format isn't NONE before use

2023-12-18 Thread Anton Khirnov
av_mul_q(ost->frame_aspect_ratio, (AVRational){ enc_ctx->height, > enc_ctx->width }) : > frame->sample_aspect_ratio; > > +av_assert0(frame->format != AV_PIX_FMT_NONE); I'd prefer if you did this at the top of the block,

Re: [FFmpeg-devel] [PATCH 1/2] fftools/ffmpeg_filter: fix null pointer dereference

2023-12-18 Thread Anton Khirnov
pen. This code should only be reachable if the filtergraph was configured at least once, then configure_filtergraph() should set ofp->format to the format reported by the lavfi buffersink. Does this then mean that lavfi is configured with AV_PIX_FMT_NONE? Or that this is somehow triggered wit

Re: [FFmpeg-devel] [PATCH 1/8] avutil: introduce an Immersive Audio Model and Formats API

2023-12-18 Thread Anton Khirnov
exception of the last subblock, have equal durations. > + * > + * Must be 0 if subblocks have different durations. > + */ > +unsigned int constant_subblock_duration; This also seems like should be a flags field. Otherwise looks good. -- Anton Khirnov _

[FFmpeg-devel] [PATCH 18/20] fftools/ffmpeg_opt: fix -dn flags

2023-12-18 Thread Anton Khirnov
It's a data, not video option. --- fftools/ffmpeg_opt.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fftools/ffmpeg_opt.c b/fftools/ffmpeg_opt.c index 87357e8b64..d6de997af8 100644 --- a/fftools/ffmpeg_opt.c +++ b/fftools/ffmpeg_opt.c @@ -1955,7 +1955,7 @@ const OptionDef

[FFmpeg-devel] [PATCH 08/20] fftools/cmdutils: include OPT_PERFILE in OPT_OFFSET

2023-12-18 Thread Anton Khirnov
And analogously OPT_OFFSET in OPT_SPEC. Previously the inclusion would be implicit and required all code to remember this. --- fftools/cmdutils.c | 6 +++--- fftools/cmdutils.h | 21 + fftools/ffmpeg_opt.c | 14 ++ 3 files changed, 22 insertions(+), 19

[FFmpeg-devel] [PATCH 14/20] fftools/opt_common: mark some options as OPT_EXPERT

2023-12-18 Thread Anton Khirnov
So they don't clutter the standard help output. -loglevel is marked because there is no need to show two options (-v and -loglevel) that do the same thing. --- fftools/opt_common.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/fftools/opt_common.h

[FFmpeg-devel] [PATCH 13/20] fftools/ffmpeg_opt: update program description to match manpage

2023-12-18 Thread Anton Khirnov
Cf. 2244722f1f3 --- fftools/ffmpeg_opt.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fftools/ffmpeg_opt.c b/fftools/ffmpeg_opt.c index 8b2c30e2e6..eee12df893 100644 --- a/fftools/ffmpeg_opt.c +++ b/fftools/ffmpeg_opt.c @@ -1254,7 +1254,7 @@ void show_help_default(const

<    1   2   3   4   5   6   7   8   9   10   >