• tv-v1.1.1 d22144f971

    vndangkhoa released this 2026-08-25 15:05:25 +07:00 | 17 commits to main since this release

    KV Tube TV release.

    • Compose for TV UI with D-pad navigation
    • Media3 ExoPlayer (HLS/DASH), Invidious backend with InnerTube fallback
    • In-app auto-updater, session token auth
    • Android TV / Google TV 7.0+

    Install: sideload the APK, or grab it from https://pkg.khoavo.myds.me/package/kvtube

    Downloads
  • v1.7.1 d22144f971

    vndangkhoa released this 2026-08-25 15:05:13 +07:00 | 17 commits to main since this release

    KV Tube for Android release.

    • Ad-free YouTube playback (Invidious / InnerTube)
    • Background audio & PiP playback
    • Offline downloads
    • Device pairing code support (sync with Web & TV)
    • In-app auto-updater

    Install: grab the APK from https://pkg.khoavo.myds.me/package/kvtube or GitHub / Forgejo releases.

    Downloads
  • v1.7.0 960111640d

    vndangkhoa released this 2026-08-25 14:44:33 +07:00 | 18 commits to main since this release

    KV Tube for Android release.

    • Ad-free YouTube playback (Invidious / InnerTube)
    • Background audio & PiP playback
    • Offline downloads
    • Device pairing code support (sync with Web & TV)
    • In-app auto-updater

    Install: grab the APK from https://pkg.khoavo.myds.me/package/kvtube or GitHub / Forgejo releases.

    Downloads
  • tv-v1.1.0 122c56a9df

    vndangkhoa released this 2026-08-24 17:13:42 +07:00 | 19 commits to main since this release

    KV Tube TV release.

    • Compose for TV UI with D-pad navigation
    • Media3 ExoPlayer (HLS/DASH), Invidious backend with InnerTube fallback
    • In-app auto-updater, session token auth
    • Android TV / Google TV 7.0+

    Install: sideload the APK, or grab it from https://pkg.khoavo.myds.me/package/kvtube

    Downloads
  • v1.5.3 9051db9e3c

    vndangkhoa released this 2026-08-23 16:23:15 +07:00 | 25 commits to main since this release

    Fixed

    • Android app: quality switching could still kill the app — the default
      opening tier is now Mid (~720p) instead of High (~1080p). At/below 720p
      YouTube serves a combined H264/AAC MP4 that every device decodes in
      hardware, while 1080p+ is a video-only VP9/AV1 adaptive stream that older
      (< Android 8) and low-end devices must decode in software — a known source
      of freezes and native crashes. Higher tiers remain fully selectable.
    • Hardened every quality switch — PlaybackManager.play() now swallows
      player exceptions (a bad stream can never take the process down), clamps
      the resume position to before the last 5 seconds (no more landing in
      STATE_ENDED when switching near the end), and debounces tier re-taps within
      350 ms to bound MediaCodec teardown/rebuild churn.
    • Media card reliability — the media-session service now starts as soon
      as a video page opens instead of at first video frame, tapping the card
      re-opens KV-Tube (setSessionActivity), and start failures are logged
      instead of being silently swallowed. Note: on Android 13+ the card also
      requires the notification permission granted for KV-Tube (Settings → Apps
      → KV-Tube → Notifications).
    • Quality switch after Picture-in-Picture restarted the video from 0 —
      PiP playback used a placeholder id, so the next tier change no longer
      recognised the item as "same video" and dropped the resume position.

    Changed

    • Android app version bumped to 1.5.3 (versionCode 10).
    Downloads
  • v1.5.2 8d5fabb4d0

    vndangkhoa released this 2026-08-23 15:57:21 +07:00 | 26 commits to main since this release

    Fixed

    • Android app: crash while watching videos — the app advertised Android
      5.0+ support but never enabled core-library desugaring. Media3 (ExoPlayer)
      uses java.time & other API 26+ classes, so on any device below Android 8
      the process died instantly (NoClassDefFoundError) the moment the watch
      screen loaded player classes — typically right as playback or a quality
      switch started. Core-library desugaring is now enabled
      (desugar_jdk_libs_nio), making the player safe down to minSdk 21.
    • Android app: Picture-in-Picture crashed devices below Android 8 — the
      PiP button was shown unconditionally, but PictureInPictureParams is an
      API 26+ class; tapping it killed the process. The button is now only
      offered on API 26+.
    • Android app: media card missing from notification shade / lock screen —
      POST_NOTIFICATIONS existed in the manifest but was never requested at
      runtime, so Android 13+ silently suppressed the MediaSession notification.
      The permission is now requested when the app starts; granting it restores
      the media card with play/pause and seek controls.
    • Quality switch hardening — resuming position across a quality change
      now uses ExoPlayer's positional setMediaSource(source, positionMs)
      overload, so the resume seek is applied atomically with the new stream
      instead of racing the re-prepare.

    Changed

    • Android app version bumped to 1.5.2 (versionCode 9).
    Downloads
  • v1.5.1 7aab12786a

    vndangkhoa released this 2026-08-23 09:41:50 +07:00 | 27 commits to main since this release

    KV-Tube Android v1.5.1

    Fix: subscriptions feed was (almost) empty

    • Invidious delivers fresh uploads under "notifications" instead of "videos" — with many subscriptions nearly everything arrived there while the app only read "videos". Both lists are now merged, deduped and sorted newest-first. Verified live: 1115 channels → 100 feed items.

    New: media card on notification & lock screen

    • Playback now shows the standard Android media card — artwork, title/channel, play/pause, seek bar — in the notification shade and on the lock screen.
    • Audio keeps playing in the background with full controls.

    Also

    • New live-test suite for the subscriptions flow against a real instance (run-subscription-test.sh).
    • 38 unit tests green.
    Downloads
  • v1.5.0 6e01df9c9c

    vndangkhoa released this 2026-08-23 08:56:55 +07:00 | 28 commits to main since this release

    KV-Tube Android v1.5.0

    Subscriptions that actually work

    • Subscribed channels are stored on-device and merged with your Invidious account list — no session token required.
    • Latest feed is built from the newest uploads of every subscribed channel (falls back from the authenticated feed automatically).

    True fullscreen player

    • Fullscreen now hides the top bar and bottom nav so the video fills the whole display.
    • Back button exits fullscreen first; video draws under display cutouts.

    Quality selection reworked

    • Tiers: Low 360p / Mid 720p / High 1080p (default) / Maximum (best available).
    • Audio track is always merged — sound never drops at any tier; switching quality keeps playback position.
    Downloads
  • v1.0.1 7166a6b05e

    vndangkhoa released this 2026-08-23 08:16:29 +07:00 | 30 commits to main since this release

    KV-Tube Android TV v1.0.1

    Added

    • Keep screen on — kv-tube now keeps the display awake while it is in the foreground: the TV's sleep screen/screensaver no longer kicks in over the app. Normal sleep resumes when you leave the app.
    Downloads
  • v1.4.0 f3e80eef61

    vndangkhoa released this 2026-08-22 21:39:13 +07:00 | 31 commits to main since this release

    KV-Tube Android v1.4.0 (versionCode 6)

    Highlights

    • Mini player: leave the watch page and audio/video keeps playing in a compact bar above the tabs; tap to jump back seamlessly (PiP now reuses the same player — no double audio)
    • Quality tiers on the watch page: Auto / Low / Maximum with audio+video merged into one stream (same approach as the web player); fullscreen rotates the screen to true landscape
    • Watch history (local, Room-backed): new History screen with thumbnails, relative timestamps, per-item remove & clear-all; live count card on the Account tab
    • Subscriptions that just work: no manual token needed when using the KV-Tube gateway; channel strip + feed load from your Invidious account
    • Show more videos buttons on Home & Subscriptions feeds
    • Shorts: chromeless full-page video with a single floating search button; re-tapping the Shorts tab jumps back to the first short
    • Instant bottom-tab switching from any deep page (e.g. Subscriptions → Account)
    • Compact animated search: expands just enough for typing; results take the full page only once ready
    • Channel page: compact banner, horizontal avatar/subscribe header, expandable description
    • Settings: title/back bar removed; Downloads search pill restyled; fixed blank channel avatars (relative Invidious URLs)
    • Share button now links to your self-hosted domain instead of youtube.com

    Install

    Download kvtube-v1.4.0.apk below (minified, signed release). Also available at https://spk.khoavo.myds.me/kvtube-release.apk

    Downloads