This projects is going to be divided in two parts. A web application and a desktop application.
You will be able to download videos in mp4 format in the highest or lower quality and mp3 audio format from youtube
and yes, it works also for very long videos of one hour!!!.
The desktop application will be developed with tkinter, so you can download the application in the part of releases ready to be executed in your
computer without the neccesity to download python. You just need to download the exe file and its going to be ready to be downloaded.
ITS IMPORTANT TO MENTION THAT FOR NOW BECAUSE THE MOVIEPY LIBRARY DOESNT WORK FINE WITH PYINSTALLER THERE IS NOT GOING TO BE A EXE FILE FOR NOW
JUST UNTIL THIS BUG IS FIXED BY THE CREATOR OF MOVIEPY LIBRARY. MEANWHILE YOU CAN TRY BY YOURSELF AND PLEASE IF YOU HAVE SUCESS TELL WHAT YOU DO.
The command in order to create the exe file with pyinstaller is (Please check firts the considerations in Development mode and Production mode):
pyinstaller --noconfirm --onefile --windowed --add-data "D:/github projects/DownYoutube/DesktopApp/moviepy;moviepy/" --add-data "./descargaryt.ico;." --name "ytDownloader" --icon "./descargaryt.ico" "./youtube.py"
If we want to create the executable file using pyinstaller in this specific case that we use pyinstaller for the creation of the same exe file we will need to include in the --add-data pyinstaller flag the complete directory of the moviepy library so the program will be executed correctly.
The pyinstaller command above includes this folder, you should include the path in which you moviepy library is stored in your PC.
If you want to run the code not in an exe mode then comment the next code line below that will appear in the code of the youtube.py script:
os.environ["IMAGEIO_FFMPEG_EXE"]= "/usr/bin/ffmpeg"
If you want to run the program through the exe file then before executing the pyinstaller command you need to uncomment the next code line below in the same part that the code line is en the script:
os.environ["IMAGEIO_FFMPEG_EXE"]= "/usr/bin/ffmpeg"
This application will be developed with the time and will be hosted in a server only if I receive the enough funds to maintain that server.
This project is an opensource and free project. That doesn't mean we don't need any money.
Please consider a donation to help us cover the ongoing costs like keep improving functionality in this app. If we receive enough donations we might even be able to free up some working hours and spend some extra time improving the platform core and adding more functionalities.
To donate, please follow this link.