Re: [FFmpeg-devel] [PATCH v4 3/4] all: Link to "context" from all contexts with documentation

2024-05-16 Thread Andrew Sayers
On Wed, May 15, 2024 at 06:46:19PM +0200, Lynne via ffmpeg-devel wrote: > On 15/05/2024 17:54, Andrew Sayers wrote: > > Some headings needed to be rewritten to accomodate the text, > > (hopefully) without changing the meaning. > > --- > > libavcodec/a

[FFmpeg-devel] [PATCH v5 1/6] Add documentation for ff_neterrno()

2024-05-16 Thread Andrew Sayers
--- libavformat/network.h | 10 ++ 1 file changed, 10 insertions(+) diff --git a/libavformat/network.h b/libavformat/network.h index ca214087fc..728c20c9bb 100644 --- a/libavformat/network.h +++ b/libavformat/network.h @@ -57,6 +57,11 @@ #define getsockopt(a, b, c, d, e) getsockopt(a, b,

[FFmpeg-devel] [PATCH v5 0/6] avformat/network: improve ff_neterrno()

2024-05-16 Thread Andrew Sayers
On Thu, May 16, 2024 at 01:42:23PM +0300, Rémi Denis-Courmont wrote: > Err, please. Keep this to the Windows back-end. Nothing good is going to > happen with a function that does nothing (on other platforms) and has a > nondescript numbered name. I have no strong opinion either way, and it feels

[FFmpeg-devel] [PATCH v5 2/6] Rename "ff_neterrno()" to "ff_neterror()"

2024-05-16 Thread Andrew Sayers
This function does not check errno on Windows, so the old name was misleading. Actual command: sed -i -e 's/ff_neterrno/ff_neterror/g' $( git grep -l ff_neterrno ) --- libavformat/network.c | 24 libavformat/network.h | 4 ++-- libavformat/rtpproto.c | 8

[FFmpeg-devel] [PATCH v5 3/6] avformat/network: add ff_neterror2() for cases that don't use WSAGetLastError

2024-05-16 Thread Andrew Sayers
For example, WSAStartup()'s documentation says: "A call to the WSAGetLastError function is not needed and should not be used" --- libavformat/network.c | 5 - libavformat/network.h | 6 ++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/libavformat/network.c b/libavfor

[FFmpeg-devel] [PATCH v5 4/6] avformat/network: add ff_neterror2() for compatibility with Windows

2024-05-16 Thread Andrew Sayers
This is not currently used anywhere, but included to avoid potential future surprises. --- libavformat/network.h | 6 ++ 1 file changed, 6 insertions(+) diff --git a/libavformat/network.h b/libavformat/network.h index 1ac067f09f..7c8f81a050 100644 --- a/libavformat/network.h +++ b/libavformat

[FFmpeg-devel] [PATCH v5 5/6] avformat/network: Return 0/AVERROR from ff_network_init()

2024-05-16 Thread Andrew Sayers
--- libavformat/avio.c| 7 +-- libavformat/network.c | 7 +++ libavformat/rtsp.c| 14 -- libavformat/rtspdec.c | 5 +++-- libavformat/sapdec.c | 5 +++-- libavformat/sapenc.c | 5 +++-- 6 files changed, 25 insertions(+), 18 deletions(-) diff --git a/libavformat/

[FFmpeg-devel] [PATCH v5 6/6] avformat/avformat: Document return codes for av_format_(de)init

2024-05-16 Thread Andrew Sayers
--- libavformat/avformat.h | 4 1 file changed, 4 insertions(+) diff --git a/libavformat/avformat.h b/libavformat/avformat.h index 8afdcd9fd0..f624fb1e2e 100644 --- a/libavformat/avformat.h +++ b/libavformat/avformat.h @@ -1944,12 +1944,16 @@ const char *avformat_license(void); * This func

Re: [FFmpeg-devel] [RFC] Value analysis with Frama-C's Eva plugin (and an UB fix)

2024-05-16 Thread Andrew Sayers
On Wed, May 15, 2024 at 09:39:43PM +0200, Tomas Härdin wrote: > Hi > > So as I said in the coverity thread it would be good if we could get at > least part of the codebase covered using formal tools. To this effect I > sat down for an hour just now and gave libavutil/common.h a go with > Frama-C's

[FFmpeg-devel] [PATCH] all: s/Open/Allocate and initialize/ in comments

2024-05-16 Thread Andrew Sayers
Comments for a few prominent functions claim to "open" something, when they actually "allocate and initialize" that thing. Using a different word misleads users into thinking it's doing a different thing, making the interface more time-consuming to learn. Replace "open" with the more standard "al

[FFmpeg-devel] [PATCH] avutil/opt: Say more often that AV_OPT_SEARCH_CHILDREN searches children first

