How spoonnewman/ytmp3 works
ytmp3 is a cross-platform desktop and CLI utility that downloads YouTube audio and saves it as MP3 locally. The GUI accepts multiple links, output folder, quality, and playlist preference, then runs downloads in a background worker with progress/log events; the CLI offers URL arguments or interactive input. Both invoke yt-dlp, which uses ffmpeg for extraction/conversion, and save files to the chosen folder. The platform folders contain self-contained copies; the README identifies core/ as shared source. GUI excerpts are partial, so the graph omits uncertain internal progress-event details.
Main entry points: ytmp3.py CLI app · ytmp3_gui.py Download worker · ytdlp_common.py Runtime helpers
Components 9
Download runtime
- Download worker
core/ytmp3_gui.py - Runtime helpers
core/ytdlp_common.py
External systems
- yt-dlp
- ffmpeg
- YouTube
- Local MP3 files
Other components
- User
Connections 12
- User → GUI app: enters links
- GUI app → Download worker: starts worker
- Download worker → Runtime helpers: resolves tools
- Download worker → yt-dlp: runs download
- User → CLI app: provides URLs
- CLI app → Runtime helpers: resolves tools
- CLI app → yt-dlp: runs download
- yt-dlp → YouTube: downloads media
- yt-dlp → ffmpeg: extracts audio
- yt-dlp → Local MP3 files: writes MP3
- User → CLI app: sets quality and folder
- User → GUI app: sets options