Announcement

Collapse
No announcement yet.

Why is high-quality 4K YouTube video being RE-ENCODED by Streamfab??

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    #16
    Originally posted by jpp72 View Post
    Inside a batch file, you need to use double %
    AHA!!! I actually had run into this in another "script" I developed for another app. But didn't even connect the dots here.

    My mistake when looking at the original template example I was copying from, not appreciating that it's different when typing it into a command prompt window and running it from a BAT file.

    Many thanks for this note.


    I also looked closely at your own command and investigated the operands against the documentation. Very useful and informative. I've adapted my own command as I feel appropriate.

    I also looked at your structuring for the output filename, and what it would produce. I have now adapted it as well. Initially I had that "%%(ext)s" suffix but after trying it realized that it would insert an extra "webm" into the downloaded filename where I decided it had no value. I was remuxing into an MKV which would be the new extension and felt seeing "webm" served no purpose. So I've now removed that operand from my command.

    So now here is my command: Note that I will change the final hardcoded URL-providing parameter I currently have, to be a symbolic parameter as you have (i.e. "%url%"), so that I can then really use this DOWNLOAD.BAT command from a command line pasting in the real URL for whatever I wish to download.

    Code:
    yt-dlp --ignore-config -f bestvideo+bestaudio/best --embed-metadata --concurrent-fragments 10 -P f:\YTDLP-Videos -o "%%(title)s.%%(height)sp WEB-DL" --remux-video mkv "https://www.youtube.com/watch?v=zE5WdeWyuj4"
    Download ran at very high speed, around 280Mbps. MediaInfo output attached here. As before, framerate is "Constant 23.976 (24000/1001) FPS".

    Click image for larger version  Name:	YTDL-folder-2.jpg Views:	0 Size:	46.6 KB ID:	465971


    NOTE: Clearly 4K Video Downloader is erroneously creating incorrect and misleading metadata inside its own downloaded file that MediaInfo shows as "Constant 24.000 FPS" if it truly is "Constant 23.976 (24000/1001) FPS".


    Again, thank you very much for all the guidance.

    Comment


      #17
      For some reason MediaInfo file didn't get attached above. Here it is.
      Attached Files

      Comment


        #18
        Glad i was able to help.

        I have a LOT of scripts to do all kinds of things, so I am used to thinking about double % and also delayed expansions in loops.

        Whenever I encounter a new command-line program with a gazillion options and switches, I ask Gemini or ChatGPT to give me my first syntax and go from there. They are usually about 95% accurate so it cuts down a lot on the time needed to get the exact syntax I want.

        Because of the number of scripts I have, I find that using FileMenu Tools makes life easier, and I don't have to remember what I called the script.

        I just right click on the folder where i want to download or process files and i get a menu of all i can do. I have sections for Comics, Videos, Images, etc...

        Here is what my Videos section looks like:

        Click image for larger version

