You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix(compositor): mac was missing clear_srv_cache after the rebase onto v1.8.0
release/v1.8.0 added an SRV-cache invalidation call in the portable live.rs
(comp.clear_srv_cache(), called unconditionally whenever a decoder set is
closed) plus a decoder fast-seek path in the Windows Decoder. Both landed
during the rebase of this branch, but only pipeline_windows.rs got the
method/the fast path applied — compositor_macos::Compositor had no
clear_srv_cache at all, which doesn't fail until compiled on macOS.
clear_srv_cache() on Metal calls CVMetalTextureCache::flush() — there's no
address-keyed HashMap to clear like on D3D11 (CoreVideo already dedupes by
IOSurface, not by pointer), so flushing the cache IS the equivalent
operation.
Also ported the Decoder::seek_to fast path (cur_pts, decode_forward_to,
SEEK_FORWARD_MAX_SEC) into pipeline_macos.rs so both engines stay at the
same seek performance instead of drifting apart again right after the
last ISO-parity pass.
0 commit comments