Files
m3u8dl/m3u8downloaderd/README.md
T
2026-09-26 14:24:05 +08:00

47 lines
1.4 KiB
Markdown

# m3u8downloaderd
`m3u8downloaderd` is an in-memory local-network web interface for the adjacent
`N_m3u8DL_py` package. It requires Python 3.10+ and a system `ffmpeg`.
## Docker
From the repository root, start the service and build its image when needed:
```bash
docker-compose up
```
Open `http://127.0.0.1:8000`. Downloaded files are written to the repository's
`downloads/` directory. Use `docker-compose down` to stop the service.
Install both local packages into the same environment:
```bash
python -m pip install -e ./N_m3u8DL_py -e ./m3u8downloaderd
```
Start the service:
```bash
python -m m3u8downloaderd \
--host 0.0.0.0 \
--port 8000 \
--download-root /tmp \
--max-active-downloads 2
```
The service exposes no authentication. Use it only on a trusted network. The
folder chooser is restricted to `--download-root` and its descendants.
Tasks, progress, history, and settings exist only while the process is running;
restarting the service clears them. Downloaded media files remain on disk.
`--max-active-downloads` sets the initial video concurrency. It can be changed
while the service is running from the Settings tab, with a supported range of
1 to 32 videos. Runtime logs are available in the Log tab and remain in memory
only.
Run tests from the repository root:
```bash
PYTHONPATH=N_m3u8DL_py/src:m3u8downloaderd/src python -m pytest m3u8downloaderd/tests
```