Yt-dlp changes with version 2025.11.12

Hello!

I was just about to download a video from YouTube with yt-dlp and noticed that it only downloads the audio without the video track. I looked it up on the GitHub page and found this.

I then installed yt-dlp-ejs with sudo pacman -S yt-dlp-ejs or yay -S yt-dlp-ejs (It is located in the extra repository and AUR (I recommend extra)) and now it works again. The videos have video tracks again.

Maybe this will help someone.

Edit (for better visibility of the link from the post):

7 Likes

Thanks but yt-dlp-ejs is not in Extra but in AUR

Edit: this was solved after update the system first..

It’s in extra and the aur!

Weird:

sudo pacman -S yt-dlp-ejs
error: target not found: yt-dlp-ejs

I do have the 32bit repo disabled so that might explain this?

>>> pacman -Ss yt-dlp-ejs                                                                                    
extra/yt-dlp-ejs 0.3.1-1
    External JavaScript for yt-dlp supporting many runtimes

Maybe your mirrors haven’t updated

perhaps, i use worldwide mirror only

After updating the system it works, should have known that…

1 Like

YES! @shadow359, Thanks for that! Works perfectly now. :vulcan_salute:

1 Like

seems the old one is working just fine for me

It’s not a replacement. I didn’t uninstall yt-dlp, I just ran yay -S yt-dlp-ejs. Before that, anything I downloaded was audio only.

3 Likes

yt-dlp-ejs is an optional dependency of yt-dlp. However, due to the latest change, it is now mandatory because without it, you no longer have a video track for a video.

5 Likes

Great. Thanks for that @shadow359

Running yt-dlp

yt-dlp -F https://youtu.be/SKPkLhzGuac                      
[youtube] Extracting URL: https://youtu.be/SKPkLhzGuac
[youtube] SKPkLhzGuac: Downloading webpage
[youtube] SKPkLhzGuac: Downloading tv client config
[youtube] SKPkLhzGuac: Downloading player 1898687b-main
[youtube] SKPkLhzGuac: Downloading tv player API JSON
[youtube] SKPkLhzGuac: Downloading android sdkless player API JSON
[youtube] [jsc:deno] Solving JS challenges using deno
WARNING: [youtube] [jsc] Remote components challenge solver script (deno) and NPM package (deno) were skipped. These may be required to solve JS challenges. You can enable these downloads with  --remote-components ejs:github  (recommended) or  --remote-components ejs:npm , respectively. For more information and alternatives, refer to  https://github.com/yt-dlp/yt-dlp/wiki/EJS
WARNING: [youtube] SKPkLhzGuac: n challenge solving failed: Some formats may be missing. Ensure you have a supported JavaScript runtime and challenge solver script distribution installed. Review any warnings presented before this message. For more details, refer to  https://github.com/yt-dlp/yt-dlp/wiki/EJS
[info] Available formats for SKPkLhzGuac:
ID      EXT   RESOLUTION FPS CH β”‚ FILESIZE TBR PROTO β”‚ VCODEC     ACODEC    ABR ASR MORE INFO
────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
sb3     mhtml 48x27        0    β”‚              mhtml β”‚ images                       storyboard
sb2     mhtml 80x45        1    β”‚              mhtml β”‚ images                       storyboard
sb1     mhtml 160x90       1    β”‚              mhtml β”‚ images                       storyboard
sb0     mhtml 320x180      1    β”‚              mhtml β”‚ images                       storyboard
139-drc m4a   audio only      2 β”‚  1.28MiB 49k https β”‚ audio only mp4a.40.5 49k 22k [de-DE] German (DE) original, low, DRC, m4a_dash
139-0   m4a   audio only      2 β”‚  1.28MiB 49k https β”‚ audio only mp4a.40.5 49k 22k [en-US] English (US) (default), low, m4a_dash
139-1   m4a   audio only      2 β”‚  1.28MiB 49k https β”‚ audio only mp4a.40.5 49k 22k [de-DE] German (DE) original, low, m4a_dash

Installing yt-dlp-ejs from extra running yt-dlp and i have all the vids in the list

