If you like youtube-dl you should check out mps-youtube (https://github.com/mps-youtube/mps-youtube) which has the ability to use youtuble-dl as the backend I'm pretty sure (i prefer to use the native one personally)
It's also gpl vs youtube-dl's public domain.
I'm sure eventually I'll figure out a way to just do it in emacs. (I'm mostly joking... kinda... maybe.)