BiliKit Development Notes
Problems, spikes, tradeoffs, and implementation notes from building BiliKit as a native macOS app.
- 01 Building a Native Danmaku Renderer on macOS published From segmented scheduling, the player timeline, and collision-free lanes to a CATextLayer spike, lifecycle control, and the point where Metal may become worthwhile.
- 02 A Line Break Disaster published SwiftUI Text could not express the CJK wrapping behavior I needed, so I ran a small spike comparing NSTextField and NSTextView.
- 03 Which Clock Should Danmaku Follow? Rewriting Danmaku Sync in BiliKit published Starting from danmaku that went missing after a seek, this records several rounds of rewriting BiliKit's danmaku sync, how AVFoundation's clocks actually behave, and the design I ended up with.