YTDLP-NG is a user-friendly, cross-platform graphical user interface (GUI) for the powerful yt-dlp command-line tool. It unlocks yt-dlp's most valuable features, allowing anyone to easily download the highest quality video and audio from the web without needing to touch a terminal.
This project was created with significant assistance from an AI Language Model, demonstrating a collaborative approach to building practical software.
This project does NOT distribute the YT-DLP program! You will need to secure that piece of software yourself, but thats easily done from official yt-dlp repository.
Modern streaming sites like YouTube often serve the highest resolutions (e.g., 4K, 8K) as separate video-only and audio-only streams. YTDLP-NG's core feature is its ability to let you visually select the best video stream and the best audio stream and merge them together on-the-fly into a single, perfect-quality file. No more compromising with lower-quality, pre-packaged downloads.
- Custom Video/Audio Merging: Select a high-resolution, high-framerate video-only stream and a high-bitrate audio-only stream. With one click, YTDLP-NG directs
yt-dlpto download both and merge them into a single file. - Detailed Format Listing: Fetches and clearly displays all available formats, labeling them as
Video Only,Audio Only, orVideo+Audiofor easy identification. Details include resolution, FPS, codecs, extension, and filesize. - Simple, Intuitive GUI: A clean interface built with Tkinter that makes the download process straightforward.
- Standard Downloads: For simpler cases, you can still select any pre-merged format or download multiple streams as separate files.
- MP3 Audio Extraction: A dedicated "Download Best Audio (MP3)" button grabs the highest quality audio available and converts it to MP3.
- Persistent Configuration: Saves your
yt-dlpexecutable path and preferred download directory, so you only have to set them once. - Cross-Platform: Built with Python, it runs on Linux, Windows, and macOS.
- Real-time Status Updates: A status bar provides clear feedback on fetching, downloading, merging, and any errors.
- Threaded for Responsiveness: All network operations run in the background, so the application never freezes while working.
- Python 3: You must have Python 3 installed. Tkinter is usually included, but on some Linux distros, you may need to install it (e.g.,
sudo apt-get install python3-tk). yt-dlpExecutable:- Download the latest
yt-dlpexecutable for your OS from the official yt-dlp repository. - On Linux/macOS, make it executable (
chmod +x yt-dlp_linux).
- Download the latest
ffmpeg(Essential for Merging):- To merge video and audio streams,
ffmpegis required. - Download
ffmpegfrom ffmpeg.org. - Ensure the
ffmpegexecutable is placed either in your system's PATH or in the same directory as youryt-dlpexecutable soYTDLP-NGcan find it automatically.
- To merge video and audio streams,
-
Save & Run: Save the Python script as
ytdlpng.pyand run it from your terminal:python3 ytdlpng.py. Alternative you can double click one of the release binarys. (Linux: AppImage, Windows: .MSI Installer) -
Initial Setup:
- The first time you run the app, click "Browse" to select your
yt-dlpexecutable. - Set your preferred "Download Directory". These settings are saved automatically.
- The first time you run the app, click "Browse" to select your
-
Fetch Video Information:
- Paste a YouTube URL into the input field and click "Fetch Formats".
- The listbox will populate with all available streams.
This is the primary feature of YTDLP-NG.
-
Identify Streams: Look through the list for the streams labeled
[Video Only]and[Audio Only]. -
Select Streams: Click on the Audio Only stream that meets your needs, and Click on the Video-Only stream that offers the video features you are looking for (Max Resolution) to select:
- The single best
[Video Only]stream you want (e.g., the one with the highest resolution). - The single best
[Audio Only]stream you want (e.g., the one with the highest bitrate). - You should have exactly two items selected.
- The single best
-
Merge and Download: Click the "Custom Video+Audio Merge (MP4)" option. The application will download both parts and
ffmpegwill merge them into a high-quality MP4 file in your download directory.
- Select Format(s): Click on any number of formats you wish to download as they are.
- Download As Is: Click the "Select Format(s) from List " option. Each selected format will be downloaded as a separate file. The filename will include the format ID to prevent overwrites (e.g.,
MyVideo.f137.mp4).
- Download MP3: Simply click the "Audio Only (best, mp3)" option. No selection is needed. This will download and convert the best audio available into an MP3 file.
