Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
 help / color / mirror / Atom feed
* [FFmpeg-devel] [PATCH] avcodec/utvideoenc: Don't advertise unsupported option
@ 2025-05-16 14:19 Andreas Rheinhardt
  2025-05-16 18:02 ` Jan Ekström
  0 siblings, 1 reply; 3+ messages in thread
From: Andreas Rheinhardt @ 2025-05-16 14:19 UTC (permalink / raw)
  To: FFmpeg development discussions and patches

[-- Attachment #1: Type: text/plain, Size: 27 bytes --]

Patch attached.

- Andreas

[-- Attachment #2: 0001-avcodec-utvideoenc-Don-t-advertise-unsupported-optio.patch --]
[-- Type: text/x-patch, Size: 1568 bytes --]

From 3e9d2dccad99fea5ec5d15747e67147175e89cd0 Mon Sep 17 00:00:00 2001
From: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
Date: Fri, 16 May 2025 16:16:49 +0200
Subject: [PATCH] avcodec/utvideoenc: Don't advertise unsupported option

Also return an error if it is set numerically.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
---
 libavcodec/utvideoenc.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/libavcodec/utvideoenc.c b/libavcodec/utvideoenc.c
index be503d78c6..c2b5a8abb7 100644
--- a/libavcodec/utvideoenc.c
+++ b/libavcodec/utvideoenc.c
@@ -153,7 +153,7 @@ static av_cold int utvideo_encode_init(AVCodecContext *avctx)
 
     if (c->frame_pred == PRED_GRADIENT) {
         av_log(avctx, AV_LOG_ERROR, "Gradient prediction is not supported.\n");
-        return AVERROR_OPTION_NOT_FOUND;
+        return AVERROR_PATCHWELCOME;
     }
 
     /*
@@ -646,7 +646,6 @@ static const AVOption options[] = {
 { "pred", "Prediction method", OFFSET(frame_pred), AV_OPT_TYPE_INT, { .i64 = PRED_LEFT }, PRED_NONE, PRED_MEDIAN, VE, .unit = "pred" },
     { "none",     NULL, 0, AV_OPT_TYPE_CONST, { .i64 = PRED_NONE }, INT_MIN, INT_MAX, VE, .unit = "pred" },
     { "left",     NULL, 0, AV_OPT_TYPE_CONST, { .i64 = PRED_LEFT }, INT_MIN, INT_MAX, VE, .unit = "pred" },
-    { "gradient", NULL, 0, AV_OPT_TYPE_CONST, { .i64 = PRED_GRADIENT }, INT_MIN, INT_MAX, VE, .unit = "pred" },
     { "median",   NULL, 0, AV_OPT_TYPE_CONST, { .i64 = PRED_MEDIAN }, INT_MIN, INT_MAX, VE, .unit = "pred" },
 
     { NULL},
-- 
2.45.2


[-- Attachment #3: Type: text/plain, Size: 251 bytes --]

_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [FFmpeg-devel] [PATCH] avcodec/utvideoenc: Don't advertise unsupported option
  2025-05-16 14:19 [FFmpeg-devel] [PATCH] avcodec/utvideoenc: Don't advertise unsupported option Andreas Rheinhardt
@ 2025-05-16 18:02 ` Jan Ekström
  2025-05-16 20:02   ` Andreas Rheinhardt
  0 siblings, 1 reply; 3+ messages in thread
From: Jan Ekström @ 2025-05-16 18:02 UTC (permalink / raw)
  To: FFmpeg development discussions and patches

On Fri, May 16, 2025 at 5:19 PM Andreas Rheinhardt
<andreas.rheinhardt@outlook.com> wrote:
>
> Patch attached.
>

LGTM.

Seems like as part of moving prediction method from codec context to
private options in 2862b63783b5556f7f3fb2d097629bc6879f833a the
gradient value was kept as an alternative, even though even then it
was just being checked against.

If the value was not in the middle in UtVideo, I would note that it
may have made sense to just drop any references or checking for this
value from utvideoenc, but alas I don't think that's possible?

Jan
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [FFmpeg-devel] [PATCH] avcodec/utvideoenc: Don't advertise unsupported option
  2025-05-16 18:02 ` Jan Ekström
@ 2025-05-16 20:02   ` Andreas Rheinhardt
  0 siblings, 0 replies; 3+ messages in thread
From: Andreas Rheinhardt @ 2025-05-16 20:02 UTC (permalink / raw)
  To: ffmpeg-devel

Jan Ekström:
> On Fri, May 16, 2025 at 5:19 PM Andreas Rheinhardt
> <andreas.rheinhardt@outlook.com> wrote:
>>
>> Patch attached.
>>
> 
> LGTM.
> 
> Seems like as part of moving prediction method from codec context to
> private options in 2862b63783b5556f7f3fb2d097629bc6879f833a the
> gradient value was kept as an alternative, even though even then it
> was just being checked against.
> 
> If the value was not in the middle in UtVideo, I would note that it
> may have made sense to just drop any references or checking for this
> value from utvideoenc, but alas I don't think that's possible?
> 

It would be possible to use encoder-specific constants for the option
and translate this to the codec-specific ones that get written in the
file. Users that only set the prediction method via the strings (like
"-pred median") would not be affected, but users using the
codec-specific numerical values would be.
I opted for the minimal change in my patch.

- Andreas

_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2025-05-16 20:03 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-05-16 14:19 [FFmpeg-devel] [PATCH] avcodec/utvideoenc: Don't advertise unsupported option Andreas Rheinhardt
2025-05-16 18:02 ` Jan Ekström
2025-05-16 20:02   ` Andreas Rheinhardt

Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

This inbox may be cloned and mirrored by anyone:

	git clone --mirror https://master.gitmailbox.com/ffmpegdev/0 ffmpegdev/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 ffmpegdev ffmpegdev/ https://master.gitmailbox.com/ffmpegdev \
		ffmpegdev@gitmailbox.com
	public-inbox-index ffmpegdev

Example config snippet for mirrors.


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git