Skip to content

🐚 WebView2 and Qt6-based shell, desktop app for Stremio with latest web ui support

License

Notifications You must be signed in to change notification settings

Zaarrg/stremio-desktop-v5

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

64 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Stremio Web Desktop Logo

🌌 Stremio Desktop
Community

Stremio Desktop app with the latest Stremio web UI v5, built with WebView2

C++ WebView2 MPV Win32

Scoop Chocolatey Streaming Torrents

🌟 Features

  • πŸš€ Latest Technology: Built with WebView2 to provide the newest features and best performance
  • 🌐 Latest Web Ui: Always up-to-date with Stremio Web v5
  • 🎞️ Native Playback: Integrated Player for native 4K playback, hardware decoding, and fastest video performance
  • πŸ” Video Upscaling: Upscaling support for anything mpv supports
  • πŸŽ₯ Full MPV Support: Full MPV support use any hwdec, gpu-api or gpu-context like d3d, opengl and vulkan
  • 🌈 HDR Support: Full HDR Support thanks to fully supported mpv and any other mpv feature
  • πŸ”Š Dolby Atmos Support: Support for all mpv advanced audio features.
  • πŸ–ΌοΈ Picture in Picture: Picture in Picture Mode Support
  • πŸŒ‘ Dark Mode: Windows Dark mode support
  • πŸ–ΌοΈ Thumbnail Preview: ThumbFast support to allow for preview thumbnails when seeking
  • πŸ“ Local File Playback: Play any file MPV and ffmpeg supports, just use open with 'stremio' or drag and drop
  • πŸŒ€ Torrent Support: Play any local .torrent file or any magnet: link
  • πŸ“Ί Chromecast Support: Cast Videos to your Chromecast
  • βž• Easy Addon Install: Just use the install Button like stremio v4, no need to copy paste urls
  • πŸ’Ό Portable Version: Fully portable version including WebView2.
  • βš™οΈ App Settings: Customize options like CloseOnExit, PauseOnMinimize, and PauseOnLostFocus and more.
  • πŸ”„ Built-in Autoupdate: Built-in autoupdater. No need to always download from GitHub.
  • πŸ“¦ Scoop and Chocolatey: Support for Scoop and Choco for ease of use.

Stremio Web Desktop Screenshot

🎭 Comparison

  • A side-by-side visual comparison of various features and enhancements in Stremio Desktop v5. Due to this being screenshots, HDR appears over-exposed.

HDR Comparison

Stremio Web Desktop Screenshot

Stremio Desktop v5 vs Official Stremio v5.

Upscaler Comparison

Stremio Web Desktop Screenshot

Anime4k + Auto HDR vs Offical Stremio v5.

Thumbnail Previews

Descriptive Alt Text

Best on local files using thumbfast. Size can be adjusted.

πŸ”§ Installation

  1. πŸͺŸ Windows x64 and x86
    1. πŸ“₯ Installer
      • Install using the Installer. Download stremio-5.0.0-x64.exe or stremio-5.0.0-x86.exe and run it.
    2. πŸ’Ό Portable Version
      • Install using the Archive. Download stremio-5.0.0-x64.7z or stremio-5.0.0-x86.7z extract it and run stremio.exe
    3. πŸ₯„ Scoop.sh
      # Install
      scoop bucket add zarg https://github.com/zaarrg/scoop
      scoop install stremio-desktop-v5
      # Update
      scoop update zarg
      scoop update stremio-desktop-v5
      # Uninstall
      scoop uninstall stremio-desktop-v5
    4. 🍫 Chocolatey
      # Install
      choco install stremio-desktop-v5 -y
      # Update
      choco upgrade stremio-desktop-v5 -y
      # Uninstall
      choco uninstall stremio-desktop-v5 -y

⏳ Note: If you have stremio-desktop v4.x.x installed make sure to uninstall it first. Otherwise there might be issues.

  1. πŸš€ Linux, macOS
  • Coming soon!

⏳ Note: Linux and Mac release will take considerable time as they need their own build with os specific technology's

πŸ” Mpv Upscalers

  • πŸŽ₯ Anime4k

    • βœ… Included by default.
    • πŸ”’ Use CTRL+1 - CTRL+6 to enable shaders.
    • ❌ Use CTRL+0 to disable.
  • 🎨 AnimeJaNai

    • ❌ Not included by default.
    • πŸ“₯ Download from the Stremio-Desktop-v5 release tab the stremio-animejanai-3.x.x.7z for Stremio and drop the content of the 7z into %localAppData%\Programs\LNV\Stremio-5\ and replace all
      • πŸ› οΈ Changes made:
        • Removed mpvnet.exe as Stremio is used as the player.
        • Adjusted mpv.conf to work with Stremio.
        • Adjusted input.conf to work with Stremio.
    • ⌨️ Possible Keybindings
      • 🎬 CTRL+J Show Upscaler Status
      • πŸ› οΈ CTRL+E Open AnimeJaNai ConfEditor
      • ❌ CTRL+0 Disable Upscaling
      • πŸ”’ SHIFT+1 - SHIFT+3 Select Quality, Balanced or Performance Profiles
      • βš™οΈ CTRL+1 - CTRL+9 Switch between Custom Profiles
      • πŸ”— For more, check AnimeJaNai

