Files
ffmpeg/tests
Niklas Haas 6321b53809 swscale/ops: solve for component dependencies
Needed to determine reverse dependencies of different input planes, for
appropriately splitting op lists involving subsampled planes.

Generates benign diffs that just reflect the new addition, e.g.:

 yuva444p 16x16 -> rgb24 16x16:
   [ u8 ===X] SWS_OP_READ         : 3 elem(s) planar >> 0
     min: {0 0 0 _}, max: {255 255 255 _}
+    inputs: {x y z _}, outputs: {xyz yz xy _}
   [ u8 ===X] SWS_OP_CONVERT      : u8 -> f32
     min: {0 0 0 _}, max: {255 255 255 _}
+    inputs: {x y z _}, outputs: {xyz yz xy _}
   [f32 ...X] SWS_OP_LINEAR       : matrix3+off3 [[85/73 0 1.596027 0 -222.921566] [85/73 -0.391762 -0.812968 0 135.575295] [85/73 2.017232 0 0 -276.835851] [0 0 0 1 0]]
     min: {-222.921566 -171.630839 -276.835851 _}, max: {480.983073 432.493103 534.476153 _}
+    inputs: {xz xyz xy _}, outputs: {x y z _}
   [f32 ...X] SWS_OP_DITHER       : 16x16 matrix + {0 3 2 -1}
     min: {-222.919612 -171.628886 -276.833898 _}, max: {481.981120 433.491150 535.474200 _}
+    inputs: {xz xyz xy _}, outputs: {x y z _}
   [f32 ...X] SWS_OP_MAX          : {0 0 0 _} <= x
     min: {0 0 0 _}, max: {481.981120 433.491150 535.474200 _}
+    inputs: {xz xyz xy _}, outputs: {x y z _}
   [f32 ...X] SWS_OP_MIN          : x <= {255 255 255 _}
     min: {0 0 0 _}, max: {255 255 255 _}
+    inputs: {xz xyz xy _}, outputs: {x y z _}
   [f32 +++X] SWS_OP_CONVERT      : f32 -> u8
     min: {0 0 0 _}, max: {255 255 255 _}
+    inputs: {xz xyz xy _}, outputs: {x y z _}
   [ u8 XXXX] SWS_OP_WRITE        : 3 elem(s) packed >> 0
     ('X' unused, 'z' byteswapped, '=' copied, '$' const, '+' integer, '0' zero)

Sponsored-by: Sovereign Tech Fund
Signed-off-by: Niklas Haas <git@haasn.dev>
2026-08-03 09:32:30 +00:00
..