Back to home

Changelog

All releases, new features, and improvements in Multistream.

Multistream v0.19.0

Latest
View on GitHub

YouTube Support

In the previous release, YouTube was only available as stream suggestions on the home screen. This update brings full YouTube integration across the entire app:

  • •Multiple simultaneous live streams: Channels broadcasting multiple games or events at the same time (like CazéTV, tournament organizers, or sports channels) now list every active stream in your sidebar and feed, rather than just showing a single broadcast.
  • •Channel favorites and recent history: You can now favorite any YouTube channel by pasting a stream link, using its channel name, or entering its handle. Channels also save properly to your recent history.
  • •Accurate live status: The viewer counters in the sidebar now display actual concurrent viewers watching in real time, along with updated stream titles and channel avatars.
  • •Integrated channel search: The search bar can now look up YouTube channels directly, showing channel profile pictures and current live indicators without requiring any account setup.
  • •Reliable sharing and importing: Sharing or importing layouts that include multiple YouTube broadcasts now preserves the exact stream for each slot, preventing duplicate channel conflicts.
  • •Cleaner loading screen: The player loading screen now displays the channel's profile picture while connecting to the stream.
  • Note: This feature is functional, but it is not 100% stable yet. Additionally, sending messages in YouTube chat is still not supported at this time, just like with all other iframe chats (unlike the native ones).

    Features

    (8)
    • •share: Preserve exact live broadcast video ids in shared urls 776cafe
    • •youtube: Support multiple concurrent live streams per channel 72d5c61
    • •youtube: Preserve channel handles in sharing and stream resolution c2e6172
    • •i18n: Add translations for channel resolution and offline states 4b79142
    • •search: Add channel autocomplete and quick suggestions 618a44a
    • •youtube: Resolve and sanitize channel handles across ui 38337b9
    • •youtube: Implement native channel search engine de86646
    • •youtube: Extract canonical handles and live viewer counts 6c76675

    Bug Fixes

    (18)
    • •website: Allow handles and dots in share url sanitization 287ff98
    • •stream: Improve live stream resolution, favorite matching, and sidebar listing 3be7085
    • •import: Preserve distinct video ids and resolve metadata during stream import 8c7253f
    • •youtube: Optimize concurrent multi-stream scraping and add global rate limiting 150d334
    • •youtube: Address clippy warnings in api 9c5513f
    • •youtube: Improve live detection resilience and multi-stream scraping 4a07736
    • •youtube: Harden live detection against vods and stabilize status b873e4d
    • •youtube: Fix live detection, concurrent viewers and channel avatar 3071341
    • •youtube: Stabilize live stream detection and drop flaky push alerts 8c0d92e
    • •notifications: Prevent false online youtube alerts and resolve channel names in ui 1fe71f0
    • •favorites: Support custom stream favorites and dual backup compatibility (#39) 6311058
    • •ui: Use display name in close stream toast and notification titles b90a6db
    • •desktop: Preserve canonical handles in notifications and sharing 0f6fd2f
    • •recents: Preserve handle and display name in recent streams 7be093c
    • •ui: Prevent sidebar skeleton flicker when favoriting channels d152401
    • •youtube: Prevent spurious live notifications on transient network errors dff279c
    • •recording: Prevent duplicate shutdown and ensure remuxing entries finalize 1f42832
    • •recording: Filter active recordings from orphan scan and cut audio on close f8cd3c2

    Style

    (1)
    • •stream: Display channel avatar in skeleton for twitch, kick, and youtube c7486fe

    Performance

    (1)
    • •live: Reduce refresh cpu overhead via youtube fast-path and polling deduplication 7c994f4

    Multistream v0.18.19

    View on GitHub

    Bug Fixes

    (6)
    • •backend: Use RAII guard for whisper download and chain default panic hook 71cdafc
    • •recording: Add 30-min timeout and explicit kill to ffmpeg remux f8cca8e
    • •transcriber: Use atomic download to prevent corrupted whisper models 703a048
    • •backend: Register global panic hook to capture unhandled panics in logs 10e7416
    • •chat: Refine plain text extraction, selection containment, and emote fallback ea16e4a
    • •chat: Correct emote insertion position and prevent text erasure 5ae7c8a

    Style

    (1)
    • •ui: Improve settings dialog tabs alignment and distribution 421f35d

    Multistream v0.18.18

    View on GitHub

    Features

    (4)
    • •i18n: Harden cli, use native bun apis, add vitest tests and documentation 568c89a
    • •suggestions: Add 5-minute auto-refresh and manual refresh button 3750213
    • •ui: Add minimalist about tab in settings dialog 7f14fe6
    • •Consolidate transparent twitch and youtube stream filter c55df5a

    Bug Fixes

    (4)
    • •live-status: Prevent spurious notifications via debounced offline tracking a4e1c16
    • •stream: Trigger skeleton transition on adblock toggle 215c2fc
    • •twitch: Decouple oauth client id from gql playback token endpoint 9b2106e
    • •twitch: Eliminate refresh token race condition causing daily session loss 294ca9f

    Refactors

    (1)
    • •ui: Redesign onboarding tour dialog b83ce55

    Multistream v0.18.17

    View on GitHub

    Features

    (4)
    • •ui: Integrate responsive suggested streams into add dialog 3cabd37
    • •i18n: Add translations for add dialog suggested streams and empty states 868fec8
    • •youtube: Add trending live stream suggestions pipeline 13671eb
    • •chat: Search all sections in emote picker 80b6de2

    Bug Fixes

    (10)
    • •suggestions: Defer dialog open watcher and support chinese viewer count df0c8ad
    • •twitch: Robust oauth persistence and device polling 9999213
    • •twitch: Resolve critical edge cases in network and auth state 95e01ee
    • •twitch: Renew token proactively and on irc auth failure 6f13242
    • •ui: Localize and center stream diagnostics title e4ae71f
    • •a11y: Improve wcag compliance with aria-labels, titles, and keyboard navigation 3cf65b7
    • •Resolve critical logic, reactivity, and encoding bugs across components 24d7801
    • •i18n: Localize hardcoded strings across chat, streams, and dialogs a97d213
    • •core: Harden twitch polling, sync sidebar skeleton, bulletproof notifications a607546
    • •website: Configure sitemap i18n and optimize pre-push hook 1f81320

    Refactors

    (1)
    • •ui: Redesign add dialog and stream chips 39bf87d

    Performance

    (3)
    • •screenshot: Use binary bytes instead of base64 over ipc b4c77a1
    • •emote: Remove emote drop shadow and cache message tokenization 9bd2a50
    • •chat: Batch kick messages and fix native chat listener leaks 6076df2

    Multistream v0.18.16

    View on GitHub

    Features

    (4)
    • •screenshot: Add thumbnail preview and open folder action 3b3cecb
    • •notifications: Refine welcome toast positioning and restore os alerts 1fa0519
    • •ui: Implement custom native toast notification system 0aea7b8
    • •backup: Implement additive restore and refactor I/O strategies 4d59168

    Bug Fixes

    (2)
    • •ui: Prevent sidebar state wipe on network failure and fix stale thumbnails de5342d
    • •player: Implement auto-recovery watchdog and fix async race conditions 36b75ef

    Refactors

    (1)
    • •ui: Purge vue-sonner from components and package.json 51bf710

    Performance

    (1)
    • •ui: Eliminate skeleton loader cpu spikes and visual artifacts c9031d8

    Multistream v0.18.15

    View on GitHub

    Features

    (7)
    • •auth: Add personalized success toasts and update i18n keys 6f2353b
    • •recording: Add unix process group management for clean shutdown 601d997
    • •recording: Add linux and macos install pipelines effac25
    • •recording: Expand platform support and make streamlink args platform-aware bd7b33a
    • •website: Centralize github api fetching and add dev cache cde4e2f
    • •website: Enhance seo json-ld, i18n titles, and dialog a11y db382ab
    • •website: Update brand logo, coffee svg, and favicon assets a152cd5

    Bug Fixes

    (12)
    • •core: Resolve async race conditions and gateway edge cases d91d70a
    • •auth: Resolve ipc cancellation leaks and race conditions in dialogs a9f7434
    • •streams: Prevent orphaned background recordings on clear 9c6c5da
    • •chat: Resolve connection drops and zombie listeners 7e574c6
    • •transcription: Resolve closure traps and state loss on unmount b0c8ae5
    • •sidebar: Add centered empty state with i18n and radio icon ed96634
    • •sidebar: Prevent polling flicker and synchronize sidebar state with preferences ca87fb7
    • •chat: Make unified chat skeleton icons match active platforms 84b3364
    • •recording: Add tokio::time::sleep to prevent remux race condition on Linux 74c54f7
    • •recording: Prevent Streamlink orphans and fix remuxing on Linux fe950b3
    • •recording: Remove obsolete recordingEnabled state and optimize CI pipelines 742a3f0
    • •recording: Guard zip imports on linux to fix CI unused warnings 7a7b60a

    Refactors

    (4)
    • •recording: Remove legacy os restrictions from UI and update docs b028372
    • •recording: Use non-blocking sleep for unix shutdown and gate linux installer to x86_64 7c7ec31
    • •ui: Consume centralized config across components and composables 148fa3e
    • •config: Centralize platform urls, cdn templates and external links 02e6df6

    Multistream v0.18.14

    View on GitHub

    Features

    (2)
    • •ui: Implement native tauri 2 splashscreen architecture a443835
    • •ui: Update app icons and logo graphics b006e27

    Multistream v0.18.13

    View on GitHub

    Features

    (4)
    • •recording: Improve remux logic and ipc progress events a55970f
    • •ui: Refine settings dialog layout, spacing, and gestalt grouping 43b2949
    • •i18n: Add french, turkish, hindi, and indonesian translations 718a0bb
    • •ui: Add new flag icons for fr, tr, hi, and id aa417ef

    Bug Fixes

    (1)
    • •Resolve i18n translations, test isolation, vite plugin and git hooks 543cb6a

    Refactors

    (1)
    • •recording: Integrate custom toasts and fix stacking bugs 59c1cbe

    Style

    (1)
    • •recording: Add custom toast components for remux progress c46c8b0

    Multistream v0.18.12

    View on GitHub

    Features

    (2)
    • •recording: Add uninstall feature and fix python version to prevent hash mismatch 818230a
    • •ui: Add confirmation dialog for recorder uninstallation and sync translations 2b993fa

    Bug Fixes

    (4)
    • •recording: Remove unused assignment of total_size in installer 372cfcc
    • •Bundle GStreamer plugins in AppImage so media playback works on non-Debian distros 2e6c0c8
    • •Update lighthouserc staticDistDir for monorepo structure 25e18fb
    • •Resolve eslint no-var error and playwright CI execution 1f37e42

    Multistream v0.18.11

    View on GitHub

    Features

    (12)
    • •website: Integrate astro-seo and astro-robots-txt for advanced seo 14214fe
    • •website: Optimize seo, i18n and changelog parsing ab27313
    • •ui: Refine offline stream overlay design and fix controls overlap 8bac8d1
    • •ui: Add native screenshot support and refine viewer count cf874b2
    • •ui: Refine native player compact layout and fix playback bugs 9fd42d9
    • •i18n: Add translations for native player volume and auto quality af65175
    • •ui: Add visual skeleton loader for stream initialization e1acfb4
    • •ui: Reset Twitch graveyard when native player preference changes d214105
    • •settings: Add native player toggle and locale translations 1889e4f
    • •stream: Implement native hls twitch player component 358c564
    • •preferences: Add native player preference and hls.js dependency cb4f08c
    • •twitch: Add twitch_get_hls_url backend command 1a0a072

    Bug Fixes

    (4)
    • •ui: Improve stream load reliability and ignore custom streams in chat 57b7dc1
    • •stream: Resolve native player loading in production via CSP & error handling 1c58f0f
    • •stream: Address CodeRabbit review feedback 9d3f0d0
    • •ui: Resolve reka-ui v-model binding issues for Switch component persistence 1e38494

    Multistream v0.18.10

    View on GitHub

    Performance

    (1)
    • •ui: Remove infinite css animations from idle components c44ee94

    Multistream v0.18.9

    View on GitHub

    Bug Fixes

    (4)
    • •ui: Resolve skeleton loader race condition on startup abac40b
    • •kick: Prevent auth session drops on concurrent refresh and transient errors 67a447f
    • •twitch: Prevent auth session drops on concurrent refresh and transient errors 0efb9ce
    • •ui: Sort suggested streams by viewer count 6e9929d

    Performance

    (1)
    • •chat: Optimize message storage layout and DOM rendering 26717cf

    Multistream v0.18.8

    View on GitHub

    Features

    (3)
    • •ui: Refine onboarding tour, settings tabs layout, and recording options
    • •i18n: Add orphan deletion confirmation translations for all locales
    • •ui: Add reusable confirm dialog and confirmation step for orphan deletion

    Bug Fixes

    (3)
    • •recording: Include detailed disk space metrics in remux error toast
    • •recording: Delete orphan on dismiss, fix channel parsing, enforce remux disk check
    • •twitch-irc: Add heartbeat, single-pass parsing, and outbound close handling

    Multistream v0.18.7

    View on GitHub

    Features

    (4)
    • •ui: Redesign update progress toast for native sonner integration
    • •i18n: Refine notification templates across all locales
    • •ui: Refine live status notifications logic
    • •rust: Add tauri-winrt-notification dependency

    Bug Fixes

    (3)
    • •windows: Resolve powershell notification title in production
    • •ui: Bypass graveyard for custom streams to instantly destroy iframe and halt audio
    • •rust: Allow clippy::too_many_arguments on send_notification

    Refactors

    (1)
    • •rust: Extract notification and screenshot commands to modules

    Multistream v0.18.5

    View on GitHub

    Bug Fixes

    (3)
    • •tauri: Fix v2 ACL permissions and secure twitch credentials
    • •backup: Resolve native backup export issues and increase test coverage
    • •deps: Bump tauri to 2.11.5 and tauri-plugin-updater to 2.10.1