⏳ Note: When using AnimeJaNai on first playback Stremio will be unresponsive and a console will open to build the model via e.g. TensorRT. You will need to wait until the console closes for playback to start. This happens only once per model.

  • πŸš€ Nvidia RTX and Intel VSR Scaling
    • βœ… Supported by using mpv.conf.
    • ✍️ Modify in %localAppData%\Programs\LNV\Stremio-5\ the portable_config/mpv.conf and add the line vf=d3d11vpp=scale=2:scaling-mode=nvidia more details here

πŸ” Mpv Addons

  • πŸŽ₯ ThumbFast
    • πŸ”§ Go in the Stremio-Dekstop-v5 Repo to utils/mpv/thumbfast or direct-link and download thumbfast.7z. Drag and Drop the archive contents into %localAppData%\Programs\LNV\Stremio-5
    • πŸ“ Works best with local files as there is no network bottleneck. U can Drag and Drop any local file into Stremio or right click Open With > Stremio

⏳ Note: For more details visit mpv-portable-configs

✨ Stremio App

  • πŸ“ Local Files

    • Play any local file or torrent by drag and dropping or Open With > Stremio that mpv and ffmpeg support
    • Play any magnet by opening it via the browser in Stremio or copy pasting it into the Search Bar
  • 🧩 Browser Extensions

    • Add any Browser Extension to Stremio by dropping the unpacked Extension into portable_config/extensions
    • On Start Extensions from portable_config/extensions are loaded.
    • πŸ‘‰ To install extension:
      1. Get the unpacked Extensions from%localAppData%\Microsoft\Edge SxS\User Data\Default\Extensions.
      2. Here look for the mainfest.json for example ublock {string-id}/1.62.0_0/manifest.json as all the content beside is the extension
      3. Now we can copy the contents of {string-id}/1.62.0_0 to %localAppData%\Programs\LNV\Stremio-5\portable_config\extensions\ublock
      4. Important is that the mainfest.json is located directly in portable_config\extensions\ublock
      5. Done. Restart app and addons will be loaded. If loading fails check portable_config\errors-{date}.txt
  • βš™οΈ App Settings

    • All App Settings can be adjusted with portable_config\stremio-settings.ini
    • Some options can be set by right-clicking on the tray icon as well.
    • ⌨️ Possible Settings
      • ❌ CloseOnExit Close app on exit instead of minimized to tray
      • πŸŒ“ UseDarkTheme Toggle dark theme
      • πŸ“ ThumbFastHeight Enable thumbfast and set the thumbfast image height. This adjust the offset of the top left corner of the thumb. Meaning 100 will move the top left corner 100px up. 0 disables thumbfast
      • 😴 PauseOnMinimize Pause playback on window minimize
      • πŸ‘€ PauseOnLostFocus Pause playback on window loses focus
      • πŸ” AllowZoom Allow zoom via pinch action or CTRL+Scroll
  • ❌ App Errors

    • If the app does not start and instantly closes, check the error log in portable_config\errors-{date}.txt
    • ⚠️ Common Issues
      • ❗ WebView2 not installed – Installed by default using the installer but may have failed
      • 🌎 Unreachable Web UI. Make sure you can reach the web ui hosted here.
      • βš™οΈ Invalid MPV configuration like mpv.conf, input.conf or scripts
      • πŸ“„ Invalid stremio-settings.ini
      • 🧩 Invalid extensions

⏳ Note: A default stremio-settings.ini can be found here

πŸŽ›οΈ Mpv Configuration

Enhance your Stremio experience by customizing the MPV player settings. Below are the key configuration files and guidelines to help you get started:

  • πŸ“ mpv.conf Location

    • The mpv.conf file can be found in the following location:
      • Installation Path: %localAppData%\Programs\LNV\Stremio-5\portable_config\mpv.conf
      • Shaders Folder: Located within the installation directory ..\Stremio-5\portable_config\shaders.
  • 🎹 Usage example of mpv.conf for DV Content:

    # MPV Conf for DV Content
    vo=gpu-next
    gpu-api=vulkan
    target-colorspace-hint=yes

