Are you using the nightly channel of yt-dlp? Because it's highly recommended that you do. In the case of yt-dlp, nightly is pretty stable and dedicated to circumvent daily YouTube changes (YT is constantly fighting back).
Edit: check out their GitHub page, because there was also an announcement about a change in the JS engine, we'll need to use a third-party engine. Not sure if they gave a specific ETA yet, but they usually give a heads-up a couple of months before such changes.
Edit 2: I also recommend using the binary version of yt-dlp and put it in .local/bin. You can drop ffmpeg and the JS engine there. I found it easier to deal with than apt or pip, because I'm on an outdated system (22.04) and packages keep lagging behind.