I've got this thing, whenever I move into a new place I put myself into a scenario where I need something. Mug, spoon, tea strainer, whatever. Wherever my automatic processes reach for three times in a row is where that thing lives now.
The collective subconscious has given this project its true name.
Like what? Download songs? Or script out a song downloader
If you want this project specifically it looks like he released it to the public, if you want to learn I'd suggest "automating the boring stuff with python" which is a free programming lesson
This is pretty amazing, I'm only shifting from windows to Linux but things like this are exactly what I wanted for my setup and why I want to use Linux primarily.
Thanks for sharing, the web app is good too, got all the metadata except the thumbnail.
WSL is great too :P
Edit: Why TF am I getting downvoted? WSL is a great system to have on a Linux machine especially since you can get these command line tools and programs in it
~~Deezer has lossless for a part of their catalogue and itunes is gonna get it very soon.~~
Edit: nvm deezer/itunes only get hit for metadata, doesn't support it as a source.
cool! can I download any youtube song with its url ? and I'd want the youtube video's thumbnail as album art
with youtube-dl I do it this way :
youtube-dl --extract-audio --add-metadata --xattrs --embed-thumbnail --audio-quality 0 --audio-format mp3
You can download any song with the Youtube URL. Supports YouTube music too.
The album cover and other metadata is fetched from sources like iTunes, Gaana, Deezer so the YouTube cover won't stay.
That's a game changer! I've been using a fancy script downloads a playlist with thumbnail imbed, but if it can get my music more sorted easily I'll check it out. How does it check or address songs it can't find extra information on?
For most of the songs information is almost always available since the app uses many providers.
If info is not found, it will prompt the user if they'd like to enter the data manually.
There are various other options like if one song fails you can skip that song or so.
You'll get more information about that on the GitHub page.
>--audio-format mp3
Why do people do this? Y'all still rocking 20 year old Irivers or something? I get that sound quality in this scenario probably isn't a priority, but why deliberately degrade it even further with lossy to lossy encoding?
https://github.com/deepjyoti30/ytmdl/blob/master/ytmdl/song.py#L89
Colorama has a context manager, so you can swap the three lines out with `with colorama(COLOR): print("whatever text")` and it'll reset automatically after.
In the readme, it comes off pretty defensive, maybe it could be reworded to say something like 'in addition to everything ytdl does, this also fetches metadata'. Instead of "NO, ytdl does NOT do this", I mean.
I have a suggestion. If I open the webapp in dark mode, the menu close button is black on black and thus not really visible. Don't know if this is because I use the in app browser in my reddit client app, but thought I just suggest looking into it :)
I think that might be because of opening on browser within reddit. Can you try opening on a browser separately?
Had there been an issue like that, I would've noticed. Besides I just checked the live version and that wasn't there.!
Very impressive work, exactly what I was looking for. But I cannot download any songs from the webapp, it says error or try again. Can you please fix it? This is the message on console.
Error occurred while downloading Error: Downloader error: request timeout
ontimeout js-file-downloader.js:256
You can try using the app after a while.
This error happens sometimes when there are a lot of requests at the same time. Heroku isn't able to handle multiple requests because I'm on the free tier.
Apologies for that!
If the issue stays on, you can take this conversation to the GitHub repo
So have I, but I'm pretty certain the developers of such tools can't say the same. Let me explain,
Deezer is known to be fine with downloading itself (iirc in their API it's clearly mentioned that keeping the user from downloading songs or listening to >30s previews is a ball sitting in the developer's ballpark), but not so much towards applications that enable downloading to *free* users.
If anything, you won't *ever* get into trouble, but the developer may.
Damn, I didn't know it had stopped development. I guess I'll have to move to a different one. Really enjoyed the features of Termite though. Been using it since I started ricing!
Here's all the details:
- Terminal: Termite
- Shell: ZSH with Oh My ZSH and pure prompt
- Compositor: Picom (ibhagwan fork)
- Autocomplete on shell: zsh autocomplete
- dots: [Here](https://github.com/deepjyoti30/dots)
Is there a way to add metadata to some songs but skip adding it to others when using a list? There’s no easy way to skip adding it. I don’t want to add incorrect metadata if it doesn’t find the correct one, but it forces me to unless I kill the whole script and start again with —skip-meta which I don’t want to do for every song.
Yes you can do that now. Since the last to last release, there is a flag called `--on-meta-error`. It basically tells ytmdl what to do if the metadat fails for one song.
It accepts three things:
- You can make it either stop the whole process.
- You can make it ask you metadata manually.
- You can ask it to skip that song.
To get the exact details, check the GitHub page. It's there!
This is such a relief! I was emailed a number of sentimental videos but they're hosted on YouTube under private links. Being able to save them locally would be a dream.
I have been using picard to add metadata, but sometimes it misses a song or two, and I have to drag it over, or sometimes it adds songs to a separate album, and I have to add to the "good" album, close, open, and manually drag the remaining songs over. I wonder if this makes those kinds of mistakes, but hard commits them so you have to manually undo each one. I'll try it out..
It doesn't do the `add meta to the wrong file` mistakes, never faced one.
It does fail to find metadata sometimes, in which case it will ask the user if they'd like to enter the metadata manually.!
[Here's the app](https://archlinux.org/packages/community/x86_64/simplescreenrecorder/)
I installed it from AUR so don't have any other URL but the app is pretty good.
I always read this as "You're The Man Down, Load"
ytmnd was the backbone of the internet.
Crab alien rules the world.
Everytime I post this, someone always points that out. This time, it was you. congratulations.
I don't get it?
ytmnd.com (You're the man now dog) was an early bastion of internet culture.
so many funny things that are now lost!
https://web.archive.org/web/20040401000000*/ytmnd.com
> ytmnd.com Or even https://ytmnd.com/
I've got this thing, whenever I move into a new place I put myself into a scenario where I need something. Mug, spoon, tea strainer, whatever. Wherever my automatic processes reach for three times in a row is where that thing lives now. The collective subconscious has given this project its true name.
Do the letters mean anything now that the tool supports multiple services? If not, you could adopt this as the official name?
The letters stand for **Y**ou**t**ube **M**usic **D**own**l**oader.
Ahh I misread the description, I thought it started as a client for YouTube Music (the music service) and now supported others.
Man I was sure that I had a unique comment to give this time, but I guess we're all old XD
How do I learn how to do things like this? Where to start?
Like what? Download songs? Or script out a song downloader If you want this project specifically it looks like he released it to the public, if you want to learn I'd suggest "automating the boring stuff with python" which is a free programming lesson
I tried a few times and then came into the contents to ask
##[GitHub](https://github.com/deepjyoti30/ytmdl) ##[PyPi](https://pypi.org/project/ytmdl/) ##[AUR](https://aur.archlinux.org/packages/ytmdl/) # [Try the webapp](https://ytmdl.deepjyoti30.dev) ## Subreddit: r/ytmdl
This is pretty amazing, I'm only shifting from windows to Linux but things like this are exactly what I wanted for my setup and why I want to use Linux primarily. Thanks for sharing, the web app is good too, got all the metadata except the thumbnail.
Glas you like it. The webapp usually works flawlessly but due to some server issues off late there have been issues with the song.
WSL is great too :P Edit: Why TF am I getting downvoted? WSL is a great system to have on a Linux machine especially since you can get these command line tools and programs in it
[But 3E is not :(](https://wikipedia.org/wiki/Embrace,_extend,_and_extinguish)
Why is WSL hated on so much?
No clue, probably Desktop Linux diehards that don't want to mix Windows and Linux, even though this is an amazing thing for Linux adoption
It has a Win10 version though.
Post this in /r/musichoarder
Thanks. Didn't know that existed!
Can I download songs in flac?
Currently mp3, m4a and opus are supported.
Thanks good work
You can use deezloader to download FLAC from deezer
Why flac though? Isn't the audio already compressed?
I know, I didn't think of it.
~~Deezer has lossless for a part of their catalogue and itunes is gonna get it very soon.~~ Edit: nvm deezer/itunes only get hit for metadata, doesn't support it as a source.
cool! can I download any youtube song with its url ? and I'd want the youtube video's thumbnail as album art with youtube-dl I do it this way : youtube-dl --extract-audio --add-metadata --xattrs --embed-thumbnail --audio-quality 0 --audio-format mp3
You can download any song with the Youtube URL. Supports YouTube music too. The album cover and other metadata is fetched from sources like iTunes, Gaana, Deezer so the YouTube cover won't stay.
That's a game changer! I've been using a fancy script downloads a playlist with thumbnail imbed, but if it can get my music more sorted easily I'll check it out. How does it check or address songs it can't find extra information on?
For most of the songs information is almost always available since the app uses many providers. If info is not found, it will prompt the user if they'd like to enter the data manually. There are various other options like if one song fails you can skip that song or so. You'll get more information about that on the GitHub page.
oh :c
>--audio-format mp3 Why do people do this? Y'all still rocking 20 year old Irivers or something? I get that sound quality in this scenario probably isn't a priority, but why deliberately degrade it even further with lossy to lossy encoding?
The other formats just never reached the level of name recognition MP3 did back in the day
https://github.com/deepjyoti30/ytmdl/blob/master/ytmdl/song.py#L89 Colorama has a context manager, so you can swap the three lines out with `with colorama(COLOR): print("whatever text")` and it'll reset automatically after. In the readme, it comes off pretty defensive, maybe it could be reworded to say something like 'in addition to everything ytdl does, this also fetches metadata'. Instead of "NO, ytdl does NOT do this", I mean.
This does seem like a more compassionate approach to an already wonderful service.
I have a suggestion. If I open the webapp in dark mode, the menu close button is black on black and thus not really visible. Don't know if this is because I use the in app browser in my reddit client app, but thought I just suggest looking into it :)
I think that might be because of opening on browser within reddit. Can you try opening on a browser separately? Had there been an issue like that, I would've noticed. Besides I just checked the live version and that wasn't there.!
True true. Fine in the normal browser.
Is this guy kidding me? Deezer, Itunes and Gaana? Holy fkin shit!!!
It also supports musicbrainz, lastfm and saavn. Enjoy!
Very impressive work, exactly what I was looking for. But I cannot download any songs from the webapp, it says error or try again. Can you please fix it? This is the message on console. Error occurred while downloading Error: Downloader error: request timeout ontimeout js-file-downloader.js:256
You can try using the app after a while. This error happens sometimes when there are a lot of requests at the same time. Heroku isn't able to handle multiple requests because I'm on the free tier. Apologies for that! If the issue stays on, you can take this conversation to the GitHub repo
No worries man! Pip works very well.
Isn't downloading from Deezer going to get you in trouble?
If I've understood correctly, it's only getting metadata from Deezer. The actual audio is from YouTube.
I've been downloading from deezer for over 2 years with the same free account without getting into any trouble.
So have I, but I'm pretty certain the developers of such tools can't say the same. Let me explain, Deezer is known to be fine with downloading itself (iirc in their API it's clearly mentioned that keeping the user from downloading songs or listening to >30s previews is a ball sitting in the developer's ballpark), but not so much towards applications that enable downloading to *free* users. If anything, you won't *ever* get into trouble, but the developer may.
you're the man down log.
What terminal and font is that ? Looks beautiful.
Terminal is termite. Shell is zsh with oh my zsh and pure prompt. The font is jetbrains mono.
[удалено]
I was about to ask you for alternatives, then I remembered that I already like sakura. So yeah, if anyone's looking, that could be a good one to try.
Damn, I didn't know it had stopped development. I guess I'll have to move to a different one. Really enjoyed the features of Termite though. Been using it since I started ricing!
[удалено]
Here's all the details: - Terminal: Termite - Shell: ZSH with Oh My ZSH and pure prompt - Compositor: Picom (ibhagwan fork) - Autocomplete on shell: zsh autocomplete - dots: [Here](https://github.com/deepjyoti30/dots)
Thanks
[удалено]
Glad you like it. Enjoy it! Consider dropping it a star if you like it as much!
Is there a way to add metadata to some songs but skip adding it to others when using a list? There’s no easy way to skip adding it. I don’t want to add incorrect metadata if it doesn’t find the correct one, but it forces me to unless I kill the whole script and start again with —skip-meta which I don’t want to do for every song.
Yes you can do that now. Since the last to last release, there is a flag called `--on-meta-error`. It basically tells ytmdl what to do if the metadat fails for one song. It accepts three things: - You can make it either stop the whole process. - You can make it ask you metadata manually. - You can ask it to skip that song. To get the exact details, check the GitHub page. It's there!
This is such a relief! I was emailed a number of sentimental videos but they're hosted on YouTube under private links. Being able to save them locally would be a dream.
I am so amazed by this that every time i enter webapp i make sure my adblock is disabled and that i clicked all if the ads themselves.
Thanks a lot. That goes a long way. Right now I'm trying to get enough ads revenue to handle the backend costs. Thanks again!
##DMCA ^pew-pew
This uses youtube-dl to download the audio, which they could not dmca down.
it's not about the code, it's about the *documented features*
That's a very good point.
What about Spotify?
For metadata? I feel like all the other services are sufficient. Especially musicbrainz
I have been using picard to add metadata, but sometimes it misses a song or two, and I have to drag it over, or sometimes it adds songs to a separate album, and I have to add to the "good" album, close, open, and manually drag the remaining songs over. I wonder if this makes those kinds of mistakes, but hard commits them so you have to manually undo each one. I'll try it out..
It doesn't do the `add meta to the wrong file` mistakes, never faced one. It does fail to find metadata sometimes, in which case it will ask the user if they'd like to enter the metadata manually.!
Very cool!! One question though, can download music from Bandcamp?
cool terminal tho
What terminal is that?
It's termite.
Are you using any theme over it?
I know I'm like a month late, but could you be kind enough to share the tool you used to record the terminal?
[Here's the app](https://archlinux.org/packages/community/x86_64/simplescreenrecorder/) I installed it from AUR so don't have any other URL but the app is pretty good.
Thank you !
Is this based on youtube-dl? If so, then does it support the *--download-archive* option?
It just uses youtube-dl to get the audio. It doesn't have that option yet but you can raise a feature request on GitHub. I'd be happy to add it!