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.
Install both local packages into the same environment:
python -m pip install -e ./N_m3u8DL_py -e ./m3u8downloaderd
Start the service:
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:
PYTHONPATH=N_m3u8DL_py/src:m3u8downloaderd/src python -m pytest m3u8downloaderd/tests