freepassport-c/README.md

54 lines
1.4 KiB
Markdown

# 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 code
- `media/` - channel video files
- `guide-ui.jpg` - visual reference used for proportions and palette
## Controls
- `Up` / `Down` - surf channels
- `Tab` - toggle guide
- `Esc` - exit guide or quit the app
## Build
Install development packages for SDL2, SDL2_ttf, and FFmpeg headers before building.
Typical Debian or Ubuntu packages:
```bash
sudo apt install build-essential libsdl2-dev libsdl2-ttf-dev libavformat-dev libavcodec-dev libswscale-dev libswresample-dev libavutil-dev
```
Then build and run:
```bash
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.mp4`
- `media/computers.mp4`
## Fonts
The UI tries `BigBlueTermPlus Nerd Font` first, then falls back to common Linux monospace fonts.