mirror of
https://github.com/yattee/yattee.git
synced 2026-07-21 06:42:01 +00:00
6aa5fd8ee75f2ee4ff2c15979fa8f20a7f0ae759
Build 264 stutters for a split second every ~10 seconds. The periodic playback-stats task fetches ~30 debug properties in one ~190ms block on mpvQueue, and MPVClient.render() wrapped mpv_render_context_render in mpvQueue.sync - so the render thread queued behind the fetch and stalled ~190ms, at exactly the stats interval. Build 261 predates the stats task, which is why it was unaffected. libmpv's render API is documented thread-safe relative to the client API, so render-context calls no longer go through mpvQueue: - New renderContextLock protects renderContext lifecycle vs use; render(), renderWithDepth(), renderSoftware(), reportSwap(), shouldRenderUpdateFrame() and hasRenderContext use it - Render-update callbacks dispatch on a dedicated renderEventQueue so frame-ready notifications can't queue behind property/command work - destroyRenderContext takes mpvQueue then the lock, still excluding in-flight renders during teardown - The stats task skips its property fetch on iOS/tvOS unless verbose MPV logging is on (macOS keeps it for the render watchdog) - performRender slow-frame warnings now break down render vs present time and report frame-delivery gaps for future triage
Yattee 2 is in the works! A new version of the app is being built with a refreshed experience. It pairs with the new Yattee Server — a self-hosted backend powered by yt-dlp that supports 1000+ sites. Join the TestFlight beta to try early builds, and check the new documentation site at docs.yattee.stream for guides, roadmap and changelog.
Features
- Native user interface built with SwiftUI with customization settings
- Player queue and history
- Player component with custom controls, gestures and support for 4K playback
- Fullscreen, Picture in Picture and background audio playback
- SponsorBlock, configurable categories to skip
License
Yattee and its components is shared on AGPL v3 license.
Languages
Swift
96.1%
Ruby
3.4%
C
0.4%
Shell
0.1%
