A command-line YouTube downloader with built-in audio/video format conversion
Project description
mmcli
mmcli is a command-line YouTube downloader with built-in format conversion. Give
it a video or playlist URL and it downloads the media, optionally converting it
to the audio or video format you choose. Playlists are detected automatically and
saved into a per-playlist folder. Requires Python 3.12+ and FFmpeg on your PATH.
Install
pip install mmcli-dl # or: pipx install mmcli-dl / uv tool install mmcli-dl
The installed command is mmcli. FFmpeg must be on your PATH for format conversion.
Command
mmcli <url> [--resolution RES] [--format FMT] [--output-dir DIR]
| Argument | Short | Description |
|---|---|---|
url |
YouTube video or playlist URL (required). | |
--resolution |
-r |
Video resolution, e.g. 720 or 720p. Ignored for audio formats. Default: highest available. |
--format |
-f |
Output format. An audio format (mp3, m4a, wav, ...) downloads audio only; a video format (mp4, mkv, webm, ...) converts the container. Default: keep the downloaded video as-is. |
--output-dir |
-o |
Directory to save into. Default: current directory. |
--version |
-v |
Print the version and exit. |
Examples:
mmcli "https://youtube.com/watch?v=..." # best-quality video
mmcli "https://youtube.com/watch?v=..." --resolution 720 # video at 720p
mmcli "https://youtube.com/watch?v=..." --format mp3 # audio only, as mp3
mmcli "https://youtube.com/watch?v=..." --format mkv # video, converted to mkv
mmcli "https://youtube.com/playlist?list=..." --format mp3 # whole playlist as mp3
mmcli "https://youtube.com/watch?v=..." --output-dir ~/Videos # choose the output directory
Supported --format values
An audio format downloads audio only; a video format downloads video and converts the container.
- Audio:
mp3,wav,flac,aac,m4a,ogg,oga,opus,wma,alac,amr,ac3,dts,eac3 - Video:
mp4,mkv,avi,mov,flv,webm,mpeg,mpg,ts,m2ts,ogv,3gp,3g2,vob,f4v,wmv,rm,rmvb
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file mmcli_dl-0.1.0b1.tar.gz.
File metadata
- Download URL: mmcli_dl-0.1.0b1.tar.gz
- Upload date:
- Size: 15.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b697201b41824cd35951b33d9fd47a6ef88e34bc0f0d075d038fc68b55514f29
|
|
| MD5 |
d7a230416ae91822cf30020fe1103644
|
|
| BLAKE2b-256 |
2e3f77bf044da9d40f9bf982d10ebe823530a7756f7290c444ed69afb7f33bb2
|
File details
Details for the file mmcli_dl-0.1.0b1-py3-none-any.whl.
File metadata
- Download URL: mmcli_dl-0.1.0b1-py3-none-any.whl
- Upload date:
- Size: 13.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6c6334a77e15322e5acf5994578417755f359fb5bd491677ff175b93ca3d7a3c
|
|
| MD5 |
1e640b7d136e4da36fcdbaaf262650ed
|
|
| BLAKE2b-256 |
a92fa9f7e14e10081d811cb96cb6ea18ee25992685710efee39018eb4979a98b
|