VideoHelp Forum




+ Reply to Thread
Page 2 of 2
FirstFirst 1 2
Results 31 to 39 of 39
  1. I installed the fork of Node.js for Windows 7 & the latest yt-dlp for Windows 7.
    I used the YouTube that Bencuri posted:
    https://www.youtube.com/watch?v=ZfObjX-E_g4
    I like to use --list-formats & select the one I want.
    For this one I started with the m3u8 that was largest & looked like the "best" choice.
    As nicolaasjan posted it was smaller that the size it listed.
    The m3u8 showed the total size as: 1.10GiB
    Media info showed the Video size as: 765 MiB
    The Audio size as:40.5 MiB
    These sizes are comparable to Audio 140-1 & Video 137 in the --list-formats.
    The only better Audio is OPUS at 43.24MiB if you wanted to use OPUS.
    This is only a slightly larger Audio file.
    You can use these codes directly with yt-dlp in command .
    This is the m3u8:
    Code:
    yt-dlp -f 96-1 https://www.youtube.com/watch?v=ZfObjX-E_g4
    This is the best non OPUS:
    Code:
    yt-dlp -f 137+140-0 https://www.youtube.com/watch?v=ZfObjX-E_g4
    Using OPUS:
    Code:
    yt-dlp -f 137+250-1 https://www.youtube.com/watch?v=ZfObjX-E_g4
    Using the code I use that is the same as Bencuri's:
    Code:
    yt-dlp -f bestvideo[ext=mp4]+bestaudio[ext=m4a]/best[ext=mp4] https://www.youtube.com/watch?v=ZfObjX-E_g4
    yt-dlp chooses the 399 video code instead of the 137 video code as "bestvideo".
    399 is 405.95MiB
    137 is 765.37MiB
    It chooses the Spanish 140-1 as bestaudio. Which is fine if that is what is wanted.

    The file is named: Celia: 1x03 - ĦEl verano! | RTVE Archivo [ZfObjX-E_g4].mp4
    Quote Quote  
  2. Member nicolaasjan's Avatar
    Join Date
    Dec 2025
    Location
    the Netherlands
    Search Comp PM
    @cholla
    As I said, with node you shouldn't see these m3u8 formats:
    Code:
    [debug] Command-line config: ['-vF', 'https://www.youtube.com/watch?v=ZfObjX-E_g4']
    [debug] User config "C:\Users\User\AppData\Roaming\yt-dlp\config.txt": ['--rm-cache-dir', '--console-title', '--js-runtimes', 'node', '-o', '~/Desktop/%(title)s.%(ext)s', '-S', 'res:1080,vcodec:vp9,acodec:opus', '--embed-thumbnail', '--add-metadata', '--convert-thumbnails', 'jpg', '--ppa', 'ffmpeg:-metadata synopsis=""', '--force-ipv4', '-N', '6', '--sponsorblock-remove', 'all']
    [debug] Encodings: locale cp1252, fs utf-8, pref cp1252, out cp1252 (No VT), error cp1252 (No VT), screen cp1252 (No VT)
    [debug] yt-dlp version nicolaasjan/yt-dlp@2025.12.21.064937 (win_exe)
    [debug] Python 3.14.2 (CPython AMD64 64bit) - Windows-7-6.1.7601-SP1 (OpenSSL 3.0.18 30 Sep 2025)
    [debug] exe versions: ffmpeg N-122272-g224b3ff82a-WIN7 (fdk,setts), ffprobe N-122272-g224b3ff82a-WIN7, phantomjs 2.5.0
    [debug] Optional libraries: Cryptodome-3.23.0, brotli-1.2.0, certifi-2025.11.12, curl_cffi-0.13.0, mutagen-1.47.0, requests-2.32.5, sqlite3-3.50.4, urllib3-2.6.2, websockets-15.0.1, yt_dlp_ejs-0.3.2
    [debug] JS runtimes: node-20.19.2
    [debug] Proxy map: {}
    [debug] Request Handlers: urllib, requests, websockets, curl_cffi
    [debug] Plugin directories: none
    [debug] Loaded 1853 extractors
    Removing cache dir C:\Users\User/.cache\yt-dlp ..
    [debug] [youtube] [pot] PO Token Providers: none
    [debug] [youtube] [pot] PO Token Cache Providers: memory
    [debug] [youtube] [pot] PO Token Cache Spec Providers: webpo
    [debug] [youtube] [jsc] JS Challenge Providers: bun (unavailable), deno (unavailable), node, quickjs (unavailable)
    [youtube] Extracting URL: https://www.youtube.com/watch?v=ZfObjX-E_g4
    [youtube] ZfObjX-E_g4: Downloading webpage
    [youtube] ZfObjX-E_g4: Downloading tv client config
    [debug] [youtube] Forcing "main" player JS variant for player 50cc0679
            original url = /s/player/50cc0679/player_es6.vflset/en_US/base.js
    [youtube] ZfObjX-E_g4: Downloading player 50cc0679-main
    [youtube] ZfObjX-E_g4: Downloading tv player API JSON
    [debug] [youtube] ZfObjX-E_g4: Detected a 6s ad skippable after 5s for tv
    [youtube] ZfObjX-E_g4: Downloading android sdkless player API JSON
    [youtube] [jsc:node] Solving JS challenges using node
    [debug] [youtube] [jsc:node] Using challenge solver lib script v0.3.2 (source: python package, variant: minified)
    [debug] [youtube] [jsc:node] Using challenge solver core script v0.3.2 (source: python package, variant: minified)
    [debug] [youtube] [jsc:node] Running node: 'C:\Program Files\mpv\node.EXE' --experimental-permission --no-warnings=ExperimentalWarning -
    [debug] Sort order given by user: res:1080, vcodec:vp9, acodec:opus
    [debug] Sort order given by extractor: quality, res, fps, hdr:12, source, vcodec, channels, acodec, lang, proto
    [debug] Formats sorted by: hasvid, ie_pref, res:1080(1080.0), vcodec:vp9(9), acodec:opus(12), quality, fps, hdr:12(7), source, channels, lang, proto, size, br, asr, vext, aext, hasaud, id
    [SponsorBlock] Fetching SponsorBlock segments
    [debug] SponsorBlock query: https://sponsor.ajay.app/api/skipSegments/fa9c?service=YouTube&categories=%5B%22filler%22%2C+%22intro%22%2C+%22music_offtopic%22%2C+%22preview%22%2C+%22hook%22%2C+%22outro%22%2C+%22interaction%22%2C+%22selfpromo%22%2C+%22sponsor%22%5D&actionTypes=%5B%22skip%22%2C+%22poi%22%2C+%22chapter%22%5D
    [SponsorBlock] No matching segments were found in the SponsorBlock database
    [info] Available formats for ZfObjX-E_g4:
    ID      EXT   RESOLUTION FPS CH |   FILESIZE   TBR PROTO | VCODEC          VBR ACODEC      ABR ASR MORE INFO
    ------------------------------------------------------------------------------------------------------------------------------------------------------------
    sb3     mhtml 48x27        0    |                  mhtml | images                                  storyboard
    sb2     mhtml 60x45        0    |                  mhtml | images                                  storyboard
    sb1     mhtml 120x90       0    |                  mhtml | images                                  storyboard
    sb0     mhtml 240x180      0    |                  mhtml | images                                  storyboard
    139-drc m4a   audio only      2 |   15.44MiB   49k https | audio only          mp4a.40.5   49k 22k [es-US] Spanish (US) original, low, DRC, ANDR-S, m4a_dash
    139-0   m4a   audio only      2 |   15.44MiB   49k https | audio only          mp4a.40.5   49k 22k [en-US] English (US) (default), low, ANDR-S, m4a_dash
    139-1   m4a   audio only      2 |   15.44MiB   49k https | audio only          mp4a.40.5   49k 22k [es-US] Spanish (US) original, low, ANDR-S, m4a_dash
    140-drc m4a   audio only      2 |   40.96MiB  129k https | audio only          mp4a.40.2  129k 44k [es-US] Spanish (US) original, medium, DRC, TV, m4a_dash
    140-0   m4a   audio only      2 |   40.96MiB  129k https | audio only          mp4a.40.2  129k 44k [en-US] English (US) (default), medium, TV, m4a_dash
    140-1   m4a   audio only      2 |   40.96MiB  129k https | audio only          mp4a.40.2  129k 44k [es-US] Spanish (US) original, medium, TV, m4a_dash
    249-drc webm  audio only      2 |   15.83MiB   50k https | audio only          opus        50k 48k [es-US] Spanish (US) original, low, DRC, TV, webm_dash
    250-drc webm  audio only      2 |   18.41MiB   58k https | audio only          opus        58k 48k [es-US] Spanish (US) original, low, DRC, TV, webm_dash
    249-0   webm  audio only      2 |   17.70MiB   56k https | audio only          opus        56k 48k [en-US] English (US) (default), low, TV, webm_dash
    250-0   webm  audio only      2 |   22.78MiB   72k https | audio only          opus        72k 48k [en-US] English (US) (default), low, TV, webm_dash
    249-1   webm  audio only      2 |   15.63MiB   49k https | audio only          opus        49k 48k [es-US] Spanish (US) original, low, TV, webm_dash
    250-1   webm  audio only      2 |   18.32MiB   58k https | audio only          opus        58k 48k [es-US] Spanish (US) original, low, TV, webm_dash
    251-drc webm  audio only      2 |   32.67MiB  103k https | audio only          opus       103k 48k [es-US] Spanish (US) original, medium, DRC, TV, webm_dash
    251-0   webm  audio only      2 |   43.24MiB  137k https | audio only          opus       137k 48k [en-US] English (US) (default), medium, TV, webm_dash
    251-1   webm  audio only      2 |   32.44MiB  103k https | audio only          opus       103k 48k [es-US] Spanish (US) original, medium, TV, webm_dash
    394     mp4   192x144     25    |   21.88MiB   69k https | av01.0.00M.08   69k video only          144p, TV, mp4_dash
    160     mp4   192x144     25    |   19.48MiB   62k https | avc1.4d400b     62k video only          144p, TV, mp4_dash
    278     webm  192x144     25    |   24.32MiB   77k https | vp9             77k video only          144p, TV, webm_dash
    395     mp4   320x240     25    |   43.18MiB  136k https | av01.0.00M.08  136k video only          240p, TV, mp4_dash
    133     mp4   320x240     25    |   41.22MiB  130k https | avc1.4d400d    130k video only          240p, TV, mp4_dash
    242     webm  320x240     25    |   37.18MiB  118k https | vp9            118k video only          240p, TV, webm_dash
    396     mp4   480x360     25    |   82.96MiB  262k https | av01.0.01M.08  262k video only          360p, TV, mp4_dash
    134     mp4   480x360     25    |   84.29MiB  266k https | avc1.4d4015    266k video only          360p, TV, mp4_dash
    18      mp4   480x360     25  2 |  188.16MiB  595k https | avc1.42001E         mp4a.40.2       44k [es] 360p, TV
    243     webm  480x360     25    |   74.73MiB  236k https | vp9            236k video only          360p, TV, webm_dash
    397     mp4   640x480     25    |  134.37MiB  425k https | av01.0.04M.08  425k video only          480p, TV, mp4_dash
    135     mp4   640x480     25    |  140.00MiB  442k https | avc1.4d401e    442k video only          480p, TV, mp4_dash
    244     webm  640x480     25    |  115.42MiB  365k https | vp9            365k video only          480p, TV, webm_dash
    398     mp4   960x720     25    |  236.42MiB  747k https | av01.0.05M.08  747k video only          720p, TV, mp4_dash
    136     mp4   960x720     25    |  241.87MiB  764k https | avc1.4d401f    764k video only          720p, TV, mp4_dash
    247     webm  960x720     25    |  210.84MiB  666k https | vp9            666k video only          720p, TV, webm_dash
    399     mp4   1440x1080   25    |  405.95MiB 1283k https | av01.0.08M.08 1283k video only          1080p, TV, mp4_dash
    137     mp4   1440x1080   25    |  765.37MiB 2419k https | avc1.640028   2419k video only          1080p, TV, mp4_dash
    248     webm  1440x1080   25    |  401.99MiB 1271k https | vp9           1271k video only          1080p, TV, webm_dash
    Quote Quote  
  3. Member
    Join Date
    Apr 2012
    Location
    Hungary
    Search PM
    Originally Posted by cholla View Post
    I installed the fork of Node.js for Windows 7 & the latest yt-dlp for Windows 7.
    I used the YouTube that Bencuri posted:
    https://www.youtube.com/watch?v=ZfObjX-E_g4
    I noticed that it was because of the video selection parameter that I added for the command that resulted in the download of the lower bitrate video. If I use this command below, I get the mp4 with the highest bitrate downloaded:

    Code:
    yt-dlp -o "out/%%(title)s.%%(ext)s" %url% -t mp4
    This is without the node that you referred to. Adding the node is still ahead for me.

    The AV1 AVC issue about which is better: I do understand the point prioritizing the AV1, but there is difference and it may depend on a personal preference which is better. It may also be the case that if the viewer does not know about the difference, they will not notice anything. However I realized my recent Vegas version cannot open AV1 videos, so better to grab the mp4. This way the issue is not relevant at the moment for me.

    So at the moment this is my script, this asks for the link, and downloads the highest bitrate video and audio:

    Code:
    download.bat
    
    @Echo Off
    set /p url=Enter video url: 
    @Echo On
    yt-dlp -o "out/%%(title)s.%%(ext)s" %url% -t mp4
    Quote Quote  
  4. Originally Posted by cholla View Post
    Using the code I use that is the same as Bencuri's:
    Code:
    yt-dlp -f bestvideo[ext=mp4]+bestaudio[ext=m4a]/best[ext=mp4] https://www.youtube.com/watch?v=ZfObjX-E_g4
    yt-dlp chooses the 399 video code instead of the 137 video code as "bestvideo".
    399 is 405.95MiB
    137 is 765.37MiB
    399 is AV1 while 137 is H.264/AVC.
    AV1 can be muxed into MP4 and it's supposed to be better than AVC because of a smaller size for an equivalent quality, that's why it got the preference.
    Quote Quote  
  5. Originally Posted by nicolaasjan View Post
    @cholla
    As I said, with node you shouldn't see these m3u8 formats:
    This is what it said before I installed:node.js
    [debug] JS runtimes: none

    After I installed one of the suggested versions for Windows 7 I got this:
    [debug] JS runtimes: node not recognized then the version.
    I would have posted a copy of the message but I already uninstalled that version.

    I have not given up & plan to try another node version.
    If that fails I will probably wait a while since I'm not having any problems downloading from YouTube currently.
    Except what probably would not download anyway.
    Protected copyrighted videos.
    Quote Quote  
  6. Member nicolaasjan's Avatar
    Join Date
    Dec 2025
    Location
    the Netherlands
    Search Comp PM
    Originally Posted by cholla View Post
    Originally Posted by nicolaasjan View Post
    @cholla
    As I said, with node you shouldn't see these m3u8 formats:
    This is what it said before I installed:node.js
    [debug] JS runtimes: none

    After I installed one of the suggested versions for Windows 7 I got this:
    [debug] JS runtimes: node not recognized then the version.
    I would have posted a copy of the message but I already uninstalled that version.

    I have not given up & plan to try another node version.
    If that fails I will probably wait a while since I'm not having any problems downloading from YouTube currently.
    Except what probably would not download anyway.
    Protected copyrighted videos.
    Did you try version 20.19.2?
    It works here:
    Code:
    [debug] Command-line config: ['-v']
    [debug] User config "C:\Users\User\AppData\Roaming\yt-dlp\config.txt": ['--rm-cache-dir', '--console-title', '--js-runtimes', 'node', '-o', '~/Desktop/%(title)s.%(ext)s', '-S', 'res:1080,vcodec:vp9,acodec:opus', '--embed-thumbnail', '--add-metadata', '--convert-thumbnails', 'jpg', '--ppa', 'ffmpeg:-metadata synopsis=""', '--force-ipv4', '-N', '6', '--sponsorblock-remove', 'all']
    [debug] Encodings: locale cp1252, fs utf-8, pref cp1252, out cp1252 (No VT), error cp1252 (No VT), screen cp1252 (No VT)
    [debug] yt-dlp version nicolaasjan/yt-dlp@2025.12.31.054119 (win_exe)
    [debug] Python 3.14.2 (CPython AMD64 64bit) - Windows-7-6.1.7601-SP1 (OpenSSL 3.0.18 30 Sep 2025)
    [debug] exe versions: ffmpeg N-122272-g224b3ff82a-WIN7 (fdk,setts), ffprobe N-122272-g224b3ff82a-WIN7, phantomjs 2.5.0
    [debug] Optional libraries: Cryptodome-3.23.0, brotli-1.2.0, certifi-2025.11.12, curl_cffi-0.13.0, mutagen-1.47.0, requests-2.32.5, sqlite3-3.50.4, urllib3-2.6.2, websockets-15.0.1, yt_dlp_ejs-0.3.2
    [debug] JS runtimes: node-20.19.2
    [debug] Proxy map: {}
    [debug] Request Handlers: urllib, requests, websockets, curl_cffi
    [debug] Plugin directories: C:\Users\User\AppData\Roaming\yt-dlp\plugins\bgutil-ytdlp-pot-provider\yt_dlp_plugins
    [debug] Loaded 1848 extractors
    Removing cache dir C:\Users\User/.cache\yt-dlp ..
    Quote Quote  
  7. @ nicolaasjan,
    I must be doing the install incorrectly.
    I keep getting this message when i try to install node-v20.19.2-x86.msi .
    This application is only supported on Windows 8.1,
    Windows Server 2012 R2, or higher.
    Quote Quote  
  8. Member nicolaasjan's Avatar
    Join Date
    Dec 2025
    Location
    the Netherlands
    Search Comp PM
    Originally Posted by cholla View Post
    @ nicolaasjan,
    I must be doing the install incorrectly.
    I keep getting this message when i try to install node-v20.19.2-x86.msi .
    This application is only supported on Windows 8.1,
    Windows Server 2012 R2, or higher.
    Oh, I used the portable zip file (node-v20.19.2-win-x86.zip) and extracted to C:\bin\node.
    Then added that folder to the environment variables (PATH):
    In an elevated command prompt enter:
    Code:
    setx /m PATH "%PATH%;C:\bin\node"
    Or, if you like the GUI way:
    https://www.computerhope.com/issues/ch000549.htm#windows7
    Last edited by nicolaasjan; 31st Dec 2025 at 13:40.
    Quote Quote  
  9. @ nicolaasjan,
    Thanks for all the help.
    You sent me the correct link for nodejs.
    I just did not download it correctly.
    I started over & the second time it worked.

    The node-v20.19.2-x86.msi put these entries in the Enviromental Variables: C:\Program Files\nodejs\;C:\ProgramData\chocolatey\bin

    I extracted the node.js-windows-7-main.zip to its' own folder on my Desktop.
    I then used the node-v20.19.2-win-x86.zip that was in the blue 20 folder.
    I installed it from the extracted files from that folder.

    I also use a portable yt-dlp.
    I will now use two yt-dlp folders the new one that uses node & the older version that have the internal Javscript interpreter.
    This will allow me to see the pre-merged m3u8 formats when I want them.
    The debug report now looks like this:
    Code:
    Microsoft Windows [Version 6.1.7601]
    Copyright (c) 2009 Microsoft Corporation.  All rights reserved.
    C:\Users\User\Desktop\Vedit\yt-dlp>yt-dlp -vU --js-runtimes node --list-formats https://www.youtube.com/watch?v=ZfObjX-E_g4
    [debug] Command-line config: ['-vU', '--js-runtimes', 'node', '--list-formats', 'https://www.youtube.com/watch?v=ZfObjX-E_g4']
    [debug] Encodings: locale cp1252, fs utf-8, pref cp1252, out utf-8 (No VT), error utf-8 (No VT), screen utf-8 (No VT)
    [debug] yt-dlp version nicolaasjan/yt-dlp@2025.12.31.054119 (win7_x86_exe*)
    [debug] Python 3.14.2 (CPython AMD64 32bit) - Windows-7-6.1.7601-SP1 (OpenSSL 3.6.0 1 Oct 2025)
    [debug] exe versions: ffmpeg N-119166-g1e5c65f539-WIN7 (fdk,setts), ffprobe N-121473-gdc39a576ad-WIN7
    [debug] Optional libraries: Cryptodome-3.23.0, brotli-1.2.0, certifi-2025.11.12, mutagen-1.47.0, requests-2.32.5, sqlite3-3.50.4, urllib3-2.6.2, websockets-15.0.1, yt_dlp_ejs-0.3.2
    [debug] JS runtimes: node-20.19.2
    [debug] Proxy map: {}
    [debug] Request Handlers: urllib, requests, websockets
    [debug] Plugin directories: none
    [debug] Loaded 1848 extractors
    [debug] Fetching release info: https://api.github.com/repos/nicolaasjan/yt-dlp/releases/latest
    Latest version: nicolaasjan/yt-dlp@2025.12.31.054119
    yt-dlp is up to date (nicolaasjan/yt-dlp@2025.12.31.054119)
    [debug] [youtube] [pot] PO Token Providers: none
    [debug] [youtube] [pot] PO Token Cache Providers: memory
    [debug] [youtube] [pot] PO Token Cache Spec Providers: webpo
    [debug] [youtube] [jsc] JS Challenge Providers: bun (unavailable), deno (unavailable), node, quickjs (unavailable)
    [youtube] Extracting URL: https://www.youtube.com/watch?v=ZfObjX-E_g4
    [youtube] ZfObjX-E_g4: Downloading webpage
    [youtube] ZfObjX-E_g4: Downloading tv client config
    [debug] [youtube] Forcing "main" player JS variant for player 50cc0679
            original url = /s/player/50cc0679/player_es6.vflset/en_US/base.js
    [youtube] ZfObjX-E_g4: Downloading player 50cc0679-main
    [youtube] ZfObjX-E_g4: Downloading tv player API JSON
    [debug] [youtube] ZfObjX-E_g4: Detected a 15s ad skippable after 5s for tv
    [youtube] ZfObjX-E_g4: Downloading android sdkless player API JSON
    [youtube] [jsc:node] Solving JS challenges using node
    [debug] [youtube] [jsc:node] Using challenge solver lib script v0.3.2 (source: python package, variant: minified)
    [debug] [youtube] [jsc:node] Using challenge solver core script v0.3.2 (source: python package, variant: minified)
    [debug] [youtube] [jsc:node] Running node: 'C:\Program Files\nodejs\node.EXE' --experimental-permission --no-warnings=ExperimentalWarning -
    [debug] Sort order given by extractor: quality, res, fps, hdr:12, source, vcodec, channels, acodec, lang, proto
    [debug] Formats sorted by: hasvid, ie_pref, quality, res, fps, hdr:12(7), source, vcodec, channels, acodec, lang, proto, size, br, asr, vext, aext, hasaud, id
    Quote Quote  



Similar Threads

Visit our sponsor! Try DVDFab and backup Blu-rays!