[FFmpeg-devel] [PATCH v2 11/13] swscale/utils: simplify JPEG handling function
Niklas Haas
ffmpeg at haasn.xyz
Fri Oct 13 17:24:49 EEST 2023
From: Niklas Haas <git at haasn.dev>
YUVJ no longer exists, so this is now just a check for luma-only
formats, and no longer needs to mutate the pixel format.
---
libswscale/utils.c | 14 ++++----------
1 file changed, 4 insertions(+), 10 deletions(-)
diff --git a/libswscale/utils.c b/libswscale/utils.c
index c179ac05b5..0a4b969fec 100644
--- a/libswscale/utils.c
+++ b/libswscale/utils.c
@@ -920,9 +920,9 @@ static void fill_xyztables(struct SwsContext *c)
}
}
-static int handle_jpeg(enum AVPixelFormat *format)
+static int is_luma_only(enum AVPixelFormat format)
{
- switch (*format) {
+ switch (format) {
case AV_PIX_FMT_GRAY8:
case AV_PIX_FMT_YA8:
case AV_PIX_FMT_GRAY9LE:
@@ -2018,7 +2018,6 @@ av_cold int sws_init_context(SwsContext *c, SwsFilter *srcFilter,
SwsFilter *dstFilter)
{
static AVOnce rgb2rgb_once = AV_ONCE_INIT;
- enum AVPixelFormat src_format, dst_format;
int ret;
c->frame_src = av_frame_alloc();
@@ -2029,13 +2028,8 @@ av_cold int sws_init_context(SwsContext *c, SwsFilter *srcFilter,
if (ff_thread_once(&rgb2rgb_once, ff_sws_rgb2rgb_init) != 0)
return AVERROR_UNKNOWN;
- src_format = c->srcFormat;
- dst_format = c->dstFormat;
- c->srcRange |= handle_jpeg(&c->srcFormat);
- c->dstRange |= handle_jpeg(&c->dstFormat);
-
- if (src_format != c->srcFormat || dst_format != c->dstFormat)
- av_log(c, AV_LOG_WARNING, "deprecated pixel format used, make sure you did set range correctly\n");
+ c->srcRange |= is_luma_only(c->srcFormat);
+ c->dstRange |= is_luma_only(c->dstFormat);
if (c->nb_threads != 1) {
ret = context_init_threaded(c, srcFilter, dstFilter);
--
2.42.0
More information about the ffmpeg-devel
mailing list