Repository navigation
Releases: devfahim00/SparkTube
Releases · devfahim00/SparkTube
Release list
v1.4.1
What's new since v1.4.0
Faster video start (adaptive streaming)
- Smart streaming — Auto / default-quality videos now start with small adaptive (DASH) segments and adjust the quality per segment, like the official app. Long and high-bitrate videos no longer sit on the spinner while the app drops quality step by step.
- Your default quality (720p Wi-Fi / 480p data) is now the ceiling of the adaptive quality instead of a fixed pick. Picking a quality manually in the gear menu still plays exactly that quality.
- If the adaptive start fails or is too slow, the video automatically falls back to the regular stream (and the slow-connection quality drop still applies).
- New Settings → Video → Smart streaming switch (on by default).
Watch page & comments
- YouTube-style watch page — title above a soft card with views · date and a foldable description (Show more / Show less, links clickable).
- Comments — top-comment preview card that opens a tall, endlessly scrolling comments sheet (pinned / hearted / likes).
- Comment replies — tap View N replies to expand replies right under the comment, with Show more replies for long threads.
- Comment profile pictures fixed — avatars now load again (with a coloured initial as a fallback instead of an empty circle).
- New YouTube-style video cards: round channel avatar, two-line title and one combined "channel • views • time" line.
Player animations & mini player
- The video and music players now open by sliding up out of the mini player and close by sliding down (they used to open from the right).
- Swipe down on the music player to minimize it into the mini player.
- Mini player video now fills the whole box (16:9, rounded) — no more black bars above and below.
- Screens start closer to the status bar: the extra empty space at the top of every page was trimmed.
Music
- Radio no longer stops after ~9 songs — it starts with a much bigger queue, keeps refilling, and tops up with more songs by the same artist when YouTube's related list runs short.
- Music and video search history are now separate — searching for songs no longer shows up in video search (and the other way round). Included in Backup & restore.
- Modern music home (greeting, search field, Favorites / Downloads tiles, bigger trending cards, genre tiles) and a redesigned Now Playing screen with large artwork and a live Up next / queue sheet so you can jump to any song in the radio.
- Favorites / Downloads lists show a song count and a Play all button.
- Now Playing follows the light theme correctly and its buttons have proper accessibility labels.
Under the hood
- Live-stream detection uses a typed exception instead of matching error text.
- Short cache for stream info to avoid duplicate extractor calls; recycled thumbnails are cleared instead of showing stale images.
v1.4.0
What's new since v1.3.2
Playlists (new)
- Library → Playlists tab — create your own playlists; long-press a playlist to delete it.
- Add to playlist button on the watch page — pick an existing playlist or create a new one on the spot (tap again to remove the video).
- Play all button on every playlist. Tapping any video in a playlist starts the list from that video, and each video that finishes automatically continues with the next one in the playlist.
- Videos that can't be played (removed, live) are skipped so the playlist keeps going; downloaded videos in a playlist play from your device, even offline.
- Playlists are included in Backup & restore.
Player & playback
- 10 second startup wait — a video now gets 10s (was 5s) to start before the app drops to a lower quality.
- A quality drop caused by a slow start now only affects that one video, so it no longer lowers the quality of every video that follows.
- Swipe down to minimize now works reliably and the player slides down into the mini player (instead of sliding sideways). Respects the Animations setting.
- Playback speed is now available for downloaded videos too (quality / audio-track options are hidden offline).
- Tapping Downloaded on the watch page offers to delete the file right there; tapping while a download is running no longer starts a duplicate job.
- The loading spinner now shows correctly when the player opens while a video is still being prepared.
Crash logs (new, fully on-device)
- Settings → Crash logs — view, share or delete crash reports so you can send them to the developer.
- Reports are plain-text files (stack trace, device info, recent actions) saved on your device in a
SparkTubefolder, keeping at most 20 files. Nothing is uploaded anywhere — no Firebase, no analytics.
Compatibility fixes
- Fixed the app crashing on launch on Android 10 and below (missing Java stream APIs).
- Fixed videos failing to open on Android 12 and below (URL decoding APIs that only exist on Android 13+).
Under the hood
- Build tooling updated: Kotlin 2.2.21, Android Gradle Plugin 8.6.1, compileSdk 35 (targetSdk stays 34).
- Ships a patched NewPipeExtractor 0.26.5 build for older Android versions (patch tooling in
tools/extractor-patch). - New README with screenshots, GPLv3 license file and a project landing page.
Requires Android 7.0+
Full Changelog: v1.3.2...v1.4.0
v1.3.2
What's new since v1.0.0
Player & playback
- Multi-threaded streaming — streams are fetched over 4 parallel HTTP range connections, so big / high-bitrate videos start dramatically faster (no more false "slow connection" switches on stable connections).
- Full video always visible — the watch-page player now sits below the status bar; the top strip of the video no longer hides under it. Fullscreen still renders edge-to-edge under the punch-hole camera.
- Fullscreen scale modes (Fit / Crop / Stretch) — saved preference, button shown in fullscreen only; portrait always shows the full frame.
- Separate default video quality for Wi-Fi and mobile data.
- Smart startup watchdog — drops one quality tier only after a genuinely slow start, then retires after 15s of smooth playback.
- Next / Previous buttons driven by the app queue.
- Action pills and the subscribe button appear only once the video actually loads (no placeholder flash).
- Subscribe button next to the channel name on the watch page.
- Background-audio and picture-in-picture support.
Home feed
- Fully usage-ranked feed: watch history, downloads and music plays (14-day half-life, channel affinity weighting).
- Auto-refresh every 5 minutes + manual pull-to-refresh; no more reload on every search/play — scroll position is preserved.
Downloads
- New in-app multi-threaded download engine (6 parallel connections per file, chunk retries, parallel video+audio pair download).
- Fixed the "0% → download failed" race condition.
Search
- Videos / Channels tabs.
- Upload-date filter (Any time / Today / This week / This month) behind a dedicated filter button.
Settings & backup
- Dedicated General / Video / Music settings pages.
- Clear-data (with per-type confirmations) moved into Settings.
- New "Backup & restore" submenu for importing / exporting your data.
UI polish
- Skeleton loading states across home, channel, search and music.
- Join Telegram card in the menu.
- Fixed player action-pill contrast in the light theme.
Requires Android 7.0+
Full Changelog: v1.0.0...v1.3.2
v1.0.0
Full Changelog: https://github.com/devfahim00/SparkTube/commits/v1.0.0