Skip to content

Releases: steelbrain/ffmpeg-over-ip

v5: Tunnel file I/O over TCP — no shared filesystem required

10 Mar 10:25

Choose a tag to compare

What's new

v5 completely replaces the shared filesystem architecture from v4. The server now runs a patched ffmpeg that tunnels all file I/O back to the client over TCP. No NFS, no SMB, no shared mounts — just one TCP port.

Highlights

  • No shared filesystem — file reads and writes are tunneled over the connection. No more NFS/SMB setup, path mapping, or mount maintenance.
  • Pre-built ffmpeg binaries — releases include patched ffmpeg and ffprobe with broad hardware acceleration support (NVENC, QSV, VAAPI, AMF, VideoToolbox, and more), built on jellyfin-ffmpeg 7.1.3. No need to install ffmpeg separately.
  • Cross-platform — Linux x86_64/arm64, macOS arm64/x86_64, Windows x86_64. Windows arm64 client only.
  • Unix domain sockets — use unix:/path for same-machine setups without TCP overhead.
  • JSONC config// and /* */ comments, trailing commas. Config file search across 8 locations.
  • HMAC-SHA256 authentication — every command is signed with a shared secret.

Getting started

See the Quick Start guide.

Upgrading from v4

See the upgrade guide for breaking changes and a migration checklist.

Supported platforms

Client Server + ffmpeg
Linux x86_64
Linux arm64
macOS arm64
macOS x86_64
Windows x86_64

v4.0.0-alpha1 - Rewrite in Golang

22 Mar 03:42

Choose a tag to compare

This is the alpha release of the Golang rewrite, it features the following

  • Support for unix sockets
  • Support for reading config path from environment variables
  • [INTERNAL] Much less memory usage, smaller binary size

v3.0.1

22 Mar 04:20

Choose a tag to compare

  • Meta update adding homepage to manifest

v3.0.0

04 Oct 17:26

Choose a tag to compare

  • Change the lookup order of the configuration files (it looks for specific paths before general paths.)
    Use --debug-print-search-paths to see the paths it will look for the configuration files.

Note: The releases are generated from the client and server javascript files using pkg. We may be able to use Node.js Single-App-Executables (SEA) in the future.

v2.0.0

04 Oct 17:22
9c5d555

Choose a tag to compare

  • Move dependencies to devDependencies since they are already bundled
  • Rename pathMappings to rewrites
  • Register both ffmpeg-over-ip-server and ffmpeg-over-ip-client as npm executables
  • Do not search for config file in same directory as executable (this messes up pkg etc)

v1.0.0

04 Oct 17:22
35b19eb

Choose a tag to compare

  • Initial release