Name:	image.png
Views:	73
Size:	53.0 KB
ID:	465976

        The last free version of FMT is v7.0.5. Versions after that are paid. 7.0.5 works just fine for what I need. I got it from here a few years back.

        Here is the script attached to the command at the very top. Maybe it will give you other ideas...I don't really use it anymore as it was mainly to download from DiscoveryPlus and TLC before they added DRM:

        Code:
        @Echo off
        REM ************************
        REM Download with yt-dlp
        REM ************************
        setlocal ENABLEDELAYEDEXPANSION
        set /P "url=Please enter the URL of the video to download: "
        echo Analyzing provided URL...
        REM echo url ^| findstr /R discoveryplus >nul
        REM IF ERRORLEVEL 1 GOTO other
        REM yt-dlp.exe -U -F --no-geo-bypass --cookies "C:/Utils/Cookies/%COMPUTERNAME%.txt" "%url%"
        yt-dlp.exe -U -F --no-geo-bypass "%url%"
        Echo.
        Echo 1: Aria2c Downloader
        Echo 2: Native yt-dlp Downloader
        Echo.
        set /P "dl=Please select your preferred downloader for this video: "
        IF %dl%==1 GOTO aria2c
        IF %dl%==2 GOTO native
        :aria2c
        Echo.
        Echo -------------------------------------------
        Echo 1: Best 1080p Bitrate Under 4000k
        Echo 2: Highest 1080p Bitrate
        Echo 3: 2nd Highest 1080p Bitrate
        Echo 4: Lowest 1080p Bitrate
        Echo 5: Highest 720p Bitrate
        Echo 6: 2nd Highest 720p Bitrate
        Echo 7: Lowest 720p Bitrate
        Echo 8: Best
        Echo 9: Pick by ID
        Echo -------------------------------------------
        Echo.
        set /P "quality=What resolution would you like to download?: "
        IF %quality%==1 GOTO midvbr1080
        IF %quality%==2 GOTO highest1080
        IF %quality%==3 GOTO 2ndhighest1080
        IF %quality%==4 GOTO lowest1080
        IF %quality%==5 GOTO highest720
        IF %quality%==6 GOTO 2ndhighest720
        IF %quality%==7 GOTO lowest720
        IF %quality%==8 GOTO best
        IF %quality%==9 GOTO manual
        :midvbr1080
        yt-dlp.exe -U -i -f "bv[height=1080][vbr<4000]+ba" --compat-options filename-sanitization --write-sub --add-metadata --extractor-retries 10 -o "%%(series)s.%%(season_number)sx%%(episode_number)02d.%%(title)s.%%(height)sp WEB-DL.%%(ext)s" --downloader aria2c --sub-format "ass/srt/best" --sub-langs "en.*,fr.*,ro.*,rum.*" --no-geo-bypass --cookies "C:/Utils/Cookies/%COMPUTERNAME%.txt" "%url%"
        GOTO exit
        :highest1080
        yt-dlp.exe -U -i -f "bv[height=1080]+ba" --compat-options filename-sanitization --write-sub --add-metadata --extractor-retries 10 -o "%%(series)s.%%(season_number)sx%%(episode_number)02d.%%(title)s.%%(height)sp WEB-DL.%%(ext)s" --downloader aria2c --sub-format "ass/srt/best" --sub-langs "en.*,fr.*,ro.*,rum.*" --no-geo-bypass --cookies "C:/Utils/Cookies/%COMPUTERNAME%.txt" "%url%"
        GOTO exit
        :2ndhighest1080
        yt-dlp.exe -U -i -f "bv*.2[height=1080]+ba" --compat-options filename-sanitization --write-sub --add-metadata --extractor-retries 10 -o "%%(series)s.%%(season_number)sx%%(episode_number)02d.%%(title)s.%%(height)sp WEB-DL.%%(ext)s" --downloader aria2c --sub-format "ass/srt/best" --sub-langs "en.*,fr.*,ro.*,rum.*" --ignore-config --no-geo-bypass --cookies "C:/Utils/Cookies/%COMPUTERNAME%.txt" "%url%"
        GOTO exit
        :lowest1080
        yt-dlp.exe -U -i -f "wv[height=1080]+ba" --compat-options filename-sanitization --write-sub --add-metadata --extractor-retries 10 -o "%%(series)s.%%(season_number)sx%%(episode_number)02d.%%(title)s.%%(height)sp WEB-DL.%%(ext)s" --downloader aria2c --sub-format "ass/srt/best" --convert-subs=srt --sub-langs "en.*,fr.*,ro.*,rum.*" --no-geo-bypass --cookies "C:/Utils/Cookies/%COMPUTERNAME%.txt" "%url%"
        GOTO exit
        :highest720
        yt-dlp.exe -U -i -f "bv[height=720]+ba" --compat-options filename-sanitization --write-sub --add-metadata --extractor-retries 10 -o "%%(series)s.%%(season_number)sx%%(episode_number)02d.%%(title)s.%%(height)sp WEB-DL.%%(ext)s" --downloader aria2c --sub-format "ass/srt/best" --sub-langs "en.*,fr.*,ro.*,rum.*" --no-geo-bypass --cookies "C:/Utils/Cookies/%COMPUTERNAME%.txt" "%url%"
        GOTO exit
        :2ndhighest720
        yt-dlp.exe -U -i -f "bv*.2[height=720]+ba" --compat-options filename-sanitization --write-sub --add-metadata --extractor-retries 10 -o "%%(series)s.%%(season_number)sx%%(episode_number)02d.%%(title)s.%%(height)sp WEB-DL.%%(ext)s" --downloader aria2c --sub-format "ass/srt/best" --sub-langs "en.*,fr.*,ro.*,rum.*" --no-geo-bypass --cookies "C:/Utils/Cookies/%COMPUTERNAME%.txt" "%url%"
        GOTO exit
        :lowest720
        yt-dlp.exe -U -i -f "wv*.3[height=720]+ba" --compat-options filename-sanitization --write-sub --add-metadata --extractor-retries 10 -o "%%(series)s.%%(season_number)sx%%(episode_number)02d.%%(title)s.%%(height)sp WEB-DL.%%(ext)s" --downloader aria2c --sub-format "ass/srt/best" --sub-langs "en.*,fr.*,ro.*,rum.*" --no-geo-bypass --cookies "C:/Utils/Cookies/%COMPUTERNAME%.txt" "%url%"
        GOTO exit
        :manual
        yt-dlp.exe -U -i -f - --compat-options filename-sanitization --write-sub --add-metadata --extractor-retries 10 -o "%%(series)s.%%(season_number)sx%%(episode_number)02d.%%(title)s.%%(height)sp WEB-DL.%%(ext)s" --downloader aria2c --sub-format "ass/srt/best" --sub-langs "en.*,fr.*,ro.*,rum.*" --no-geo-bypass --cookies "C:/Utils/Cookies/%COMPUTERNAME%.txt" "%url%"
        GOTO exit
        :best
        yt-dlp.exe -U -i --compat-options filename-sanitization --write-sub --add-metadata --extractor-retries 10 -o "%%(series)s.%%(season_number)sx%%(episode_number)02d.%%(title)s.%%(height)sp WEB-DL.%%(ext)s" --downloader aria2c --sub-format "ass/srt/best" --sub-langs "en.*,fr.*,ro.*,rum.*" --no-geo-bypass --cookies "C:/Utils/Cookies/%COMPUTERNAME%.txt" "%url%"
        GOTO exit
        :native
        Echo.
        Echo -------------------------------------------
        Echo 1: Best 1080p Bitrate Under 4000k
        Echo 2: Highest 1080p Bitrate
        Echo 3: 2nd Highest 1080p Bitrate
        Echo 4: Lowest 1080p Bitrate
        Echo 5: Highest 720p Bitrate
        Echo 6: 2nd Highest 720p Bitrate
        Echo 7: Lowest 720p Bitrate
        Echo 8: Best
        Echo 9: Pick by ID
        Echo -------------------------------------------
        Echo.
        set /P "quality=What resolution would you like to download?: "
        IF %quality%==1 GOTO midvbr1080n
        IF %quality%==2 GOTO highest1080n
        IF %quality%==3 GOTO 2ndhighest1080n
        IF %quality%==4 GOTO lowest1080n
        IF %quality%==5 GOTO highest720n
        IF %quality%==6 GOTO 2ndhighest720n
        IF %quality%==7 GOTO lowest720n
        IF %quality%==8 GOTO bestn
        IF %quality%==9 GOTO manualn
        :midvbr1080n
        yt-dlp.exe -U -i -f "bv[height=1080][vbr<4000]+ba" --compat-options filename-sanitization --write-sub --add-metadata --extractor-retries 10 -o "%%(series)s.%%(season_number)sx%%(episode_number)02d.%%(title)s.%%(height)sp WEB-DL.%%(ext)s" --concurrent-fragments 10 --sub-format "ass/srt/best" --sub-langs "en.*,fr.*,ro.*,rum.*" --no-geo-bypass --cookies "C:/Utils/Cookies/%COMPUTERNAME%.txt" "%url%"
        GOTO exit
        :highest1080n
        yt-dlp.exe -U -i -f "bv[height=1080]+ba" --compat-options filename-sanitization --write-sub --add-metadata --extractor-retries 10 -o "%%(series)s.%%(season_number)sx%%(episode_number)02d.%%(title)s.%%(height)sp WEB-DL.%%(ext)s" --concurrent-fragments 10 --sub-format "ass/srt/best" --sub-langs "en.*,fr.*,ro.*,rum.*" --no-geo-bypass --cookies "C:/Utils/Cookies/%COMPUTERNAME%.txt" "%url%"
        GOTO exit
        :2ndhighest1080n
        yt-dlp.exe -U -i -f "bv*.2[height=1080]+ba" --compat-options filename-sanitization --write-sub --add-metadata --extractor-retries 10 -o "%%(series)s.%%(season_number)sx%%(episode_number)02d.%%(title)s.%%(height)sp WEB-DL.%%(ext)s" --concurrent-fragments 10 --sub-format "ass/srt/best" --sub-langs "en.*,fr.*,ro.*,rum.*" --ignore-config --no-geo-bypass --cookies "C:/Utils/Cookies/%COMPUTERNAME%.txt" "%url%"
        GOTO exit
        :lowest1080n
        yt-dlp.exe -U -i -f "wv[height=1080]+ba" --compat-options filename-sanitization --write-sub --add-metadata --extractor-retries 10 -o "%%(series)s.%%(season_number)sx%%(episode_number)02d.%%(title)s.%%(height)sp WEB-DL.%%(ext)s" --concurrent-fragments 10 --sub-format "ass/srt/best" --convert-subs=srt --sub-langs "en.*,fr.*,ro.*,rum.*" --no-geo-bypass --cookies "C:/Utils/Cookies/%COMPUTERNAME%.txt" "%url%"
        GOTO exit
        :highest720n
        yt-dlp.exe -U -i -f "bv[height=720]+ba" --compat-options filename-sanitization --write-sub --add-metadata --extractor-retries 10 -o "%%(series)s.%%(season_number)sx%%(episode_number)02d.%%(title)s.%%(height)sp WEB-DL.%%(ext)s" --concurrent-fragments 10 --sub-format "ass/srt/best" --sub-langs "en.*,fr.*,ro.*,rum.*" --no-geo-bypass --cookies "C:/Utils/Cookies/%COMPUTERNAME%.txt" "%url%"
        GOTO exit
        :2ndhighest720n
        yt-dlp.exe -U -i -f "bv*.2[height=720]+ba" --compat-options filename-sanitization --write-sub --add-metadata --extractor-retries 10 -o "%%(series)s.%%(season_number)sx%%(episode_number)02d.%%(title)s.%%(height)sp WEB-DL.%%(ext)s" --concurrent-fragments 10 --sub-format "ass/srt/best" --sub-langs "en.*,fr.*,ro.*,rum.*" --no-geo-bypass --cookies "C:/Utils/Cookies/%COMPUTERNAME%.txt" "%url%"
        GOTO exit
        :lowest720n
        yt-dlp.exe -U -i -f "wv*.3[height=720]+ba" --compat-options filename-sanitization --write-sub --add-metadata --extractor-retries 10 -o "%%(series)s.%%(season_number)sx%%(episode_number)02d.%%(title)s.%%(height)sp WEB-DL.%%(ext)s" --concurrent-fragments 10 --sub-format "ass/srt/best" --sub-langs "en.*,fr.*,ro.*,rum.*" --no-geo-bypass --cookies "C:/Utils/Cookies/%COMPUTERNAME%.txt" "%url%"
        GOTO exit
        :manualn
        yt-dlp.exe -U -i -f - --compat-options filename-sanitization --write-sub --add-metadata --extractor-retries 10 -o "%%(series)s.%%(season_number)sx%%(episode_number)02d.%%(title)s.%%(height)sp WEB-DL.%%(ext)s" --concurrent-fragments 10 --sub-format "ass/srt/best" --sub-langs "en.*,fr.*,ro.*,rum.*" --no-geo-bypass --cookies "C:/Utils/Cookies/%COMPUTERNAME%.txt" "%url%"
        GOTO exit
        :bestn
        yt-dlp.exe -U -i --compat-options filename-sanitization --write-sub --add-metadata --extractor-retries 10 -o "%%(series)s.%%(season_number)sx%%(episode_number)02d.%%(title)s.%%(height)sp WEB-DL.%%(ext)s" --remux-video mkv --concurrent-fragments 10 --sub-format "ass/srt/best" --sub-langs "en.*,fr.*,ro.*,rum.*" --no-geo-bypass --cookies "C:/Utils/Cookies/%COMPUTERNAME%.txt" "%url%"
        GOTO exit
        :exit
        pause​

        Comment


          #19
          Excellent new information for me to learn from. I will save this for possible future use. Thank you for the tips.

          I honestly don't do enough downloading and related organizing where this whole subject is vital to me. I simply happened to accidentally get involved just a few weeks ago when this "Over Iceland" video series was pointed out to me by a friend who is also an experienced paramotor enthusiast. He knows the author of those videos.

          Since the YT videos are smaller individual "chapters" and are not yet all uploaded, I was contemplating driving 2 hours to see a 1.5hr movie (of the actual original film, constructed by the author) in a movie theater in the town where the author lives! Special one-night presentation.

          I decided to see if I could simply construct my own single sewn-together video of all 9 chapters in highest-quality from YT, and get acceptable quality. How would it look, would I be happy, etc. Just kind of a playing in the sandbox type of project. So that's how I then stumbled into assorted free and non-free products to download from YT and other streaming providers, and set about comparing their downloaded results. And learning lots of new information in the process.

          So that's how this whole story started. I've yet to hear the "truth" about what got uploaded by the author, but it would appear it's "Constant 23.976". Obviously the "Constant 24.000" shown in the MediaInfo details for the 4K Video Downloader+ result is a mistake, if it really is "Constant 23.976" in the data itself.

          In the end, the author of the "Over Iceland" videos may actually publish a super-high-bitrate super-high-quality physical UHD BluRay of the combined 9 chapters. When viewed on a high-quality UHD OLED TV these types of videos can be truly stunning. I have some very large MKV files of movies shared from a friend that are rips from such super-high bitrate UHD physical discs. Like in the 40GB - 80GB fle size. MKV on USB played by my Oppo 203 to my calibrated 65" LG OLED C9 is quite a visual treat.

          Comment


            #20
            Nice. I know how it is when I find something new interesting. I set about mastering that topic and knowing everything about it lol

            As for the gorgeous videos, I have several Blu-rays of Planet Earth, Life, Oceans, etc. that i ripped myself.

            When my wife has a client come to our home gym in our basement, I play any of these amazing David Attenborough shows in 4k and people lose their minds at how insanely beautiful they look.

            Comment


              #21
              I gave a similar 4K demo of one of the "Blue Planet II" UHD discs to my brother, on my calibrated 55" LG OLED C7, which because of its slightly smaller size actually presents a more stunningly sharp and crisp and bright and colorful rendition than the 65" (at least from our viewing distance). There's an underwater sequence about what I call a 'sand worm" popping up to devour a fish that is absolutely horrifying and unbelievable.

              My brother returned home and purchased his own LG OLED set!! A convert.


              Anyway, I've now reconsidered and applied one more of your command operand recommendations: --compat-options filename-sanitization

              It wasn't present before, and there are two characters in the video file name that are non-standard. And this same name is propagated into the exported TXT file name produced by MediaInfo.

              This didn't cause me any problems for any tool I used to point to that file, until I tried to attach the MediaInfo TXT file to an email (using my email client program app, Forte Agent, which is not browser-based but a local POP3-type product like Thunderbird, the old Outlook Express, etc.). And it complained about being unable to attach it.

              So I added the --compat operand to cleanse the file name, and recreated​ the MKV, and then recreated the MediaInfo export TXT file. And after this "cleansing" it with the --compat operand sure enough there was no problem attaching it to the email with Agent.

              Click image for larger version

