First commit, imported from the working folder: Android TV app, loopback guide server, design sources and per-release verification notes. Includes the 0.16 tuning screen, built and tested but not yet confirmed on the box. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2.3 KiB
Orbit TV 0.13.0 — 3GP and duplicate-entry details
Report: Powerpuff Girls S1 E2 failed direct container eligibility with 3gp. Batman Beyond has two search entries. We have not read actual private account metadata or media from development tooling, and do not know what distinguishes those two entries.
The pinned Media3 1.8.0 MP4 Sniffer accepts file brands beginning 3gp. The app's direct-container set now includes 3gp, shared between the advertised Emby DirectPlayProfile and local validation. URLs retain stream.3gp; files are not renamed, transcoded or remuxed. This removes the app-level block; actual codecs, provider delivery, seeking and hardware decoding still require the box test. No claim that every 3GP file is playable.
Same-title/same-year series records with distinct IDs remain separate and are labelled Entry 1 of N, Entry 2 of N within that search. Different years remain distinct without duplicate labels. No automatic merging or guessed 1080p/4K/remux designation. Episode samples request Fields=MediaStreams and show returned video dimensions, container and video/audio codec names where available; missing fields remain absent. These describe the returned sample episode, not a guarantee that every episode of a series shares its format. The episode section repeats the entry label to aid comparison before choosing a version. No extra per-series network probes are added.
Validation: offline assembleDebug, testDebugUnitTest and lintDebug passed; 71 tests, zero failures/errors. New tests cover 3GP profile/URL consistency, neutral duplicate labels with distinct IDs and years, returned resolution/container/codecs, and absence of guessed quality when metadata is missing. APK signature verified. Source reviewed for bounded parsing, original-ID preservation, in-memory session handling and no changes to source locks. Provider compatibility, 3GP playback and duplicate comparison layout still need the Xiaomi remote test after installation. No new dependencies/device permissions, VPS/firewall/services or persistent private-data changes.
Primary evidence: https://github.com/androidx/media/blob/1.8.0/libraries/extractor/src/main/java/androidx/media3/extractor/mp4/Sniffer.java (isCompatibleBrand accepts 3gp prefix) https://dev.emby.media/reference/RestAPI/ItemsService/getItems.html (Fields=MediaStreams and stream Width/Height/Codec)