Skip to main content

Download videos or extract audio from YouTube, Instagram, Facebook, TikTok, X (Twitter), and more — easily and fast.

Project description

Perfect — I’ve updated your README to fully match your latest __main__.py (v1.3.5) and added complete playlist support documentation without removing any existing features. This is 100% copy-paste ready


🎬 ytmagic

ytmagic is a powerful yet simple command-line tool that lets anyone download videos or extract audio from YouTube, Instagram, Facebook, TikTok, X, and more using yt-dlp — no technical knowledge needed.

It works on Linux, macOS, and Windows.


🧠 What Can It Do?

  • ✅ Download one or multiple videos at once in best available quality
  • 🎧 Convert and download videos as audio-only (MP3)
  • 📥 Choose specific video quality like 360p, 480p, 720p, 1080p, or best
  • 📂 Choose your own download location or save automatically to ~/Downloads
  • 🔁 Resume interrupted downloads
  • 📊 Show all available qualities/formats for one or more links
  • 📃 Download full playlists or multiple playlists at once
  • 🎵 Convert entire playlists to MP3 automatically

🔧 Installation

Make sure you have Python 3.7+, ffmpeg, and pip or pipx installed.

✅ Install with pipx (Recommended)

pipx install ytmagic

Or with pip:

pip install ytmagic

🧪 Local Testing (Developer Mode)

git clone https://github.com/owais-shafi/YTMAGIC.git
cd ytmagic
pipx install --force --editable .

🔁 Upgrade to Latest Version

Recommended

pipx upgrade ytmagic

Or:

pip install --upgrade ytmagic

✅ Now you can use the ytmagic or yt command from anywhere in your terminal.


📦 Dependencies

To convert videos to MP3 (audio-only mode), ffmpeg must be installed.

✅ Install ffmpeg

  • Installable on any Linux distributions using their respective package managers

  • Linux (Debian/Ubuntu):

    sudo apt install ffmpeg
    
  • Linux (Arch):

    sudo pacman -S ffmpeg
    
  • macOS (Homebrew):

    brew install ffmpeg
    
  • Windows (Chocolatey):

    choco install ffmpeg
    

⚙️ Command-Line Options

Option Description
urls (positional) One or more video or playlist URLs
-q, --quality Video quality: 360, 480, 720, 1080, or best (default: best)
-p, --path Set the download path (default: system Downloads folder)
-a, --audio Download audio-only and convert to MP3
-f, --formats Show available qualities/formats
-r, --resume Resume interrupted downloads
-pl, --playlist Enable playlist download mode
-v, --version Show ytmagic version
-h, --help Display help information

🎯 How to Use

Basic command format:

yt [options] [URL1 ... URLn]

📌 Examples

1) Show the installed version

yt -v

2) Download a single video (best quality)

yt URL

3) Download multiple videos (best quality)

yt URL1 URL2 URL3

4) Download a full playlist or multiple playlists (best quality)

yt --playlist PLAYLIST_URL1 PLAYLIST_URL2

or

yt -pl PLAYLIST_URL1 PLAYLIST_URL2

5) Convert and download to MP3 (best audio quality)

yt -a URL1 URL2 URL3

6) Convert a full playlist (or multiple) to MP3

yt --playlist -a PLAYLIST_URL1 PLAYLIST_URL2

or

yt -pl -a PLAYLIST_URL1 PLAYLIST_URL2

7) Choose video quality

yt -q 720 URL
yt -q 360 URL1 URL2
yt -q 480 -pl PLAYLIST_URL1 PLAYLIST_URL2

8) Set a custom download path

yt -p /path/to/folder URL1 URL2
yt -a -p /path/to/folder URL1 URL2
yt -a -p ~/Music URL1 URL2
yt -pl -p ~/Videos PLAYLIST_URL1 PLAYLIST_URL2

9) Show all available formats & qualities

yt -f URL

10) Resume an interrupted download

yt -r URL1 URL2

📂 Default Output Folder

If no path is given using -p, ytmagic saves all downloads to:

~/Downloads

(On Windows, this maps automatically to your system Downloads folder)


💡 Tips

  • Combine options freely:
yt -a -p ~/Music URL1 URL2
  • Download multiple 720p videos:
yt -q 720 -p ~/Videos URL1 URL2
  • Check formats before downloading:
yt -f URL1 URL2
  • Resume large interrupted downloads:
yt -r URL1 URL2 URL3
  • Convert a full playlist to MP3:
yt -pl -a PLAYLIST_URL

👨‍🔧 Built With


📜 License

MIT License — free for personal or commercial use.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ytmagic-1.tar.gz (6.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ytmagic-1-py3-none-any.whl (7.0 kB view details)

Uploaded Python 3

File details

Details for the file ytmagic-1.tar.gz.

File metadata

  • Download URL: ytmagic-1.tar.gz
  • Upload date:
  • Size: 6.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for ytmagic-1.tar.gz
Algorithm Hash digest
SHA256 c4cf3b655668bea257800971df57ab1315945aac1303b0862b5b0a3b4c7b5fc4
MD5 5e39286559b8db7848c95a4e9bd7c079
BLAKE2b-256 721bf3abec2da5d56504067496a25fdf1e55c9b1a29b3f5a80d4274fc623f1b9

See more details on using hashes here.

File details

Details for the file ytmagic-1-py3-none-any.whl.

File metadata

  • Download URL: ytmagic-1-py3-none-any.whl
  • Upload date:
  • Size: 7.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for ytmagic-1-py3-none-any.whl
Algorithm Hash digest
SHA256 4346d26b7f4da08a207f7430aeb9f9cef780a1acb180fa8c0f835b216f04df02
MD5 71af6694c787860c1b0ece528989f880
BLAKE2b-256 ef88602d9020a0198de5a2306d0a69bac58b69c20eaf932e7f42a9a4d4f28bb0

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page