Name:	Download-log2.jpg
Views:	73
Size:	334.4 KB
ID:	465980

              So for reference, my new command is now:

              Code:
              yt-dlp --ignore-config -f bestvideo+bestaudio/best --embed-metadata --concurrent-fragments 10 --compat-options filename-sanitization -P f:\YTDLP-Videos -o "%%(title)s.%%(height)sp WEB-DL" --remux-video mkv "https://www.youtube.com/watch?v=zE5WdeWyuj4"
              Still haven't updated that last URL parameter for "production".

              Comment


                #22
                And, finally coming back to the original reason I started this thread in the first place, asking why StreamFab produces a downloaded file which claims to be "Variable 23.976 FPS", I still haven't gotten any real answer from StreamFab Support on my ticket. They asked me to try upgrading to 6.2.4.7, and also for some additional details (although my original ticket provided everything needed to show what I was complaining about), As I mentioned earlier, I did update with no change in results. And I gave them further comparisons and insights, but no response yet from my latest update to the ticket.

                Anyway, I've noticed from the most recent downloads that the author appears to have replaced the original video with a new one that has a higher video bitrate than it originally did last week. Looks like there's a new date of 7/27 on it, which could explain why all of all my recent downloads (including the one using StreamFab 6.2.4.7) are noticeably larger in file size.

                But MediaInfo still shows the same details about framerate for this newly replaced video with the higher bitrate::

                Frame rate mode : Variable
                Frame rate : 23.976 FPS
                Minimum frame rate : 23.256 FPS
                Maximum frame rate : 24.390 FPS​

                File size : 1 001 MiB
                Overall bit rate : 11.7 Mb/s
                Frame rate : 23.976 FPS​


                So that's why I perhaps mistakenly am asking why StreamFab is doing "re-encoding", even though it doesn't actually take any processing time once downloading finishes. So it couldn't actually be doing any real re-encoding which would take 10-15 minutes.

                So I'm thinking that maybe, like with 4K Video Downloader+ and its also seemingly incorrect MediaInfo, perhaps StreamFab is just mistakenly creating this "Variable 23.976 FPS" metadata?

                So I'm back to asking for an explanation here. How/why can this FPS info be wrong be, given that obviously no actual re-encoding is occurring? (I can't seem to get any answer from StreamFab tech support)
                Attached Files

                Comment


                  #23
                  I've come back for possible help on one more small issue with my development of my own basic and simple script with no interaction for anything other than the URL, similar to yours, for downloading using yt-dlp.

                  And I also decided that the target location for the downloaded file should go into a properly named sub-folder (within parent F:\YTDLP-Videos) for that video file, having the same name as the downloaded video file which will be placed in it. So the script reflects that objective, making use of yt-dlp to pre-obtain the "video file title" before actually starting the download command. And the retrieved title is then used by the script to fully express the correct -P operand for yt-dlp.

                  Everything is working fine, except that the detail about the "--compat-options filename-sanitization" operand for yt-dlp in the download command itself. This works as expected, and the file name is "cleansed" of the special characters.

                  However there does not seem to be a similar functional equivalent when specifically obtaining the video title through a "yt-dlp --get-title" command. I tried additionally adding the --compat operand which certainly cleanses the file name of the retrieved file, but it has no effect on retrieving the title by itself via --get-title.

                  This isn't terribly critical, but if possible I'd like to have the sub-folder name match the actual name of the stored video file inside. So if the video file name is "cleansed" ideally I'd like to have its host sub-folder name be the same.

                  ==> Is it possible to apply the same cleansing of special characters action done by --compat for the download file name, to the video title returned from --get-title?

                  (apology that this is really a question about yt-dlp rather than StreamFab, but we have kind of wandered OT and you have MUCH EXPERIENCE in script writing specifically related to yt-dlp)


                  thanks.

                  Click image for larger version

