ffmpegfyMe is a Dockerized Python CLI tool for downloading streaming media (e.g. .m3u8) using ffmpeg.
It offers interactive or batch downloading, progress tracking, retry logic, and state persistence.
- Stream download using
ffmpeg - Manual or automatic batch mode
- Progress tracking per batch
- Retry logic and skip for already-downloaded files
- Persistent state across runs
- Docker + Taskfile support
- Input via versioned JSON list file
ffmpegfyMe/
├── ffmpegfyMe.py # Main CLI script
├── docker/
│ └── Dockerfile # ffmpeg + Python base image
├── docker-compose.yml # Compose service: ffmpegfy-me
├── Taskfile.yml # Task runner integration
├── .gitignore
├── requirements.txt
├── in/
│ ├── stream-list.json # Versioned input list
│ └── .gitkeep
├── out/
│ └── .gitkeep
└── progress/
└── .gitkeepExample: in/stream-list.json
[
{
"url": "https://cdn.example.com/video1.m3u8",
"output": "video1.mp4"
}
]task docker:buildtask ffmpegfy:run- Python 3.11+
ffmpeginstalled in container- Docker + Compose plugin
- Taskfile (https://taskfile.dev)
This project is licensed under the MIT License. See LICENSE for details.
Name: Aymen FNAYOU
GitHub: https://github.com/fnayou