yt-dlp is great if on desktop.
I do this, then send it to VLC on mobile.
Note that there are great UIs around yt-dlp on mobile, for instance Seal, if it can be of any help.
https://f-droid.org/packages/com.junkfood.seal/