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
From PyPI (requires Python 3.12+):
pip install mmcli-dl # or: pipx install mmcli-dl / uv tool install mmcli-dl
Or download a standalone binary (no Python required) for your platform from the latest release — available for Linux, Windows, and macOS (x86_64 and arm64).
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
Metadata
Release files for mmcli-dl 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| mmcli_dl-0.1.1.tar.gz | 16.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| mmcli_dl-0.1.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 29.5 kB
Release files / mmcli_dl-0.1.1.tar.gz
| Download URL | mmcli_dl-0.1.1.tar.gz |
|---|---|
| Size | 16.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e89fd94215ecbf0ed97156c315d2c6f4e4c97f35ea60c7b418d1bd009f4b107a
|
|
BLAKE2b-256 checksum How to use checksums |
c111b19b3af538ffb976d9c1e82d3e697ea6740e46a0cc8b2ebc03772439ef0f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Release files / mmcli_dl-0.1.1-py3-none-any.whl
| Download URL | mmcli_dl-0.1.1-py3-none-any.whl |
|---|---|
| Size | 13.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
4075395580caaabc34369249d36938a5b3431322e5bc3facac1a24581fb7df0b
|
|
BLAKE2b-256 checksum How to use checksums |
14aefc0bea1465eba82f6834232c70221638d8f9c60fee23a76ebedfed03dde8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|