I used scrcpy like this:
scrcpy --video-codec=h265 --max-size=1920 --max-fps=60 --audio-source=mic --audio-codec=aac --no-playback --keyboard=uhid --record screencast.mp4
It even captures the mouse pointer, unless its disabled via a flag or option. Checkout the docs for more audio options:
https://github.com/Genymobile/scrcpy/blob/master/doc/audio.md