First post, by kahuna
- Rank
- Newbie
Hey VOGONS crew!
After a long journey driven by pure nostalgia and a lot of tinkering (with a little help from AI along the way!), I'm thrilled to share a project I've been working on: RetroStream
Remember the good old days of watching DivX/XviD movies, series and anime on your PC/laptop/Mac? That's the vibe I wanted to recreate, but with modern-encoded media.
I realize this is very niche, but at any rate, I wanted to share it with the retro community in case anyone else finds it useful.
What is it? RetroStream is a client-server proxy that lets your modern machine do the heavy lifting, transcoding H.264/HEVC video from a Plex Media Server into retro-friendly MPEG2 streams, which your retro machines can then play via MPlayer.
You can find the source code, installation instructions and screenshots on Codeberg: https://codeberg.org/jjmarcos/retrostream-py
I have included some down below.
Please, don't forget to take a look at the readme file as well as the build guides to know a little bit more!
For the impatient, here you can find the binary releases for different Operating Systems: https://codeberg.org/jjmarcos/retrostream-py/releases
It's been quite an adventure making this work across such a wide range of hardware and operating systems!
I've built two versions of the client to cover as much hardware as possible:
- Python 2 Client: Designed for Windows 98, Windows XP, and Mac OS X 10.4 Tiger. It runs on Python 2.5-2.7. It should also work on Windows ME, 2000 and macOS X Leopard (untested).
- Python 3 Client: For modern Windows, Linux and newer macOS.
Some features:
Plex Integration: You can browse your libraries, seasons and episodes directly from the your retro machine.
Transcoding: Uses NVENC (Nvidia) and QSV (Intel) on the server to handle the heavy lifting. If they're not available, it falls back to CPU-based transcoding.
Performance: Tested on everything from an Apple PowerMac G4 to a modern laptop as clients. On the server side, a Raspberry Pi 5 works, although a PC is faster.
I'm already thinking about expanding player support (mpv!), integrating Jellyfin, adding AMD Radeon GPU support, and of course, fixing bugs based on community feedback.
This is a hobbyist project, and I'm not a professional dev, so please use at your own discretion and expect some quirks! I'm eager to hear thoughts, bug reports, and suggestions from this amazing community.
Cheers!
Be free!