Requirements
What the apps run on, mpv and ffmpeg for the terminal app, Rust and cmake to build it, and a terminal with a graphics protocol for cover art.
The apps
Section titled “The apps”| Mac | macOS 26 or later, on Apple silicon |
| iPhone and iPad | iOS or iPadOS 26 or later, and AltStore or SideStore to install |
| Android | Android 15 or later, on 64-bit ARM |
| Android TV | Android TV or Google TV 11 or later, on 32-bit or 64-bit ARM |
| Windows | Windows 10 version 2004 or later, on x64 or Arm64 |
| Linux | x86-64 or ARM64 with glibc 2.41 or newer: Ubuntu 25.04 or later (including 26.04 LTS), Fedora 42 or later, Debian 13. Not Ubuntu 24.04 |
The apps have mpv built in and need nothing else installed. See installation for the first start on each.
The terminal app
Section titled “The terminal app”A prebuilt install needs only mpv and ffmpeg. The .deb pulls both in. Elsewhere, install them
with brew install mpv ffmpeg, winget install shinchiro.mpv Gyan.FFmpeg, or your distro’s
packages.
The Linux builds need glibc 2.28 or newer, which Debian 10, Ubuntu 20.04, RHEL 8 and every later release have. They do not run on musl distros such as Alpine.
mpv does all playback, over JSON IPC. anistream brings its own controls, thumbnails and shaders, so a stock mpv is enough. The player interface, with the skip button, Up Next, menus and thumbnails, needs mpv 0.36 or newer. Older versions play with mpv’s own controls; Ubuntu 24.04 ships 0.37 and Debian 12 ships 0.35.
ffmpeg remuxes downloads and handles their subtitles.
Building from source
Section titled “Building from source”Building also needs Rust, cmake and a C toolchain, and NASM on Windows:
brew install mpv ffmpeg cmake # cmake is for wreq's BoringSSLrustup toolchain install 1.99.1 # pinned by rust-toolchain.tomlsudo apt install mpv ffmpeg cmake build-essential pkg-config # Debian / Ubuntusudo dnf install mpv ffmpeg cmake gcc-c++ # Fedorasudo pacman -S mpv ffmpeg cmake base-devel # Archwinget install --id Rustlang.Rustupwinget install --id Kitware.CMakewinget install --id NASM.NASMwinget install --id Gyan.FFmpegwinget install --id shinchiro.mpvwinget install --id Microsoft.VisualStudio.2022.BuildToolsNASM and the MSVC build tools are extra on Windows because the torrent stack compiles C and assembles its own crypto primitives. See installation for the full walkthrough.
cmake builds BoringSSL, which anistream’s HTTP client uses to match a browser’s TLS handshake,
since some hosts answer differently depending on the client that connects. Rust 1.99.1 is pinned
by rust-toolchain.toml, so rustup picks it up inside the repo. To build
plugins, also run rustup target add wasm32-wasip2.
Terminal emulators
Section titled “Terminal emulators”Cover art looks best in a terminal with a graphics protocol, such as Ghostty, Kitty, iTerm2 or WezTerm. It renders as images over the Kitty, Sixel or iTerm2 protocols, and falls back to Unicode halfblocks elsewhere. On Windows, WezTerm is one of them.
anistream --doctor reports what your terminal supports, which mpv you have and which config it
reads, and, once the torrent source is on, the state of the VPN guard and your VPN’s kill switch.