Skip to content

GUI music downloader using yt-dlp. Audio files are tagged and low-quality cover images are AI upscaled.

License

Notifications You must be signed in to change notification settings

JamesPCVR/MusiGui

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

What is MusiGui?

Pronounced myou-zi-goo-ee, it is a GUI wrapper around yt-dlp and optionally provides automated access to AI upscalers, including RealSR and Waifu2x.

dark theme preview

Light and Midnight themes light theme preview midnight theme preview

Install

The easiest way to get up and running is to run the prebuilt executable. Alternatively, you can run this program from source, or build it yourself.

yt-dlp requires ffmpeg, follow this guide to install it if you haven't already.

(Not required) I would also recommend to download mp3tag. It is really handy for editing and managing a library of .mp3 files.

Running prebuilt executable

Download the latest release, unzip the contents, and run MusiGui.exe

Running from source

Dependencies

json, typing, os, sys, subprocess,logging, time, shutil, re, ctypes, webbrowser are included in the python standard library.

You can easily install yt_dlp, numpy, eyed3, cv2, showinfm, pyperclip, concurrent_log_handler using pip.

py -m pip install yt-dlp
py -m pip install numpy
py -m pip install opencv-python
py -m pip install PySide6
py -m pip install eyed3
py -m pip install showinfm
py -m pip install pyperclip
py -m pip install concurrent_log_handler

The prefix py -m is only required for windows systems.

Run main script

Then you just need to run main.py.

First use

  • Pick a download folder, this is the working directory for this application, it should be seperate from anything else.
  • Download any (or all) of the supported models and place it in the directory ai folder. Its subfolder should be named <model>-ncnn-vulkan.

Typical use

  • Add URLs to the text box in the bottom left, they are seperated with a newline (<enter>). The URLs can be for any media and only the audio is downloaded. The URLs can be from any site supported by yt-dlp.
  • Once you've added all the URLs you want, hit the download button in the bottom right to download the files one-by-one. The program will also download the cover art for each item.
  • Cover are will be scaled to fit the selected size unless an AI model is selected, where if the image is too small, it will be upscaled first and then shrunk down.

Hidden settings

If you want to restore default settings, delete the config folder. Musigui will recreate it with defaults.

Select the theme by modifying assets\themes.json, change the value of "selected": "light" to one of "light", "dark" or "midnight". MusiGui will fall back to light mode if it cannot find the selected theme, failing that it uses the system native theme.

Change the AI upscaler directory by modifying config\image.json, it is created on first run. Update the value of "ai_directory" using double backslashes "\\" instead of single slashes.

Supported AI models

Be sure to download at least one of these and put it in the ai folder.

Model Download License
realsr-ncnn-vulkan MIT
waifu2x-ncnn-vulkan MIT
srmd-ncnn-vulkan MIT

Credits

supported models - nihui and many others

License

MIT

About

GUI music downloader using yt-dlp. Audio files are tagged and low-quality cover images are AI upscaled.

Topics

Resources

License

Stars

Watchers

Forks