MediaRiffle


MediaRiffle streams your own video library to a browser or a Chromecast. It scans folders of TV shows and movies and plays each file the cheapest way the viewer's browser allows. It is the successor to the 2014 Tongue project, which relied on ffserver and Flash and could no longer be maintained.

Project Link: github.com/TechIdiots-LLC/mediariffle | GitLab

How It Plays Your Files

Direct Files the browser already plays (MP4 with H.264/AAC, WebM) are sent as they are, with normal seeking.

Remux H.264 video in other containers (MKV, AVI and so on) is copied into an HLS stream. Only the audio is converted when it has to be, so CPU use is very low.

Transcode Anything else (HEVC, 10-bit, MPEG-4) is converted to H.264 on the fly. Hardware encoding is supported through NVENC, Quick Sync and VA-API.

Key Features

Security

There is no open sign-up. The first visit creates the admin account, and everyone else joins through a one-time invite link. Passwords are hashed by ASP.NET Core Identity, sign-ins are rate limited, cookies are HttpOnly and Secure, and ffmpeg is never started through a shell.

Running It

MediaRiffle is built on ASP.NET Core and runs on Ubuntu 24.04 (.deb package) or Windows (service installer or IIS), for x64 and arm64. Installs from the package update themselves from the admin page. Each release includes the installers, and the repository's documentation covers reverse proxy setup and media on a file server.

Advertisement