Changes between Version 36 and Version 37 of SponsoringPrograms/STF/2025


Ignore:
Timestamp:
Nov 23, 2025, 3:07:21 PM (8 months ago)
Author:
Niklas Haas
Comment:

Update STF to conform to template

Legend:

Unmodified
Added
Removed
Modified
  • SponsoringPrograms/STF/2025

    v36 v37  
    393393===== Develop the SwsOps architecture to support scaling
    394394
    395 **Description:** The existing SwsOps architecture will need to be updated to support scaling operations. This includes the necessary regression testing work needed to ensure the new design scales well and does not introduce a performance and/or quality regression versus the legacy code paths.
    396 
    397 **Deliverables:** An implementation of the necessary new APIs and high-level logic, alongside a reference implementation in C, is either merged or has received at least one merge approval.
     395**Description:** The existing SwsOps architecture will need to be updated to support scaling operations. This includes the necessary regression testing work needed to ensure the new design scales well and does not introduce a performance and/or quality regression versus the legacy code paths. After expanding the SwsOps architecture, the x86_64 backend will need to be updated to support the new scaling operations. This includes implementing optimized versions of the new APIs using SIMD instructions.
     396
     397**Deliverables:**
     398- An implementation of the necessary new APIs and high-level logic, alongside a reference implementation in C, is either merged or has received at least one merge approval from another maintainer.
     399- An implementation, targeting at least SSE4, AVX2 and AVX-512, of the newly added APIs, is either merged or has received at least one merge approval from another maintainer.
     400
     401**Compensation:** 40,000 EUR
     402
     403**Time estimate:** 6-7 weeks = 260 hours (full-time)
     404
     405**Delivery date:** 3 months after kick-off
     406
     407**Completion of this milestone will improve the project in the following way(s):**
     408- More of the remaining buggy/slow/unmaintained legacy code paths can be properly deprecated and phased out, in favor of the newer, simpler and more robust approach.
     409- swscale will become more reliable and able to handle more formats without crashing or delivering incorrect data
     410
     411===== Remaining format coverage
     412
     413**Description:** Some, more difficult, formats, which were previously handled by the legacy code paths, are not yet supported by the SwsOps backend. This notably includes 96/128-bit formats, XYZ, Bayer and packed/subsampled formats (e.g. YUYV).
     414
     415**Deliverables:**
     416- An implementation of the necessary APIs and high-level logic, alongside a reference implementation in C, and possibly an x86_64 code path for the most important formats, is either merged or has received at least one merge approval from another maintainer.
    398417
    399418**Compensation:** 20,000 EUR
    400419
    401 ===== Updating x86_64 backend
    402 
    403 **Description:** After expanding the SwsOps architecture, the x86_64 backend will need to be updated to support the new scaling operations. This includes implementing optimized versions of the new APIs using SIMD instructions.
    404 
    405 **Deliverables:** An implementation, targeting at least SSE4, AVX2 and AVX-512, of the newly added APIs in Milestone 1, is either merged or has received at least one merge approval.
    406 
    407 **Compensation:** 20,000 EUR
    408 
    409 ===== Remaining format coverage
    410 
    411 **Description:** Some, more difficult, formats, which were previously handled by the legacy code paths, are not yet supported by the SwsOps backend. This notably includes 96/128-bit formats, XYZ, Bayer and packed/subsampled formats (e.g. YUYV).
    412 
    413 **Deliverables:** An implementation of the necessary APIs and high-level logic, alongside a reference implementation in C, and possibly an x86_64 code path for the most important formats, is either merged or has received at least one merge approval.
    414 
    415 **Compensation:** 20,000 EUR
     420**Time estimate:** 3-4 weeks = 140 hours (full-time)
     421
     422**Delivery date:** 5 months after kick-off
     423
     424**Completion of this milestone will improve the project in the following way(s):**
     425- More of the remaining buggy/slow/unmaintained legacy code paths can be properly deprecated and phased out, in favor of the newer, simpler and more robust approach.
     426- swscale will become more reliable and able to handle more formats without crashing or delivering incorrect data
    416427
    417428===== Properly integrate CMM layer
     
    419430**Description:** Some format conversions currently require conversion between difference colorspaces. This operation is currently handled in a very inefficient manner, as a result of predating the SwsOps design. This layer should be updated to use the new architecture, which will make it vastly more efficient.
    420431
    421 **Deliverables:** A pull request integrating the color management layer into the SwsOps design, is either merged or has received at least one merge approval.
     432**Deliverables:**
     4338 A pull request integrating the color management layer into the SwsOps design, is either merged or has received at least one merge approval from another maintainer.
    422434
    423435**Compensation:** 10,000 EUR
     436
     437**Time estimate:** 1-2 weeks = 60 hours (full-time)
     438
     439**Delivery date:** 6 months after kick-off
     440
     441**Completion of this milestone will improve the project in the following way(s):**
     442- Color management in swscale will become more accurate and significantly faster
     443- The SwsOps framework being worked on in the previous milestones will cover more code paths.