mirror of
https://github.com/yattee/yattee.git
synced 2026-07-20 14:22:02 +00:00
Apple TV 4K 1st gen on tvOS 26 crashes to the home screen with a "blocked by IOFence" gpuEvent at playback start (#949) and stutters with a starved demuxer cache (#947). Defensive fixes in the shared iOS/tvOS OpenGL path: - Drain in-flight GPU work (glFinish) before destroying the renderbuffer, so a pending presentRenderbuffer fence can't hold the CAEAGLLayer IOSurface being torn down or reallocated - Never leave the EAGLContext current on the main thread: framebuffer create/destroy and the background glFinish now unbind on exit, and setup no longer binds the context on main at all - Disable retained backing on tvOS; it exists only for iOS PiP frame capture and adds per-frame IOSurface fence pressure - Report swaps to mpv after each present so display-vdrop (the tvOS default video-sync) gets swap-timing feedback, matching macOS Add verbose-gated diagnostics for remote triage: playback stats every 10s (cache fill/rate, dropped frames, hwdec, avsync) and a rate-limited slow-frame warning in performRender. Addresses #949 and #947