2024-05-16 Thread Andrew Sayers
This behaviour is already mentioned in the documentation for AV_OPT_SEARCH_CHILDREN itself, but that's quite easy to miss. Knowing that child options *override* parent ones is useful for users, so it's worth mentioning in all the places they would look. av_opt_find() had a note that av_opt_find2(

Re: [FFmpeg-devel] [RFC] Value analysis with Frama-C's Eva plugin (and an UB fix)

2024-05-16 Thread Andrew Sayers
On Thu, May 16, 2024 at 02:31:31PM +0200, Tomas Härdin wrote: > tor 2024-05-16 klockan 13:12 +0100 skrev Andrew Sayers: > > On Wed, May 15, 2024 at 09:39:43PM +0200, Tomas Härdin wrote: > > > Hi > > > > > > So as I said in the coverity thread it would be good

Re: [FFmpeg-devel] [PATCH 1/6] lavf/tls_mbedtls: handle more error codes for human-readable message

2024-05-17 Thread Andrew Sayers
On Fri, May 17, 2024 at 10:34:26AM +0200, Sfan5 wrote: > Signed-off-by: sfan5 > --- > libavformat/tls_mbedtls.c | 6 ++ > 1 file changed, 6 insertions(+) > > diff --git a/libavformat/tls_mbedtls.c b/libavformat/tls_mbedtls.c > index 1a182e735e..fd6ba0b1f5 100644 > --- a/libavformat/tls_mbedt

Re: [FFmpeg-devel] [RFC] STF 2025

2024-05-17 Thread Andrew Sayers
On Fri, May 17, 2024 at 03:49:58PM +0200, Michael Niedermayer wrote: > Hi all > > Before this is forgotten again, better start some dicsussion too early than > too late > > I propose that if we have the oppertunity again next year to receive a grant > from STF. That we use it to fund: > > * Pau

Re: [FFmpeg-devel] [PATCH] doc/developer: add examples to clarify code style

2024-05-18 Thread Andrew Sayers
I would have found this very helpful! On Sat, May 18, 2024 at 07:00:50PM +0200, Marvin Scholz wrote: > Given the frequency that new developers, myself included, get the > code style wrong, it is useful to add some examples to clarify how > things should be done. > --- > doc/developer.texi | 57 ++

Re: [FFmpeg-devel] [RFC] STF 2025

2024-05-19 Thread Andrew Sayers
On Sun, May 19, 2024 at 01:29:43PM +0200, Thilo Borgmann via ffmpeg-devel wrote: > > [...] > > > * Fund administrative / maintainance work (one example is the mailman > > > upgrade that is needed > > > with the next OS upgrade on one of our servers (this is not as trivial > > > as one might >

Re: [FFmpeg-devel] [PATCH v9 11/13] avutil/hwcontext_d3d12va: add Flags for resource creation

2024-05-21 Thread Andrew Sayers
(Only reviewing documentation, not code) On Mon, May 20, 2024 at 10:52:20PM +0800, tong1.wu-at-intel@ffmpeg.org wrote: > From: Tong Wu > > Flags field is added to support diffferent resource creation. > > Signed-off-by: Tong Wu > --- > doc/APIchanges| 3 +++ > libavutil/h

Re: [FFmpeg-devel] [PATCH v3 1/3] doc: Explain what "context" means

2024-05-22 Thread Andrew Sayers
On Wed, May 22, 2024 at 12:37:37PM +0200, Stefano Sabatini wrote: > On date Sunday 2024-05-05 22:04:36 +0100, Andrew Sayers wrote: > > I'm still travelling, so the following thoughts might be a bit > > half-formed. But I wanted to get some feedback before sitting down &g

Re: [FFmpeg-devel] [PATCH v4 4/4] lavf: Add documentation for private "Context" classes

2024-05-22 Thread Andrew Sayers
On Wed, May 22, 2024 at 12:08:29PM +0200, Stefano Sabatini wrote: > On date Wednesday 2024-05-15 16:54:22 +0100, Andrew Sayers wrote: > > Doxygen thinks any text like "Context for foo" is a link to a struct called > > "Context". > > Add a description and

Re: [FFmpeg-devel] [PATCH v4 1/4] doc: Explain what "context" means

2024-05-22 Thread Andrew Sayers
nswers to specific questions. > > On date Wednesday 2024-05-15 16:54:19 +0100, Andrew Sayers wrote: > > Derived from detailed explanations kindly provided by Stefano Sabatini: > > https://ffmpeg.org/pipermail/ffmpeg-devel/2024-April/325903.ht

Re: [FFmpeg-devel] [PATCH v4 4/4] lavf: Add documentation for private "Context" classes

2024-05-22 Thread Andrew Sayers
On Wed, May 22, 2024 at 05:24:36PM +0200, Andreas Rheinhardt wrote: > These structures should be renamed instead of adding these comments > (which are pointless for internal developers). I just sent a patch for that. > Thanks for pointing out the issue. Oh, great! So the next version of this patc

[FFmpeg-devel] [PATCH v5 0/4] Explain what "context" means

2024-05-23 Thread Andrew Sayers
NOTE: this patchset depends on [1], and should not be applied before that. I think it's important to guide readers between parts of FFmpeg, because learning how the pieces of the puzzle fit together is a big part of the newbie experience. So this patchset replaces the "@ref Context for foo" state

[FFmpeg-devel] [PATCH v5 1/4] doc: Explain what "context" means

2024-05-23 Thread Andrew Sayers
Derived from explanations kindly provided by Stefano Sabatini and others: https://ffmpeg.org/pipermail/ffmpeg-devel/2024-April/325903.html --- doc/context.md | 439 + 1 file changed, 439 insertions(+) create mode 100644 doc/context.md diff --git a/

[FFmpeg-devel] [PATCH v5 2/4] lavu: Clarify relationship between AVClass, AVOption and context

2024-05-23 Thread Andrew Sayers
--- libavutil/log.h | 16 +--- libavutil/opt.h | 17 ++--- 2 files changed, 27 insertions(+), 6 deletions(-) diff --git a/libavutil/log.h b/libavutil/log.h index ab7ceabe22..d599ab506e 100644 --- a/libavutil/log.h +++ b/libavutil/log.h @@ -59,9 +59,19 @@ typedef enum { st

[FFmpeg-devel] [PATCH v5 3/4] all: Link to "context" from all public contexts with documentation

2024-05-23 Thread Andrew Sayers
The goal of putting these links in "@see" blocks is to provide hooks for future developers to add links to other useful parts of the codebase. --- libavcodec/avcodec.h | 3 +++ libavcodec/bsf.h | 3 +++ libavcodec/d3d11va.h | 3 +++ libavcodec/mediacodec.h

[FFmpeg-devel] [PATCH v5 4/4] all: Rewrite documentation for contexts

2024-05-23 Thread Andrew Sayers
Make their documentation more readable and similar to each other, (hopefully) without changing the meaning. --- libavcodec/aac/aacdec.h | 2 +- libavcodec/aacenc.h | 2 +- libavcodec/ac3enc.h | 2 +- libavcodec/amfenc.h | 2 +- libavcodec/atrac.h

Re: [FFmpeg-devel] [PATCH v5 0/4] Explain what "context" means

2024-05-24 Thread Andrew Sayers
On Fri, May 24, 2024 at 03:50:52AM +0200, Michael Niedermayer wrote: > On Thu, May 23, 2024 at 09:00:39PM +0100, Andrew Sayers wrote: > > Imagine you wanted to write a system that nudged people to try new codecs. > > It might say e.g. "you seem to be using H.264, would y

Re: [FFmpeg-devel] [RFC] STF 2025

2024-05-24 Thread Andrew Sayers
On Fri, May 17, 2024 at 03:49:58PM +0200, Michael Niedermayer wrote: > Hi all > > Before this is forgotten again, better start some dicsussion too early than > too late This comment is inspired by the other subthread, but not directly in reply to it. I'm replying to this post rather than get in

Re: [FFmpeg-devel] [PATCH v4 1/4] doc: Explain what "context" means

2024-05-26 Thread Andrew Sayers
It feels like we've got through most of the mid-level "how FFmpeg works" stuff, and now we're left with language choices (e.g "options" vs. "introspection") and philosophical discussions (e.g. the relationship between contexts and OOP). It's probably best to philosophise first, then come back to la

Re: [FFmpeg-devel] [PATCH v10 12/13] avcodec: add D3D12VA hardware HEVC encoder

2024-05-28 Thread Andrew Sayers
On Wed, May 22, 2024 at 09:26:25AM +0800, tong1.wu-at-intel@ffmpeg.org wrote: > +static int d3d12va_create_encoder_heap(AVCodecContext* avctx) Nitpick: s/\* / \*/ I'm trying to write typo-detection bot. This is the only problem it noticed in this patchset, but more nits incoming elsewhere.

Re: [FFmpeg-devel] [RFC 00/13] flvdec/flvenc: add support for enhanced rtmp codecs and multitrack/multichannel

2024-05-28 Thread Andrew Sayers
On Tue, May 21, 2024 at 11:02:09AM +0200, Timo Rothenpieler wrote: > This is based on the preliminary spec for enhanced rtmp v2: > https://veovera.org/docs/enhanced/enhanced-rtmp-v2 > > The spec is not final, and can still undergo breaking changes, hence this set > is purely for comments and revi

Re: [FFmpeg-devel] [PATCH v3 2/3] avfilter/af_volumedetect.c: Add 32bit float audio support

2024-05-28 Thread Andrew Sayers
On Mon, May 20, 2024 at 11:16:05PM +0300, Yigithan Yigit wrote: > --- > libavfilter/af_volumedetect.c | 159 -- > 1 file changed, 133 insertions(+), 26 deletions(-) > > diff --git a/libavfilter/af_volumedetect.c b/libavfilter/af_volumedetect.c > index 327801a7f9..d

Re: [FFmpeg-devel] [PATCH] avcodec/mediacodec: Add support of dynamic bitrate

2024-05-28 Thread Andrew Sayers
On Mon, May 27, 2024 at 01:49:47PM +0100, Dmitrii Okunev wrote: > MediaCodec supports parameter "video-bitrate" to change the bitrate > on fly. This commit add possibility to use it. > > It adds option -bitrate_ctrl_socket to the encoder which makes > the encoder to create an UNIX socket and liste

Re: [FFmpeg-devel] [PATCH v4 1/4] doc: Explain what "context" means

2024-05-29 Thread Andrew Sayers
On Tue, May 28, 2024 at 07:24:55PM +0200, Stefano Sabatini wrote: > > I think we start with different assumptions: you assume that most of > the readers are familiar with OOP jargon, and that they will leverage > the OOP jargon to understand the FFmpeg API. I think this is Not exactly. I'm sayin

Re: [FFmpeg-devel] [PATCH v4 1/4] doc: Explain what "context" means

2024-05-29 Thread Andrew Sayers
Posting this separately, as these are practical "how does FFmpeg work" issues vaguely inspired by recent discussions. *How do namespaces work in FFmpeg?* We've talked a bit about function namespaces recently. One reason I've suggested they're a weak signal is because they aren't really addresse

Re: [FFmpeg-devel] [PATCH v4 1/4] doc: Explain what "context" means

2024-05-29 Thread Andrew Sayers
On Wed, May 29, 2024 at 01:06:30PM +0200, Paul B Mahol wrote: > On Wed, May 29, 2024 at 12:50 PM Andrew Sayers > wrote: > [...] > > *Are AVOptions just command-line options?* > > > > I have trouble with statements like "AVOptions is a framework for options"

Re: [FFmpeg-devel] git problems

2024-05-30 Thread Andrew Sayers
On Thu, May 30, 2024 at 01:30:09AM +0200, Michael Niedermayer wrote: > Hi all > > It seems the security update (https://ubuntu.com/security/notices/USN-6793-1) > broke public git > > We use gitolite that runs under its own user and serve git through apache > which runs under a different user. > A

Re: [FFmpeg-devel] [PATCH v5 0/6] avformat/network: improve ff_neterrno()

2024-05-31 Thread Andrew Sayers
On Thu, May 16, 2024 at 12:59:05PM +0100, Andrew Sayers wrote: > On Thu, May 16, 2024 at 01:42:23PM +0300, Rémi Denis-Courmont wrote: > > Err, please. Keep this to the Windows back-end. Nothing good is going to > > happen with a function that does nothing (on other platf

Re: [FFmpeg-devel] FFmpeg 7.0 blocking issues

2024-06-04 Thread Andrew Sayers
On Mon, Jun 03, 2024 at 11:32:37PM +0200, Michael Niedermayer wrote: > On Sun, Jun 02, 2024 at 03:49:42PM +0200, Sebastian Ramacher wrote: [...] > > Just as a FYI: ffmpeg 7.0 breaks close to 70 reverse dependencies in > > Debian. The list is available at [1]. So if you want ffmpeg X to be in > > De

[FFmpeg-devel] [PATCH v6 0/4] doc: Explain what "context" means

2024-06-04 Thread Andrew Sayers
I'm making a list of little documentation patches to submit as a set once this patchset is done. I've put Sw{r,s}Context on the list, and will think about their relationship to other opaque AVOptions-enabled structs as part of that. I don't see anything in that discussion that affects this patchse

[FFmpeg-devel] [PATCH v6 1/4] doc: Explain what "context" means

2024-06-04 Thread Andrew Sayers
Derived from explanations kindly provided by Stefano Sabatini and others: https://ffmpeg.org/pipermail/ffmpeg-devel/2024-April/325903.html --- doc/context.md | 430 + 1 file changed, 430 insertions(+) create mode 100644 doc/context.md diff --git a/

[FFmpeg-devel] [PATCH v6 2/4] lavu: Clarify relationship between AVClass, AVOption and context

2024-06-04 Thread Andrew Sayers
--- libavutil/log.h | 16 +--- libavutil/opt.h | 26 +- 2 files changed, 34 insertions(+), 8 deletions(-) diff --git a/libavutil/log.h b/libavutil/log.h index ab7ceabe22..88b35897c6 100644 --- a/libavutil/log.h +++ b/libavutil/log.h @@ -59,9 +59,19 @@ typedef e

[FFmpeg-devel] [PATCH v6 3/4] all: Link to "context" from all public contexts with documentation

2024-06-04 Thread Andrew Sayers
The goal of putting these links in "@see" blocks is to provide hooks for future developers to add links to other useful parts of the codebase. --- libavcodec/avcodec.h | 3 +++ libavcodec/bsf.h | 3 +++ libavcodec/d3d11va.h | 3 +++ libavcodec/mediacodec.h

[FFmpeg-devel] [PATCH v6 4/4] all: Rewrite documentation for contexts

2024-06-04 Thread Andrew Sayers
Make their documentation more readable and similar to each other, (hopefully) without changing the meaning. --- libavcodec/aac/aacdec.h | 2 +- libavcodec/aacenc.h | 2 +- libavcodec/ac3enc.h | 2 +- libavcodec/amfenc.h | 2 +- libavcodec/atrac.h

Re: [FFmpeg-devel] [RFC] STF 2025

2024-06-04 Thread Andrew Sayers
On Fri, May 17, 2024 at 03:49:58PM +0200, Michael Niedermayer wrote: > Hi all > > Before this is forgotten again, better start some dicsussion too early than > too late Unless there's a better place to put these, I plan to reply to this message whenever I notice someone bring up something that s

Re: [FFmpeg-devel] [PATCH v6 2/4] lavu: Clarify relationship between AVClass, AVOption and context

2024-06-05 Thread Andrew Sayers
On Wed, Jun 05, 2024 at 12:34:48PM +0200, Stefano Sabatini wrote: > On date Tuesday 2024-06-04 15:47:22 +0100, Andrew Sayers wrote: > > + * Structs that only use logging facilities are often referred to as > > + * "AVClass context structures", while those t

Re: [FFmpeg-devel] [PATCH v6 3/4] all: Link to "context" from all public contexts with documentation

2024-06-05 Thread Andrew Sayers
Note: I somehow managed to send this message directly to Anton before - sorry Anton for the message spam, please reply to this one if you want the list to see it! On Wed, Jun 05, 2024 at 10:12:47AM +0200, Anton Khirnov wrote: > Quoting Andrew Sayers (2024-06-04 16:47:23) > > The goal o

[FFmpeg-devel] [PATCH] lavu/opt: Mention that AVOptions is not reentrant

2024-06-05 Thread Andrew Sayers
An external API developer might think they can use AVOptions to modify values during playback (e.g. putting a playback quality slider next to the volume slider). Make it clear that behaviour is not recommended. Include the warning in the group description and the text for every function that sets

Re: [FFmpeg-devel] [PATCH] lavu/opt: Mention that AVOptions is not reentrant

2024-06-05 Thread Andrew Sayers
On Wed, Jun 05, 2024 at 03:34:50PM +0200, Paul B Mahol wrote: > On Wed, Jun 5, 2024 at 3:18 PM Andrew Sayers > wrote: > > > An external API developer might think they can use AVOptions to modify > > values > > during playback (e.g. putting a playback quality slider ne

Re: [FFmpeg-devel] [PATCH] lavu/opt: Mention that AVOptions is not reentrant

2024-06-05 Thread Andrew Sayers
On Wed, Jun 05, 2024 at 09:46:16AM -0400, Ronald S. Bultje wrote: > Hi, > > On Wed, Jun 5, 2024 at 9:44 AM Andrew Sayers > wrote: > > > On Wed, Jun 05, 2024 at 03:34:50PM +0200, Paul B Mahol wrote: > > > On Wed, Jun 5, 2024 at 3:18 PM Andrew Sayers <

Re: [FFmpeg-devel] [PATCH] lavu/opt: Mention that AVOptions is not reentrant

2024-06-06 Thread Andrew Sayers
On Thu, Jun 06, 2024 at 01:17:48AM +0200, Michael Niedermayer wrote: [...] > AVOption simply provides light weight access to the struct fields. > Calling AVOption non re-entrant in modifying a field you arent even allowed > to modify from 2 threads is confusing I think you're saying there's alread

Re: [FFmpeg-devel] [PATCH] lavu/opt: Mention that AVOptions is not reentrant

2024-06-06 Thread Andrew Sayers
On Thu, Jun 06, 2024 at 04:24:11PM +0200, Michael Niedermayer wrote: > On Thu, Jun 06, 2024 at 09:29:24AM +0100, Andrew Sayers wrote: > > On Thu, Jun 06, 2024 at 01:17:48AM +0200, Michael Niedermayer wrote: > > [...] > > > AVOption simply provides light weight acc

Re: [FFmpeg-devel] [PATCH] lavu/opt: Mention that AVOptions is not reentrant

2024-06-06 Thread Andrew Sayers
On Thu, Jun 06, 2024 at 05:21:00PM +0200, Andreas Rheinhardt wrote: > Andrew Sayers: > > On Thu, Jun 06, 2024 at 04:24:11PM +0200, Michael Niedermayer wrote: > >> On Thu, Jun 06, 2024 at 09:29:24AM +0100, Andrew Sayers wrote: > >>> On Thu, Jun 06, 2024 at 01:17:4

[FFmpeg-devel] [PATCH v2] lavu/opt: Discuss AV_OPT_FLAG_RUNTIME_PARAM more explicitly

2024-06-06 Thread Andrew Sayers
After a struct is initialized, only options with the AV_OPT_FLAG_RUNTIME_PARAM flag can be modified. Make that clearer, for the sake of readers who would otherwise assume all options can be modified at any time. --- libavutil/opt.h | 26 +- 1 file changed, 25 insertions(+)

Re: [FFmpeg-devel] [PATCH v6 1/4] doc: Explain what "context" means

2024-06-13 Thread Andrew Sayers
On Wed, Jun 12, 2024 at 10:52:00PM +0200, Stefano Sabatini wrote: > On date Tuesday 2024-06-04 15:47:21 +0100, Andrew Sayers wrote: [...] > My impression is that this is growing out of scope for a > reference. The doxy is a reference, therefore it should be clean and > terse, and we

Re: [FFmpeg-devel] lavfi: add perlin noise generator

2024-06-13 Thread Andrew Sayers
Some documentation nitpicks. Nothing jumped out about the code, but I don't know the algorithm well enough to spot anything deep. > From 9932cfc19500acbd0685eb2cc8fd88e9af3f5dbd Mon Sep 17 00:00:00 2001 > From: Stefano Sabatini > Date: Mon, 27 May 2024 11:19:08 +0200 > Subject: [PATCH] lavfi: ad

Re: [FFmpeg-devel] [PATCH] web: move 6.0 to olddownload

2024-06-13 Thread Andrew Sayers
On Thu, Jun 13, 2024 at 12:10:21PM +0200, Michael Niedermayer wrote: > I see no users on https://trac.ffmpeg.org/wiki/Downstreams I don't have a strong opinion about the move itself, but can that page be linked from the Old Releases section? Something like: Older versions are available at t

Re: [FFmpeg-devel] [PATCH] web/download: Refer to trac downstreams page

2024-06-13 Thread Andrew Sayers
On Thu, Jun 13, 2024 at 09:39:34PM +0200, Michael Niedermayer wrote: > From: Andrew Sayers > > Signed-off-by: Michael Niedermayer > --- > src/download | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/src/download b/src/download > in

[FFmpeg-devel] [PATCH v3 0/3] s/RUNTIME/POST_INIT_SETTABLE/

2024-06-16 Thread Andrew Sayers
AV_OPT_FLAG_POST_INIT_SETTABLE_PARAM is fine by me, here's a patch. I've added a "@deprecated" comment for the old name, but would this need to be queued up for 8.0? Technically this is a backwards-incompatible change to the existing API, even though it doesn't change the ABI or generate warnings

[FFmpeg-devel] [PATCH v3 1/3] lavu/opt: Rename AV_OPT_FLAG_RUNTIME_PARAM to ...POST_INIT_SETTABLE_PARAM

2024-06-16 Thread Andrew Sayers
The old name could be misread as the opposite of "AV_OPT_FLAG_READONLY" - some things can be set at runtime, others are read-only. Clarify that this refers to options that can be set after the struct is initialized. --- libavutil/opt.h | 10 +- 1 file changed, 9 insertions(+), 1 deletion(

[FFmpeg-devel] [PATCH v3 2/3] lavu/opt: Mention AV_OPT_FLAG_POST_INIT_SETTABLE_PARAM in more places

2024-06-16 Thread Andrew Sayers
An inattentive user might not see the explanation at the top of this file. Paste the explanation to all the places they might see it. --- libavutil/opt.h | 21 + 1 file changed, 21 insertions(+) diff --git a/libavutil/opt.h b/libavutil/opt.h index e050d126ed..06cbe3c336 100644

[FFmpeg-devel] [PATCH v3 3/3] all: s/AV_OPT_FLAG_RUNTIME_PARAM/AV_OPT_FLAG_POST_INIT_SETTABLE_PARAM/g

2024-06-16 Thread Andrew Sayers
Use the new name for the macro throughout the codebase. Patch generated with the following command: sed -i -e 's/AV_OPT_FLAG_RUNTIME_PARAM/AV_OPT_FLAG_POST_INIT_SETTABLE_PARAM/g' \ $( git grep -l AV_OPT_FLAG_RUNTIME_PARAM | grep -v '^libavutil/opt.h' | grep -v '^doc/APIchanges$' ) --- libav

[FFmpeg-devel] Development process for explaining contexts (was Re: [PATCH v6 1/4] doc: Explain what "context" means)

2024-06-16 Thread Andrew Sayers
Meta note #1: I've replied in this thread but changed the subject line. That's because it needs to stay focussed on solving this thread's problem, but may be of more general interest. Meta note #2: Stefano, I appreciate your feedback, but would rather wait for [1] to get sorted out, then formulate

Re: [FFmpeg-devel] [RFC] 5 year plan & Inovation

2024-06-17 Thread Andrew Sayers
On Mon, Jun 17, 2024 at 09:29:57PM +0200, Vittorio Giovara wrote: > On Mon, Jun 17, 2024 at 9:01 PM Nicolas George wrote: > > > Michael Niedermayer (12024-06-17): > > > also if you look at google trends, even today more people search for > > ffserver > > > than txproto. In fact at every point in

[FFmpeg-devel] [PATCH] avfilter/af_afade: fix opt_type for nb_samples/ns

2024-06-22 Thread Andrew Sayers
The actual value is an int64_t, and is accessed elsewhere as AV_OPT_TYPE_INT64. Accessing it as INT will likely cause bugs on some 32-bit architectures. --- libavfilter/af_afade.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libavfilter/af_afade.c b/libavfilter/af_afade

Re: [FFmpeg-devel] [PATCH] avfilter/af_afade: fix opt_type for nb_samples/ns

2024-06-22 Thread Andrew Sayers
On Sat, Jun 22, 2024 at 03:20:52PM +0200, Andreas Rheinhardt wrote: > Andrew Sayers: > > The actual value is an int64_t, and is accessed elsewhere as > > AV_OPT_TYPE_INT64. > > > > Accessing it as INT will likely cause bugs on some 32-bit architectures. > > Whet

Re: [FFmpeg-devel] [RFC]] swscale modernization proposal

2024-06-22 Thread Andrew Sayers
On Sat, Jun 22, 2024 at 03:13:34PM +0200, Niklas Haas wrote: [...] > > ## Comments / feedback? > > Does the above approach seem reasonable? How do people feel about introducing > a new API vs. trying to hammer the existing API into the shape I want it to > be? > > I've attached an example of wh

Re: [FFmpeg-devel] [RFC]] swscale modernization proposal

2024-06-23 Thread Andrew Sayers
On Sun, Jun 23, 2024 at 02:57:31PM -0300, James Almer wrote: > On 6/22/2024 7:19 PM, Vittorio Giovara wrote: > > Needless to say I support the plan of renaming the library so that it can > > be inline with the other libraries names, and the use of a separate header > > since downstream applications

Re: [FFmpeg-devel] [RFC] 5 year plan & Inovation

2024-04-17 Thread Andrew Sayers
xcuse for procrastination).  To be blunt, on some level it feels like I've put more in than I've got out of that problem, and haven't been able to psych myself up to submit a patch that could get me laughed out of the room (or worse, politely ignored).  If the project was otherwise

Re: [FFmpeg-devel] [RFC] 5 year plan & Inovation

2024-04-18 Thread Andrew Sayers
On 18/04/2024 10:13, epira...@gmail.com wrote: On 18 Apr 2024, at 9:52, Stefano Sabatini wrote: On date Wednesday 2024-04-17 17:24:02 +0100, Andrew Sayers wrote: On 17/04/2024 14:58, Michael Niedermayer wrote: [...] I've occasionally tried getting into ffmpeg for over a decade now, and

[FFmpeg-devel] [PATCH 1/3] doc: Explain what "context" means

2024-04-18 Thread Andrew Sayers
Based largely on the explanation by Stefano Sabatini: https://ffmpeg.org/pipermail/ffmpeg-devel/2024-April/325854.html --- doc/jargon.md | 96 +++ 1 file changed, 96 insertions(+) create mode 100644 doc/jargon.md diff --git a/doc/jargon.md b/doc/ja

[FFmpeg-devel] [PATCH 2/3] lavu: Clarify relationship between AVClass, AVOption and context

2024-04-18 Thread Andrew Sayers
--- libavutil/log.h | 11 --- libavutil/opt.h | 7 --- 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/libavutil/log.h b/libavutil/log.h index ab7ceabe22..b5c739dab1 100644 --- a/libavutil/log.h +++ b/libavutil/log.h @@ -59,9 +59,14 @@ typedef enum { struct AVOptionRa

[FFmpeg-devel] [PATCH 3/3] all: Link to "context" from all contexts with documentation

2024-04-18 Thread Andrew Sayers
Some headings needed to be rewritten to accomodate the text, (hopefully) without changing the meaning. --- libavcodec/aacdec.h | 2 +- libavcodec/aacenc.h | 2 +- libavcodec/ac3enc.h | 2 +- libavcodec/amfenc.h | 2 +- libavcodec/atrac.h

[FFmpeg-devel] [PATCH] avutil/frame: remove comment about avcodec_get_frame_class()

2024-04-18 Thread Andrew Sayers
The function was deprecated a while back and deleted last year. --- libavutil/frame.h | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/libavutil/frame.h b/libavutil/frame.h index 68a2ad1555..60bb966f8b 100644 --- a/libavutil/frame.h +++ b/libavutil/frame.h @@ -369,8 +369,7 @@

Re: [FFmpeg-devel] [RFC] 5 year plan & Inovation

2024-04-18 Thread Andrew Sayers
are compatible with older releases, but it would have saved me some time if that was written somewhere :) - Andrew Sayers ___ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit

[FFmpeg-devel] [PATCH 1/2] avformat/utils: handle errors > 0 in avformat_network_init()

2024-04-19 Thread Andrew Sayers
--- libavformat/utils.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavformat/utils.c b/libavformat/utils.c index 4dded7aea4..855723a406 100644 --- a/libavformat/utils.c +++ b/libavformat/utils.c @@ -560,7 +560,7 @@ int avformat_network_init(void) { #if CONFIG_NETWORK

[FFmpeg-devel] [PATCH 2/2] avformat/avformat: Document return codes for av_format_(de)init

2024-04-19 Thread Andrew Sayers
--- libavformat/avformat.h | 4 1 file changed, 4 insertions(+) diff --git a/libavformat/avformat.h b/libavformat/avformat.h index 8afdcd9fd0..0feaeded0e 100644 --- a/libavformat/avformat.h +++ b/libavformat/avformat.h @@ -1944,12 +1944,16 @@ const char *avformat_license(void); * This func

[FFmpeg-devel] [PATCH v2 1/2] avformat/network: Return a proper negative error code from ff_network_init()

2024-04-19 Thread Andrew Sayers
--- libavformat/network.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavformat/network.c b/libavformat/network.c index f752efc411..d518bb0541 100644 --- a/libavformat/network.c +++ b/libavformat/network.c @@ -63,7 +63,7 @@ int ff_network_init(void) if (WSAStartup(MA

[FFmpeg-devel] [PATCH v2 2/2] avformat/avformat: Document return codes for av_format_(de)init

2024-04-19 Thread Andrew Sayers
--- libavformat/avformat.h | 4 1 file changed, 4 insertions(+) diff --git a/libavformat/avformat.h b/libavformat/avformat.h index 8afdcd9fd0..ea816a0b22 100644 --- a/libavformat/avformat.h +++ b/libavformat/avformat.h @@ -1944,12 +1944,16 @@ const char *avformat_license(void); * This func

[FFmpeg-devel] [PATCH v3 1/3] avformat/network: add ff_neterrno2() for cases where we already have an errno

2024-04-19 Thread Andrew Sayers
For example, WSAStartup()'s documentation says: "A call to the WSAGetLastError function is not needed and should not be used" --- libavformat/network.c | 7 ++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/libavformat/network.c b/libavformat/network.c index f752efc411..fb

[FFmpeg-devel] [PATCH v3 2/3] avformat/network: Return 0/AVERROR from ff_network_init()

2024-04-19 Thread Andrew Sayers
--- libavformat/avio.c| 4 ++-- libavformat/network.c | 7 +++ libavformat/rtsp.c| 12 ++-- libavformat/rtspdec.c | 4 ++-- libavformat/sapdec.c | 4 ++-- libavformat/sapenc.c | 4 ++-- 6 files changed, 17 insertions(+), 18 deletions(-) diff --git a/libavformat/avio.c b

[FFmpeg-devel] [PATCH v3 3/3] avformat/avformat: Document return codes for av_format_(de)init

2024-04-19 Thread Andrew Sayers
--- libavformat/avformat.h | 4 1 file changed, 4 insertions(+) diff --git a/libavformat/avformat.h b/libavformat/avformat.h index 8afdcd9fd0..f624fb1e2e 100644 --- a/libavformat/avformat.h +++ b/libavformat/avformat.h @@ -1944,12 +1944,16 @@ const char *avformat_license(void); * This func

Re: [FFmpeg-devel] [PATCH 1/3] doc: Explain what "context" means

2024-04-20 Thread Andrew Sayers
On 20/04/2024 08:25, Stefano Sabatini wrote: On date Thursday 2024-04-18 16:06:12 +0100, Andrew Sayers wrote: Based largely on the explanation by Stefano Sabatini: https://ffmpeg.org/pipermail/ffmpeg-devel/2024-April/325854.html --- doc/jargon.md | 96

[FFmpeg-devel] [PATCH v2 1/3] doc: Explain what "context" means

2024-04-20 Thread Andrew Sayers
Based largely on the explanation by Stefano Sabatini: https://ffmpeg.org/pipermail/ffmpeg-devel/2024-April/325854.html --- doc/jargon.md | 169 ++ 1 file changed, 169 insertions(+) create mode 100644 doc/jargon.md diff --git a/doc/jargon.md b/doc/j

[FFmpeg-devel] [PATCH v2 2/3] lavu: Clarify relationship between AVClass, AVOption and context

2024-04-20 Thread Andrew Sayers
--- libavutil/log.h | 11 --- libavutil/opt.h | 7 --- 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/libavutil/log.h b/libavutil/log.h index ab7ceabe22..b5c739dab1 100644 --- a/libavutil/log.h +++ b/libavutil/log.h @@ -59,9 +59,14 @@ typedef enum { struct AVOptionRa

[FFmpeg-devel] [PATCH v2 3/3] all: Link to "context" from all contexts with documentation

2024-04-20 Thread Andrew Sayers
Some headings needed to be rewritten to accomodate the text, (hopefully) without changing the meaning. --- libavcodec/aacdec.h | 2 +- libavcodec/aacenc.h | 2 +- libavcodec/ac3enc.h | 2 +- libavcodec/amfenc.h | 2 +- libavcodec/atrac.h

[FFmpeg-devel] [PATCH v4 1/3] avformat/network: add ff_neterrno2() for cases where we already have an errno

2024-04-20 Thread Andrew Sayers
For example, WSAStartup()'s documentation says: "A call to the WSAGetLastError function is not needed and should not be used" --- libavformat/network.c | 5 - libavformat/network.h | 2 ++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/libavformat/network.c b/libavformat/n

[FFmpeg-devel] [PATCH v4 2/3] avformat/network: Return 0/AVERROR from ff_network_init()

2024-04-20 Thread Andrew Sayers
--- libavformat/avio.c| 4 ++-- libavformat/network.c | 7 +++ libavformat/rtsp.c| 12 ++-- libavformat/rtspdec.c | 4 ++-- libavformat/sapdec.c | 4 ++-- libavformat/sapenc.c | 4 ++-- 6 files changed, 17 insertions(+), 18 deletions(-) diff --git a/libavformat/avio.c b

[FFmpeg-devel] [PATCH v4 3/3] avformat/avformat: Document return codes for av_format_(de)init

2024-04-20 Thread Andrew Sayers
--- libavformat/avformat.h | 4 1 file changed, 4 insertions(+) diff --git a/libavformat/avformat.h b/libavformat/avformat.h index 8afdcd9fd0..f624fb1e2e 100644 --- a/libavformat/avformat.h +++ b/libavformat/avformat.h @@ -1944,12 +1944,16 @@ const char *avformat_license(void); * This func

[FFmpeg-devel] [PATCH] Remove outdated comment about AVFrame and AVOptions

2024-04-20 Thread Andrew Sayers
--- I think this is out-of-date now avcodec_get_frame_class is gone. Happy to add docs instead if I've missed something? libavutil/frame.h | 3 --- 1 file changed, 3 deletions(-) diff --git a/libavutil/frame.h b/libavutil/frame.h index 60bb966f8b..7b8d9aee08 100644 --- a/libavutil/frame.h +++ b

Re: [FFmpeg-devel] [PATCH v2 1/3] doc: Explain what "context" means

2024-04-20 Thread Andrew Sayers
On Sat, Apr 20, 2024 at 06:48:32PM +0200, Stefano Sabatini wrote: > On date Saturday 2024-04-20 13:19:41 +0100, Andrew Sayers wrote: > > Based largely on the explanation by Stefano Sabatini: > > https://ffmpeg.org/pipermail/ffmpeg-devel/2024-April/325854.html > > --- >

[FFmpeg-devel] [PATCH] lavu/opt: Clarify that AVOptions is not indended for general use

2024-04-22 Thread Andrew Sayers
--- libavutil/opt.h | 4 1 file changed, 4 insertions(+) diff --git a/libavutil/opt.h b/libavutil/opt.h index e6013662f6..795accb363 100644 --- a/libavutil/opt.h +++ b/libavutil/opt.h @@ -54,7 +54,11 @@ * semantics of those fields without breaking API compatibility. * * @section avopti

[FFmpeg-devel] [PATCH v2] lavu/opt: Clarify that AVOptions is not indended for general use

2024-04-22 Thread Andrew Sayers
--- libavutil/opt.h | 3 +++ 1 file changed, 3 insertions(+) diff --git a/libavutil/opt.h b/libavutil/opt.h index e6013662f6..4c0e7d9223 100644 --- a/libavutil/opt.h +++ b/libavutil/opt.h @@ -54,7 +54,10 @@ * semantics of those fields without breaking API compatibility. * * @section avoptio

[FFmpeg-devel] [PATCH v3 0/3] all: Link to "context" from all contexts with documentation

2024-04-22 Thread Andrew Sayers
I've updated the link in patch 1 to point to this thread instead of your original post. I've heavily rewritten "jargon.md" and renamed it to "context.md", reflecting how it's more important than I previously realised. I think it's safe to leave it in markdown format in doc/ now - it shouldn't ope

[FFmpeg-devel] [PATCH v3 1/3] doc: Explain what "context" means

2024-04-22 Thread Andrew Sayers
Derived from detailed explanations kindly provided by Stefano Sabatini: https://ffmpeg.org/pipermail/ffmpeg-devel/2024-April/325903.html --- doc/context.md | 276 + 1 file changed, 276 insertions(+) create mode 100644 doc/context.md diff --git a/do

[FFmpeg-devel] [PATCH v3 2/3] lavu: Clarify relationship between AVClass, AVOption and context

2024-04-22 Thread Andrew Sayers
--- libavutil/log.h | 11 --- libavutil/opt.h | 7 --- 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/libavutil/log.h b/libavutil/log.h index ab7ceabe22..cfbf416679 100644 --- a/libavutil/log.h +++ b/libavutil/log.h @@ -59,9 +59,14 @@ typedef enum { struct AVOptionRa

[FFmpeg-devel] [PATCH v3 3/3] all: Link to "context" from all contexts with documentation

2024-04-22 Thread Andrew Sayers
Some headings needed to be rewritten to accomodate the text, (hopefully) without changing the meaning. --- libavcodec/aacdec.h | 2 +- libavcodec/aacenc.h | 2 +- libavcodec/ac3enc.h | 2 +- libavcodec/amfenc.h | 2 +- libavcodec/atrac.h

Re: [FFmpeg-devel] [RFC] 5 year plan & Inovation

2024-04-23 Thread Andrew Sayers
expects the reader to dig through the source. That eats up a huge amount of programmer time, and has to be done for every language that wants a binding. Solving those problems would make it far more practical for translators to make bindings in other languages, and for new people to learn FFmp

Re: [FFmpeg-devel] [RFC] 5 year plan & Inovation

2024-04-23 Thread Andrew Sayers
On Tue, Apr 23, 2024 at 10:02:58AM +0200, Lynne wrote: > Apr 23, 2024, 09:47 by ffmpeg-de...@pileofstuff.org: > > > On Tue, Apr 23, 2024 at 02:20:51AM +0200, Michael Niedermayer wrote: > > > >> On Thu, Apr 18, 2024 at 10:46:35AM +0200, Stefano Sabatini wrote: > >> > On date Wednesday 2024-04-17 15

Re: [FFmpeg-devel] [PATCH v2] lavu/opt: Clarify that AVOptions is not indended for general use

2024-04-23 Thread Andrew Sayers
On Tue, Apr 23, 2024 at 11:21:27AM +0200, Anton Khirnov wrote: > > lavu/opt: Clarify that AVOptions is not indended for general use > > They _are_ intended for general use though. In that case I'm confused... Let's say I make a desktop app to transcode videos. Obviously I would use AVOptions to

  1   2   >