stremio-community-v5/README.md
Zarg f6b08f6267 Bump to 5.0.21 and updated readme
- Bump to 5.0.21
- Updated Readme Animejanai section, added video guide and updated build link
- Updated App errors with more common issues
2025-12-09 11:12:28 +01:00

346 lines
21 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<p align="center">
<img src="https://www.stremio.com/website/stremio-logo-small.png" alt="Stremio Web Desktop Logo" width="200" />
</p>
<div align="center">
<h1>🌌 Stremio Desktop<br/><span style="font-size: 0.6em; font-weight: normal;">Community</span></h1>
</div>
<p align="center">Stremio Desktop app with the latest Stremio web UI v5, built with WebView2</p>
<p align="center">
<!-- C++ badge -->
<img src="https://img.shields.io/badge/%20C++-00599C?style=for-the-badge&logo=c%2B%2B&logoColor=white" alt="C++" />
<!-- WebView2 badge -->
<img src="https://img.shields.io/badge/🌐%20WebView2-0078D6?style=for-the-badge&logo=microsoftedge&logoColor=white" alt="WebView2" />
<!-- MPV badge -->
<img src="https://img.shields.io/badge/%20MPV-663399?style=for-the-badge&logo=mpv&logoColor=white" alt="MPV" />
<!-- Win32 badge -->
<img src="https://img.shields.io/badge/🪟%20Win32-0078D6?style=for-the-badge&logo=windows&logoColor=white" alt="Win32" />
</p>
<p align="center">
<!-- Scoop badge -->
<img src="https://img.shields.io/badge/🪣%20Scoop-80C342?style=for-the-badge&logo=scoop&logoColor=white" alt="Scoop" />
<!-- Chocolatey badge -->
<img src="https://img.shields.io/badge/%20Chocolatey-3C69E7?style=for-the-badge&logo=chocolatey&logoColor=white" alt="Chocolatey" />
<!-- Streaming badge -->
<img src="https://img.shields.io/badge/%20Streaming-E34F26?style=for-the-badge&logo=netflix&logoColor=white" alt="Streaming" />
<!-- Torrents badge -->
<img src="https://img.shields.io/badge/🌀%20Torrents-000000?style=for-the-badge&logo=thepiratebay&logoColor=white" alt="Torrents" />
</p>
<h2>🌟 <strong>Features</strong></h2>
<ul style="line-height:1.9;">
<li>🚀 <strong>Latest Technology</strong>: Built with WebView2 to provide the newest features and best performance</li>
<li>🌐 <strong>Latest Web Ui</strong>: Always up-to-date with Stremio Web v5</li>
<li>🎞️ <strong>Native Playback</strong>: Integrated Player for native 4K playback, hardware decoding, and fastest video performance</li>
<li>🔍 <strong>Video Upscaling</strong>: Upscaling support for anything mpv supports</li>
<li>🎥 <strong>Full MPV Support</strong>: Full MPV support use any hwdec, gpu-api or gpu-context like d3d, opengl and vulkan</li>
<li>🌈 <strong>HDR Support</strong>: Full HDR Support thanks to fully supported mpv and any other mpv feature</li>
<li>🔊 <strong>Dolby Atmos Support</strong>: Support for all mpv advanced audio features.</li>
<li>🖼️ <strong>Picture in Picture</strong>: Picture in Picture Mode Support</li>
<li>🌑 <strong>Dark Mode</strong>: Windows Dark mode support</li>
<li>💬 <strong>Discord Rich Presence</strong>: Show what you're watching in real-time on your Discord profile</li>
<li>🖼️ <strong>Thumbnail Preview</strong>: ThumbFast support to allow for preview thumbnails when seeking</li>
<li>📁 <strong>Local File Playback</strong>: Play any file MPV and ffmpeg supports, just use <strong>open with</strong> 'stremio' or <strong>drag and drop</strong></li>
<li>🔡 <strong>Local Subtitles</strong>: Add any Subtitle file using drag and drop while playing a video</li>
<li>🎨 <strong>Advanced Subtitles Styles</strong>: Style subtitles any way you like using <strong>mpv configuration</strong></li>
<li>📌 <strong>Advanced Auto Selection</strong>: Select multiple default Subtitle, Audio tracks as well as Subtitle Keywords to prioritize and filter out unwanted languages</li>
<li>🌀 <strong>Torrent Support</strong>: Play any local .torrent file or any magnet: link</li>
<li>📺 <strong>Chromecast Support</strong>: Cast Videos to your Chromecast</li>
<li> <strong>Easy Addon Install</strong>: Just use the install Button like stremio v4, no need to copy paste urls</li>
<li>💼 <strong>Portable Version</strong>: Fully portable version including WebView2.</li>
<li>⚙️ <strong>App Settings</strong>: Customize options like CloseOnExit, PauseOnMinimize, and PauseOnLostFocus and more.</li>
<li>🔄 <strong>Built-in Autoupdate</strong>: Built-in autoupdater. No need to always download from GitHub.</li>
<li>📦 <strong>Scoop and Chocolatey</strong>: Support for Scoop and Choco for ease of use.</li>
</ul>
<p align="center">
<img src="https://i.imgur.com/xvM5lp8.png" alt="Stremio Web Desktop Screenshot" width="600" />
</p>
## 🎭 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.
<p align="center">
<strong>Upscaler Comparison</strong>
</p>
<p align="center">
<img src="https://i.imgur.com/rLTmFC2.png" alt="Stremio Web Desktop Screenshot" width="600" />
</p>
<p align="center">
<small><i>Anime4k + Auto HDR vs Official Stremio v5.</i></small>
</p>
<p align="center">
<strong>Thumbnail Previews</strong>
</p>
<p align="center">
<img src="https://i.imgur.com/jNPit8J.gif" alt="Descriptive Alt Text" width="600" />
</p>
<p align="center">
<small><i>Best on local files using thumbfast. Size can be adjusted.</i></small>
</p>
<p align="center">
<strong>Discord Rich Presence</strong>
</p>
<p align="center">
<img src="https://i.imgur.com/V5YgSSx.png" alt="Discord Rich Presence Example"/>
</p>
<p align="center">
<small><i>Live activity like Discovering, Watching, or Paused updates in real-time.</i></small>
</p>
## 🔧 Installation
1. 🪟 **Windows x64 and x86**
1. 📥 **Installer (Recommended)**
- **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. 📦 **Winget**
```shell
# Install
winget install Zaarrg.StremioCommunity
# Update
winget upgrade Zaarrg.StremioCommunity
# Uninstall
winget uninstall Zaarrg.StremioCommunity
```
4. 🥄 **Scoop.sh**
```shell
# 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
```
5. ~~🍫 **Chocolatey**~~
```shell
⚠️ Note: Chocolatey is not updated use scoop or a other installation method!
# 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.
2. 🚀 **Linux, macOS**
- Coming soon!
> **⏳ Note:** Linux and Mac release will take considerable time as they need their own build with OS specific technologies
## 🔍 **Mpv Upscalers**
- 🎥 **[Anime4k](https://github.com/bloc97/Anime4K)**
- ✅ Included by default.
- 🔢 Use `CTRL+1` - `CTRL+6` to enable shaders.
- ❌ Use `CTRL+0` to disable.
- 🎨 **[AnimeJaNai](https://github.com/the-database/mpv-upscale-2x_animejanai)**
- ❌ Not included by default.
- 📥 Download from the **Stremio-Desktop-v5** [release tab](https://github.com/Zaarrg/stremio-community-v5/releases/tag/5.0.0-beta.20) the `stremio-animejanai-3.x.x.7z.001` and `stremio-animejanai-3.x.x.7z.002` 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](https://github.com/the-database/mpv-upscale-2x_animejanai)
- 📺 **Installation Guide**
- See: [AnimeJaNai Youtube Installation Guide](https://www.youtube.com/watch?v=ZlPJ-M3kkdM)
> **⏳ 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](https://www.reddit.com/r/nvidia/comments/1foyl4n/mpv_player_v0390_adds_rtx_video_super_resolution/)
## 🔍 **Mpv Addons**
- 🎥 **[ThumbFast](https://github.com/po5/thumbfast)**
- 🔧 Go in the `Stremio-Desktop-v5` Repo to ``utils/mpv/thumbfast`` or [direct-link](https://github.com/Zaarrg/stremio-desktop-v5/tree/webview-windows/utils/mpv/thumbfast) 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](https://github.com/Zaarrg/stremio-desktop-v5/blob/webview-windows/utils/mpv/README.md)
## ✨ **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\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``
- **Supported Extensions**: Some extension need support added manually. These extension can be downloaded [here](https://github.com/Zaarrg/stremio-desktop-v5/tree/webview-windows/extensions).
- ⚙️ **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 available**
* The **installer** requires [WebView2](https://developer.microsoft.com/de-de/microsoft-edge/webview2/#download) to be installed.
* The **portable version** includes its own WebView2 runtime and does **not** require system installation.
* If a WebView-related error appears, install WebView2 or use the portable build.
* 🌎 **Unreachable Web UI**
The app loads the UI in the following order:
1. [https://stremio.zarg.me/](https://stremio.zarg.me/)
2. [https://zaarrg.github.io/stremio-web-shell-fixes/](https://zaarrg.github.io/stremio-web-shell-fixes/)
3. [https://web.stremio.com/](https://web.stremio.com/)
* If the UI appears stuck, press **F5** to reload.
* If the cached UI is outdated, use **Ctrl+F5** to clear cache and reload.
* ⚙️ **Invalid MPV configuration**
Invalid or unsupported config in `mpv.conf`, `input.conf`, or `scripts/` may prevent MPV from initializing.
* 📄 **Invalid `stremio-settings.ini`**
A default configuration is available:
[stremio-settings.ini](https://github.com/Zaarrg/stremio-desktop-v5/blob/webview-windows/utils/stremio/stremio-settings.ini)
* If corrupted, delete the file to let the app regenerate it.
* 🧩 **Invalid or incompatible extensions**
Extensions under `portable_config/extensions` may prevent startup.
* **uBlock** or similar blockers can cause infinite loading loops → remove them (see *Browser Extensions* section above).
* 🔁 **Server not running after sleep / incomplete restart**
If the PC went to sleep, the internal stremio server stops.
* Fully close the app via **Task Manager** and restart it.
> **⏳ Note:** A default stremio-settings.ini can be found [here](https://github.com/Zaarrg/stremio-desktop-v5/blob/webview-windows/utils/stremio/stremio-settings.ini)
## 🎛️ **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``.
- **Latest Portable Config:** Latest portable config can be found [here](https://raw.githubusercontent.com/Zaarrg/stremio-desktop-v5/webview-windows/utils/mpv/Default%20Portable%20Config.7z).
- **🎹 Usage example of `mpv.conf` for DV Content:**
```shell
# 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](https://github.com/bloc97/Anime4K):**
```shell
# 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
- **🔡 Subtitle Customization:**
- Subtitles can be full customized in the ``mpv.conf`` by adding the following:
```shell
# Adjust as needed -
sub-font="Comic Sans MS"
osd-font="Comic Sans MS"
osd-font-size=43
sub-font-size=43
sub-color=#e1fe00
sub-font-size=43
sub-color=#ffffff
sub-font-size=43
sub-border-color=#000000
sub-border-size=2
sub-shadow-offset=1
sub-shadow-color=#000000
sub-spacing=0
sub-margin-y=41
sub-line-spacing=0
ass-line-spacing=0
# To overwrite .ass subs use sub-ass=no or just use F2 to cycle subtitle modification levels
```
- Stremio by default overwrites the following:
```shell
# These 3 options are set using the web ui under the settings page
'subtitlesTextColor': 'sub-color',
'subtitlesBackgroundColor': 'sub-back-color',
'subtitlesOutlineColor': 'sub-border-color',
# Affected mpv sub settings by this are:
sub-color
sub-back-color # + Alias sub-shadow-color
sub-border-color # + Alias sub-outline-color
# All these need to be set via the web ui instead
```
## ⚙️ **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](https://github.com/Zaarrg/stremio-web-shell-fixes) web-ui hosted [here](https://zaarrg.github.io/stremio-web-shell-fixes/#/) 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](https://github.com/Zaarrg/stremio-desktop-v5/tree/master/docs)” folder in this repository for setup instructions and additional information.
## ⚠️ **Disclaimer**
This project is not affiliated with **Stremio** in any way.
This fork is provided solely for educational and lawful use. **It does not support piracy or any form of copyright infringement.**
It is the users responsibility to ensure that any content accessed is fully compliant with the DMCA and all applicable copyright laws.
The project maintainers do not condone or support any illegal activities.
## 🤝 **Support Development**
If you enjoy this project and want to support further development, consider [buying me a coffee](https://ko-fi.com/zaarrg). Your support means a lot! ☕
<p align="center">
<a href="https://ko-fi.com/zaarrg">
<img src="https://img.shields.io/badge/Support%20me%20on%20Ko--fi-grey?style=for-the-badge&logo=ko-fi&logoColor=white" alt="Support me on Ko-fi">
</a>
</p>
<p align="center">
<strong>⭐ Made with ❤️ by <a href="https://github.com/Zaarrg">Zaarrg</a></strong>
</p>