# Spec: Playback backend unification — findings and strategy **Status:** Accepted (analysis; no code changes) **Requirements:** IR-004, UR-031, UR-032, UR-033 — revises the "Platform Playback Backend Parity" issue in requirements.md **UX spec:** n/a **Supersedes / revises:** informed the Android native-video and audio-parity work (both since shipped — see [05-platform-backends.md](../architecture/05-platform-backends.md)) and [windows-native-audio-backend.md](windows-native-audio-backend.md), still open ## Summary This spec records the outcome of an investigation into unifying JellyTau's playback backends (Linux/MPV, Android/ExoPlayer, Windows/webview) onto a single engine with hardware acceleration everywhere. **The conclusion is that video cannot be unified onto a native engine, and should not be attempted.** Audio *can* be, and that is where the remaining specs direct effort. No code changes follow from this spec directly. It exists so the decision is written down with its evidence, and so a future session does not re-run the same investigation. ## Motivation The requirements doc carries a "Platform Playback Backend Parity" issue noting that audio settings work on Linux but not Android, and proposing eventual convergence. The natural next question — "should we just run one engine everywhere?" — needed answering before spending effort on per-backend patches. The investigation also surfaced that several statements in requirements.md and in code comments are factually wrong. Those corrections are part of the deliverable. ## Findings ### 1. The current architecture is not what the docs describe | Platform | Audio | Video | |----------|-------|-------| | Linux | MPV (native, **audio-only**) | webview `