Name:	Folder-sub-folder-targets.jpg
Views:	46
Size:	53.0 KB
ID:	466078

                  Comment


                    #24
                    Code:
                    -P f:\YTDLP-Videos -o "%%(title)s\%%(title)s.%%(height)sp WEB-DL"

                    Comment


                      #25
                      Also, if you don't want to bother the nice people who read the StreamFab forum, feel free to request to follow me. I'll approve it and then you can DM me

                      Comment


                        #26
                        EXCELLENT! Thank you for that technique. I didn't realize that I could trick the combined syntax of both -P and -o operands to effectively specify the low-level subfolder name that way (with %%(title)s\ at the start), which both (a) creates the sub-folder, and also (b) brings it inside of the domain of the -o operand and the then applicable --compat operand. Very clever.

                        So sure enough, it now creates the properly named sub-folder with the cleansed special characters. Thanks again.

                        Click image for larger version

Name:	Folder-sub-folder-targets2.jpg
Views:	84
Size:	121.9 KB
ID:	466082

                        Here's the BAT file. Very simple, just prompts for the URL. (Note that the ECHO output of the title is NOT cleansed, although the sub-folder name itself is. Hardly important.)

                        Code:
                        @echo off
                        setlocal enabledelayedexpansion
                        
                        set /p "video_url=Enter the video URL: "
                        echo Getting title for: %video_url%
                        
                        rem set video_url=https://www.youtube.com/watch?v=zE5WdeWyuj4
                        rem echo Manual Video URL: %video_url%
                        
                        for /f "delims=" %%i in ('yt-dlp --get-title "%video_url%"') do set "video_title=%%i"
                        echo Video Title: %video_title%
                        
                        set video_folder=f:\YTDLP-Videos\%video_title%
                        echo Target folder: %video_folder%
                        
                        yt-dlp --ignore-config -f bestvideo+bestaudio/best --embed-metadata --concurrent-fragments 10 --compat-options filename-sanitization -P f:\YTDLP-Videos -o "%%(title)s\%%(title)s.%%(height)sp WEB-DL" --remux-video mkv "%video_url%"
                        
                        :end​

                        Comment

                        Working...
                        X