⏳ Note: Any other configuration files can be just dropped into %localAppData%\Programs\LNV\Stremio-5\portable_config as this is the mpv config-dir like input.conf. scripts or scripts-conf

  • 🎹 Usage example in input.conf using Anime4k:
    # Optimized shaders for higher-end GPU
    CTRL+1 no-osd change-list glsl-shaders set "~~/shaders/Anime4K_Clamp_Highlights.glsl;~~/shaders/Anime4K_Restore_CNN_VL.glsl;~~/shaders/Anime4K_Upscale_CNN_x2_VL.glsl;~~/shaders/Anime4K_AutoDownscalePre_x2.glsl;~~/shaders/Anime4K_AutoDownscalePre_x4.glsl;~~/shaders/Anime4K_Upscale_CNN_x2_M.glsl"; show-text "Anime4K: Mode A (HQ)"
    CTRL+2 no-osd change-list glsl-shaders set "~~/shaders/Anime4K_Clamp_Highlights.glsl;~~/shaders/Anime4K_Restore_CNN_Soft_VL.glsl;~~/shaders/Anime4K_Upscale_CNN_x2_VL.glsl;~~/shaders/Anime4K_AutoDownscalePre_x2.glsl;~~/shaders/Anime4K_AutoDownscalePre_x4.glsl;~~/shaders/Anime4K_Upscale_CNN_x2_M.glsl"; show-text "Anime4K: Mode B (HQ)"
    CTRL+3 no-osd change-list glsl-shaders set "~~/shaders/Anime4K_Clamp_Highlights.glsl;~~/shaders/Anime4K_Upscale_Denoise_CNN_x2_VL.glsl;~~/shaders/Anime4K_AutoDownscalePre_x2.glsl;~~/shaders/Anime4K_AutoDownscalePre_x4.glsl;~~/shaders/Anime4K_Upscale_CNN_x2_M.glsl"; show-text "Anime4K: Mode C (HQ)"
    CTRL+4 no-osd change-list glsl-shaders set "~~/shaders/Anime4K_Clamp_Highlights.glsl;~~/shaders/Anime4K_Restore_CNN_VL.glsl;~~/shaders/Anime4K_Upscale_CNN_x2_VL.glsl;~~/shaders/Anime4K_Restore_CNN_M.glsl;~~/shaders/Anime4K_AutoDownscalePre_x2.glsl;~~/shaders/Anime4K_AutoDownscalePre_x4.glsl;~~/shaders/Anime4K_Upscale_CNN_x2_M.glsl"; show-text "Anime4K: Mode A+A (HQ)"
    CTRL+5 no-osd change-list glsl-shaders set "~~/shaders/Anime4K_Clamp_Highlights.glsl;~~/shaders/Anime4K_Restore_CNN_Soft_VL.glsl;~~/shaders/Anime4K_Upscale_CNN_x2_VL.glsl;~~/shaders/Anime4K_AutoDownscalePre_x2.glsl;~~/shaders/Anime4K_AutoDownscalePre_x4.glsl;~~/shaders/Anime4K_Restore_CNN_Soft_M.glsl;~~/shaders/Anime4K_Upscale_CNN_x2_M.glsl"; show-text "Anime4K: Mode B+B (HQ)"
    CTRL+6 no-osd change-list glsl-shaders set "~~/shaders/Anime4K_Clamp_Highlights.glsl;~~/shaders/Anime4K_Upscale_Denoise_CNN_x2_VL.glsl;~~/shaders/Anime4K_AutoDownscalePre_x2.glsl;~~/shaders/Anime4K_AutoDownscalePre_x4.glsl;~~/shaders/Anime4K_Restore_CNN_M.glsl;~~/shaders/Anime4K_Upscale_CNN_x2_M.glsl"; show-text "Anime4K: Mode C+A (HQ)"
    
    CTRL+0 no-osd change-list glsl-shaders clr ""; show-text "GLSL shaders cleared"

⏳ Note: Some keys might not work as key presses are converted from js event.codes to literal values for mpv

βš™οΈ Start Arguments

Use these extra arguments when launching the application:

Argument Example Description
--webui-url= --webui-url=https://web.stremio.com/ Loads web ui from https://web.stremio.com/
--streaming-server-disabled Disable auto start of streamio-server, Default behaviour in prod
--autoupdater-force-full Forces Autoupdate to always do a full-update rather than partial
--autoupdater-endpoint= --autoupdater-endpoint==https://verison.mydomain.com/ Overrides default checking endpoint for the autoupdater

⏳ Note: By default will use as webui-url the stremio-web-shell web-ui hosted here which includes fixes to run smoothly as shell with qt6 and WebView2

πŸ“š Guide / Docs

If you want to build this app yourself, check the β€œdocs” folder in this repository for setup instructions and additional information.

⚠️ Disclaimer

This project is not affiliated with Stremio in any way.

🀝 Support Development

If you enjoy this project and want to support further development, consider buying me a coffee. Your support means a lot! β˜•

⭐ Made with ❀️ by Zaarrg ⭐