This is an automated email from the git hooks/post-receive script.

Git pushed a commit to branch master
in repository ffmpeg.

commit 89cc079b302752dd2b870752cbe746be7703886e
Author:     Niklas Haas <[email protected]>
AuthorDate: Thu May 21 18:39:39 2026 +0200
Commit:     Niklas Haas <[email protected]>
CommitDate: Fri Jul 17 13:23:21 2026 +0000

    swscale/ops_optimizer: add ff_sws_uop_list_optimize() placeholder
    
    This will be populated with logic in the near future. I decided to
    also include the skeleton of the loop here, guarded by #if 0 to
    avoid triggering unused variable warnings until we actually use it.
    
    Signed-off-by: Niklas Haas <[email protected]>
---
 libswscale/ops_optimizer.c | 19 +++++++++++++++++++
 libswscale/uops.c          |  3 ++-
 libswscale/uops.h          |  5 +++++
 3 files changed, 26 insertions(+), 1 deletion(-)

diff --git a/libswscale/ops_optimizer.c b/libswscale/ops_optimizer.c
index 34af638226..d4360fa46f 100644
--- a/libswscale/ops_optimizer.c
+++ b/libswscale/ops_optimizer.c
@@ -948,6 +948,25 @@ int ff_sws_solve_shuffle(const SwsOpList *const ops, 
uint8_t shuffle[],
     return AVERROR(EINVAL);
 }
 
+int ff_sws_uop_list_optimize(SwsContext *ctx, SwsUOpFlags flags, SwsUOpList 
*uops)
+{
+#if 0
+    static const SwsUOp dummy = {0};
+
+retry:
+    for (int i = 0; i < uops->num_ops; i++) {
+        const SwsUOp *next = i < uops->num_ops - 1 ? &uops->ops[i + 1] : 
&dummy;
+        SwsUOp *op = &uops->ops[i];
+
+        switch (op->uop) {
+            /* placeholder */
+        }
+    }
+#endif
+
+    return 0;
+}
+
 /**
  * Determine a suitable intermediate buffer format for a given combination
  * of pixel types and number of planes. The exact interpretation of these
diff --git a/libswscale/uops.c b/libswscale/uops.c
index da1757b499..9cee7bcd00 100644
--- a/libswscale/uops.c
+++ b/libswscale/uops.c
@@ -662,5 +662,6 @@ int ff_sws_ops_translate(SwsContext *ctx, const SwsOpList 
*ops,
             return ret;
         input = ops->ops[i].comps;
     }
-    return 0;
+
+    return ff_sws_uop_list_optimize(ctx, flags, uops);
 }
diff --git a/libswscale/uops.h b/libswscale/uops.h
index ba63c5d596..c75c8fbcc3 100644
--- a/libswscale/uops.h
+++ b/libswscale/uops.h
@@ -288,6 +288,11 @@ void ff_sws_uop_list_free(SwsUOpList **ops);
 /* Takes over ownership of `uop` and sets it to {0}, even on failure. */
 int ff_sws_uop_list_append(SwsUOpList *uops, SwsUOp *uop);
 
+/**
+ * Called internally by ff_sws_ops_translate().
+ */
+int ff_sws_uop_list_optimize(SwsContext *ctx, SwsUOpFlags flags, SwsUOpList 
*uops);
+
 /**
  * Translate a list of operations down to micro-ops, which can be further
  * optimized and then directly executed by backends.

_______________________________________________
ffmpeg-cvslog mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to