Try invidious. https://invidious.io/ It is a FOSS front end to YT. You can do anything, download in various video and audio formats. Watch any video without signing in. No ads, etc. There are other options as well such as https://newpipe.net/ client for Android and Yattee for iOS. https://github.com/yattee/yattee
Thanks for this. Will be hosting my own copy.
Piped is another option that can be self hosted:
https://github.com/TeamPiped/Piped
It's been on my to-do list for a while now.