Merge pull request #2929 from vangel76/perf/aux-footage-hint-474

perf(media): tell the media pool which EXR footage effects read (#474)
This commit is contained in:
FredApps
2026-11-06 00:12:06 +01:00
committed by GitHub
16 changed files with 454 additions and 12 deletions
+1 -1
View File
@@ -41,7 +41,7 @@ trips and renders, checked by tests, not against After Effects), **partial** (na
| PNG | R/W | yes | yes (sequence) | good |
| JPEG | R/W | yes | yes (sequence) | good |
| TIFF | R/W | yes | yes (sequence) | good |
| OpenEXR (multi-layer, Cryptomatte) | R/W | yes | yes (32-bit sequence) | good; HTJ2K compression fails (#482); a multi-layer frame decodes once for its picture and EXtractoR / Cryptomatte, except the first frame an effect reads and files whose picture the `image` crate still decodes (#474); footage alone keeps only its picture's channels, though a single-part file still decompresses every channel's pixels; decoded channels are held as f32 |
| OpenEXR (multi-layer, Cryptomatte) | R/W | yes | yes (32-bit sequence) | good; HTJ2K compression fails (#482); a multi-layer frame decodes once for its picture and EXtractoR / Cryptomatte from the first frame on, except Media Replacement items, which are learned at their first frame, and files whose picture the `image` crate still decodes (#474); footage alone keeps only its picture's channels, though a single-part file still decompresses every channel's pixels; decoded channels are held as f32 |
| Photoshop PSD / PSB | R (footage, composition) / W (layers, sequence) | yes (layers, groups, masks, styles, smart objects) | Save Frame As ▸ Photoshop Layers; no Photoshop sequence output | good, from Adobe's published spec |
| Illustrator `.ai`, PDF, EPS | R | yes (vector, Continuously Rasterize, Create Shapes; Composition and Composition - Retain Layer Sizes, #1536) | — | partial: no JPX / JBIG2 images, no Illustrator procset EPS |
| SVG | R | yes | — | good; SVG markup on the clipboard pastes as a shape layer (26.3, #738); Illustrator's own clipboard data (PDF/AI) doesn't |
+6 -4
View File
@@ -122,10 +122,12 @@ vectors, positions and IDs are never the picture. EXtractoR reads every other la
Footage on its own keeps only the channels of its picture (a single-part file still
decompresses all of its pixels to read them). Once an effect reads an item's channels
(EXtractoR, Cryptomatte, the 3D Channel effects), each later frame is decoded once for the
picture and the effects together, and kept for a while: about 1 GB of decoded channels (512 MB
in the browser), a soft bound, as the newest file and files still in use stay whatever their
size. Several frames asking for the same file at once wait for one decode.
(EXtractoR, Cryptomatte, the 3D Channel effects), each frame, the first included, is decoded
once for the picture and the effects together, and kept for a while: about 1 GB of decoded
channels (512 MB in the browser), a soft bound, as the newest file and files still in use
stay whatever their size. Several frames asking for the same file at once wait for one
decode. Once no enabled effect reads the item any more, its frames go back to the picture's
channels alone.
The Cryptomatte effect keys objects by their Cryptomatte ID passes, with the names from the
file's manifest. Pick them with the eyedropper next to its Selection, then click in the