Skip to main content

Terminal-based YouTube video/audio downloader using yt-dlp and ffmpeg

Project description

YTConverter™


YTConverter™ is a Python-based project developed by kaifcodec designed to provide a robust tool for converting YouTube videos into various formats. This tool simplifies the process of downloading and converting videos from YouTube.


file_000000006dfc61fb9c9a2cb865da0157

Check the screenshots below👇


Requirements

  • Python 3.x
  • Required Python libraries (listed in requirements.txt)
  • ffmpeg & yt-dlp binary

Install pypi Package (For Any)


  • You can clone the repository or manually install ffmpeg by following no.2 commands 👇
  1. Clone the repository and auto-setup the required binaries by running install.sh

    git clone https://github.com/kaifcodec/ytconverter.git
    cd ytconverter/standalone/
    ./install.sh
    
  • Or else you can manually install ffmpeg by following below commands and ignore the repository cloning.
  1. If install.sh fails try installing ffmpeg manually by following below commands

    sudo apt install ffmpeg # For Linux
    
    pkg install ffmpeg # For Termux
    
  2. After completion of setup install ytconverter pypi package and run

    pip install ytconverter
    ytconverter -S
    
  • ⚠️ You need to manually install ffmpeg for windows or you can try standalone/install.bat

  • ⚠️ However usage of standalone ytconverter.py is recommended⚠️
  • Pypi package still in beta, Follow the below process 👇👇

Installation For Linux (Ubuntu/Debian/Fedora/Arch):

  1. Install Python:
    sudo apt update && sudo apt install python3 python3-pip -y  # For Debian/Ubuntu
    
    sudo dnf install python3 python3-pip  # For Fedora
    
    sudo pacman -S python python-pip  # For Arch
    
  2. Install Git and Curl:
    sudo apt install git -y  # Debian/Ubuntu
    
  3. Clone the repository:
    git clone https://github.com/kaifcodec/ytconverter.git
    cd ytconverter/standalone/
    
  4. Install required Python libraries:
    pip3 install -r requirements.txt
    

Installation (Termux/Linux-distros)

# Update Termux and install Python
pkg update -y && pkg upgrade -y && pkg install python

# Install Git and Curl
pkg install git

# Clone the repository
git clone https://github.com/kaifcodec/ytconverter.git

# Grant storage permission
termux-setup-storage

# Navigate to the project directory
cd ytconverter/standalone/

# Install dependencies
pip install -r requirements.txt

Installation (Windows)

  1. Download or clone the repository:

    git clone https://github.com/kaifcodec/ytconverter.git
    cd ytconverter/standalone/
    
  2. Open Command Prompt and run the installer batch file ytconverter/standalone/ directory:

install.bat
  1. After installation move installed yt-dlp.exe and ffmpeg binaries to your PATH directory, so that the script can access it globally.

  2. After installation, start the program:

python3 ytconverter.py

Usage

  1. Run the main script to start the conversion process:
    python3 ytconverter.py
    
  2. Follow the on-screen instructions to input the YouTube URL and choose the desired output format.

Update In Linux & Termux (Recommended frequently)

  1. To update the ytconverter repository, run:
    ./standalone/update.sh # It also keeps your yt-dlp up-to-date 
    
  2. To update the ytconverter binary just simply run the below command on your terminal:
    ytconverter -U
    

Tested on

  • Linux
  • Termux
  • Ubuntu
  • MacOs
  • Windows 10/11

Screenshots

---

Contact for any error or issue:

Features

  • Video Downloading: Fetch videos directly from YouTube.
  • Audio Downloading: Downloads audio of any video with wide range of bitrate selection.
  • Multiple video download: Now you can download multiple videos using the tool, just paste the urls one by one
  • Format Conversion: Convert downloaded videos into different formats such as MP3, MP4, etc.
  • Metadata Handling: Extract and manage metadata associated with YouTube videos.

Contributing

Contributions, issues, and feature requests are welcome!

Please take a moment to read our CONTRIBUTING.md guide for details on how to help make YTConverter™ better.

Feel free to open a pull request or submit an issue.

Disclaimer ⚠⚠

  • We do ask you for your Name and Contact information at the beginning of the tool for update-related notices, but if you don't want to disclose those creds, you can leave those fields blank
  • We also collect some basic information about the usage statistics and the user's Public IP, but we assure you that this data is not kept more than 48 hours
  • We respect your privacy. Any basic info this tool collects (like usage data) is handled securely and never shared. No creepy tracking—just good software.
  • Thank you 🌹 and Keep supporting ❤

License

This project is licensed under the MIT License. See the LICENSE file for details.

Contact

For any questions or feedback, please open an issue or contact kaifcodec.


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

ytconverter-4.0.1.0.0.0.2.7.tar.gz (15.6 kB view details)

Uploaded Source

Built Distribution

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

ytconverter-4.0.1.0.0.0.2.7-py3-none-any.whl (21.0 kB view details)

Uploaded Python 3

File details

Details for the file ytconverter-4.0.1.0.0.0.2.7.tar.gz.

File metadata

  • Download URL: ytconverter-4.0.1.0.0.0.2.7.tar.gz
  • Upload date:
  • Size: 15.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-requests/2.32.4

File hashes

Hashes for ytconverter-4.0.1.0.0.0.2.7.tar.gz
Algorithm Hash digest
SHA256 d320b59ecf173975778752a2109bdd606864bc7fc91b163525afa5e9e916bbfd
MD5 d0c984769c40577bc1e0fa8517acacbc
BLAKE2b-256 8e64d21ba833f98a848fb9aecd1cd0c0e30043cf0040b68bc10fdb1ef20fb108

See more details on using hashes here.

File details

Details for the file ytconverter-4.0.1.0.0.0.2.7-py3-none-any.whl.

File metadata

File hashes

Hashes for ytconverter-4.0.1.0.0.0.2.7-py3-none-any.whl
Algorithm Hash digest
SHA256 a768f1571c9733f8e5246b239057c9ad228eb0d7c0b60f9499a8f179dacb3358
MD5 763b3baf47e6fdd68608610045019bc3
BLAKE2b-256 3180de710ec075961793ca7989336006cccb67bffc9c1f0956c5bb86cd27c548

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