╰─❯ yt-dlp -F https://youtu.be/SKPkLhzGuac
[youtube] Extracting URL: https://youtu.be/SKPkLhzGuac
[youtube] SKPkLhzGuac: Downloading webpage
[youtube] SKPkLhzGuac: Downloading tv client config
[youtube] SKPkLhzGuac: Downloading player 1898687b-main
[youtube] SKPkLhzGuac: Downloading tv player API JSON
[youtube] SKPkLhzGuac: Downloading android sdkless player API JSON
[youtube] [jsc:deno] Solving JS challenges using deno
[info] Available formats for SKPkLhzGuac:
ID      EXT   RESOLUTION FPS CH β”‚  FILESIZE   TBR PROTO β”‚ VCODEC          VBR ACODEC      ABR ASR MORE INFO
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
sb3     mhtml 48x27        0    β”‚                 mhtml β”‚ images                                  storyboard
sb2     mhtml 80x45        1    β”‚                 mhtml β”‚ images                                  storyboard
sb1     mhtml 160x90       1    β”‚                 mhtml β”‚ images                                  storyboard
sb0     mhtml 320x180      1    β”‚                 mhtml β”‚ images                                  storyboard
139-drc m4a   audio only      2 β”‚   1.28MiB   49k https β”‚ audio only          mp4a.40.5   49k 22k [de-DE] German (DE) original, low, DRC, m4a_dash
249-drc webm  audio only      2 β”‚   1.34MiB   51k https β”‚ audio only          opus        51k 48k [de-DE] German (DE) original, low, DRC, webm_dash
250-drc webm  audio only      2 β”‚   1.77MiB   67k https β”‚ audio only          opus        67k 48k [de-DE] German (DE) original, low, DRC, webm_dash
139-0   m4a   audio only      2 β”‚   1.28MiB   49k https β”‚ audio only          mp4a.40.5   49k 22k [en-US] English (US) (default), low, m4a_dash
139-1   m4a   audio only      2 β”‚   1.28MiB   49k https β”‚ audio only          mp4a.40.5   49k 22k [de-DE] German (DE) original, low, m4a_dash
249-0   webm  audio only      2 β”‚   1.50MiB   57k https β”‚ audio only          opus        57k 48k [en-US] English (US) (default), low, webm_dash
250-0   webm  audio only      2 β”‚   1.93MiB   73k https β”‚ audio only          opus        73k 48k [en-US] English (US) (default), low, webm_dash
249-1   webm  audio only      2 β”‚   1.33MiB   51k https β”‚ audio only          opus        51k 48k [de-DE] German (DE) original, low, webm_dash
250-1   webm  audio only      2 β”‚   1.76MiB   67k https β”‚ audio only          opus        67k 48k [de-DE] German (DE) original, low, webm_dash
140-drc m4a   audio only      2 β”‚   3.40MiB  130k https β”‚ audio only          mp4a.40.2  130k 44k [de-DE] German (DE) original, medium, DRC, m4a_dash
251-drc webm  audio only      2 β”‚   3.37MiB  129k https β”‚ audio only          opus       129k 48k [de-DE] German (DE) original, medium, DRC, webm_dash
140-0   m4a   audio only      2 β”‚   3.40MiB  130k https β”‚ audio only          mp4a.40.2  130k 44k [en-US] English (US) (default), medium, m4a_dash
140-1   m4a   audio only      2 β”‚   3.40MiB  130k https β”‚ audio only          mp4a.40.2  130k 44k [de-DE] German (DE) original, medium, m4a_dash
251-0   webm  audio only      2 β”‚   3.65MiB  139k https β”‚ audio only          opus       139k 48k [en-US] English (US) (default), medium, webm_dash
251-1   webm  audio only      2 β”‚   3.37MiB  128k https β”‚ audio only          opus       128k 48k [de-DE] German (DE) original, medium, webm_dash
160     mp4   256x144     25    β”‚   2.02MiB   77k https β”‚ avc1.4d400c     77k video only          144p, mp4_dash
278     webm  256x144     25    β”‚   2.51MiB   96k https β”‚ vp9             96k video only          144p, webm_dash
394     mp4   256x144     25    β”‚   2.06MiB   78k https β”‚ av01.0.00M.08   78k video only          144p, mp4_dash
133     mp4   426x240     25    β”‚   4.42MiB  168k https β”‚ avc1.4d4015    168k video only          240p, mp4_dash
242     webm  426x240     25    β”‚   4.92MiB  187k https β”‚ vp9            187k video only          240p, webm_dash
395     mp4   426x240     25    β”‚   4.27MiB  163k https β”‚ av01.0.00M.08  163k video only          240p, mp4_dash
134     mp4   640x360     25    β”‚   8.04MiB  306k https β”‚ avc1.4d401e    306k video only          360p, mp4_dash
18      mp4   640x360     25  2 β”‚  17.42MiB  664k https β”‚ avc1.42001E         mp4a.40.2       44k [de] 360p
243     webm  640x360     25    β”‚   8.02MiB  306k https β”‚ vp9            306k video only          360p, webm_dash
396     mp4   640x360     25    β”‚   8.40MiB  320k https β”‚ av01.0.01M.08  320k video only          360p, mp4_dash
135     mp4   854x480     25    β”‚  13.26MiB  506k https β”‚ avc1.4d401e    506k video only          480p, mp4_dash
244     webm  854x480     25    β”‚  14.00MiB  534k https β”‚ vp9            534k video only          480p, webm_dash
397     mp4   854x480     25    β”‚  13.81MiB  526k https β”‚ av01.0.04M.08  526k video only          480p, mp4_dash
136     mp4   1280x720    25    β”‚  23.80MiB  907k https β”‚ avc1.4d401f    907k video only          720p, mp4_dash
247     webm  1280x720    25    β”‚  23.83MiB  908k https β”‚ vp9            908k video only          720p, webm_dash
398     mp4   1280x720    25    β”‚  23.30MiB  888k https β”‚ av01.0.05M.08  888k video only          720p, mp4_dash
137     mp4   1920x1080   25    β”‚  65.19MiB 2485k https β”‚ avc1.640028   2485k video only          1080p, mp4_dash
248     webm  1920x1080   25    β”‚  38.63MiB 1473k https β”‚ vp9           1473k video only          1080p, webm_dash
399     mp4   1920x1080   25    β”‚  36.39MiB 1387k https β”‚ av01.0.08M.08 1387k video only          1080p, mp4_dash

β•­ ~                                                                                                                                                                                                                     17:25 swh ο†—  on EndeavourOS   2s795ms
╰─❯  

2 Likes

Your old one is rather old.

The new one is: Version : 2025.11.12-2 and has yt-dlp-ejs as optional dependency as mentioned above:

              yt-dlp-ejs: non-deprecated YouTube support

PS. If you post terminal output as text, it makes it easier to copy and comment on.

to many things going on at once. I’m going between two different computers atm.

I was just pointing out it still works for me as is. The video in the post above downloaded without issue and plays audio and video without issue. that is why i just posted a quick pic to show it was working.

2 Likes

thanks for the info!

1 Like

Glad I noticed this thread or else I was going to get very pissed after trying to download some YouTube videos :sweat_smile:

Thank you to the OP for the useful tip :clinking_beer_mugs:

2 Likes

Now you know how I felt. :sweat_smile:

1 Like

I also had to struggle with this yesterday. Luckily, I found the information that you posted.

3 Likes