FreePassport-C Media Player is a low-dependency SDL2 + FFmpeg application that allows you to organize your media into a virtual cable guide with live-seeking channels.
| src | ||
| .gitignore | ||
| guide-ui.jpg | ||
| Makefile | ||
| README.md | ||
Passport-C Media Player
Passport-C Media Player is a low-dependency SDL2 + FFmpeg prototype that recreates the 2004-era Passport DCT cable guide with live-seeking channels.
Features
- Live-TV epoch clock based on
time(NULL) - 200 ms black-screen channel tuning delay
- Fullscreen and guide modes
- 5-row Passport-style guide with a 90-minute timeline
- Background decoder thread with a bounded frame queue
- Automatic channel discovery from
./media
Layout
src/- application, UI, channel scan, and playback codemedia/- channel video filesguide-ui.jpg- visual reference used for proportions and palette
Controls
Up/Down- surf channelsTab- toggle guideEsc- exit guide or quit the app
Build
Install development packages for SDL2, SDL2_ttf, and FFmpeg headers before building.
Typical Debian or Ubuntu packages:
sudo apt install build-essential libsdl2-dev libsdl2-ttf-dev libavformat-dev libavcodec-dev libswscale-dev libswresample-dev libavutil-dev
Then build and run:
make
./passport-c-media-player
Media
The player scans ./media for supported video files and converts filenames into channel names and current program titles.
Current sample channels:
media/reading.mp4media/computers.mp4
Fonts
The UI tries BigBlueTermPlus Nerd Font first, then falls back to common Linux monospace fonts.