Hello there, everyone.
I have been wanting to revisit and update some of my projects (including some past projects I have ditched over the years) to make my software up to date and keep working on new stuff at the same time. I know some of you remember about MusicDL, the application I have coded to play and download music from some popular websites such as Youtube. As you remember in this blog post, when i released MusicDl, I wrote that I just made it for learning a few interesting concepts related to Web scraping (or how to extract, thanks to a set of libraries, the info you want from a website).
Unfortunately the time was moving and I had no motivation to keep working in the project due to several reasons. So MusicDL kept out of date, while several problems arised in the executables of the project (for example, windows Defender falsely identifying the main executable as a virus) and I had neither time nor motivation to fix those. The last MusicDL version released, v0.6, was posted here about a year ago.
But today hopefully the story is going to be different, due to many changes that happened during the last couple of months. Basically now I am going to build the application thanks to a Continuous integration system, which will be able to provide me with easier, faster and reproducible ways to build all my projects. This means that the process of building a new version of something i develop can be performed by an external system, and I can focus more in writing and testing code and features, and less time in building the executables.
So, here is the new version of MusicDL, which has received many changes in order to update the core functionality of the application. First of all, MusicDL will not be versioned as before. As MusicDL depends greatly on Youtube-DL and I need to update the library every so often, MusicDL will be generated from the source code every time there are relevant changes happening. These changes might include new features, bugfixes or an update to a newest Youtube-DL or other module. If you have used TWBlue or Socializer, MusicDL will have alpha or snapshot releases and not a stable one. That also means you will see the update notification more frequently than before, but you can safely skip the update if you don't consider it important.
This will allow the project to be active and in constant development, while updating all modules, especially Youtube-DL, to their latest version.
This project could not get back to life without the continuous support and feedback from several people. I wanted to take the time to say thanks to them, as they have helped me to gain the motivation to bring MusicDL back to life. First of all, thanks to Pamela; she has been helping me to rediscover the joy I have had when coding something for the only fun of doing it; she shown me that never is too late when it comes to overcome any situation or problem, and she's been an extremely patient and supportive girlfriend when I am not sure about what to do. Also, i wanted to thank some folks who also supported me a lot when I was thinking whether I should release this project or not. Thanks to Daria (who also translated the application in Russian), Ariel, Edgar, Luna, bolivia, Rona and all others I may have missed. Without their help, probably I wouldn't find the motivation to put this together.
Finally, here is the full changelog of this version. Take into account that this changelog will be updated every time there is a change in the source code. All new changes will be grouped monthly, so you will see all changes for august, september, october and so on.
- Application improvements:
- MusicDL no longer adds invalid characters when attempting to download a file.
- The application will have more updates, as it will b generated automatically when relevant changes take place in the code.
- There are hotkeys in many important controls (such as the search box and results).
- Updated russian and Spanish Translations.
- Added a new search mode for the service to retrieve the top rated tracks of a provided artist. The sintax is top://artist.
- In the settings dialog, you can control wether Albums, compilations and singles will be added when searching by artist (by using artist://...).
- When searching by artists, results that belong to an album will be numbered.
- Downloads will be tagged with title, album, artist and track number provided by tidal.
- It is possible to download an original version in high and low quality. Before, those versions were encoded to mp3 from an m4a file. Now the M4a file can be retrieved by using the checkbox in the tidal settings page.
- Fixed search algorithm for Youtube videos.
- Updated Youtube-Dl to the latest version of july 2020.
- re-added VK module. By default, this module searches up to 50 results but you can increase it up to 200 if needed from the services settings.
You can always get the latest version of MusicDL from the project downloads page. The documentation and public changelog will be updated in a couple of days, but the application should be still easy to be used. I hope you enjoy the project and will give me your feedback via here in the comments section, or by using the issue reporting feature within the application.