Repository: yt-dlp/yt-dlp

Issue:
2023.10.13 creating empty folders
### DO NOT REMOVE OR SKIP THE ISSUE TEMPLATE

- [X] I understand that I will be **blocked** if I *intentionally* remove or skip any mandatory\* field

### Checklist

- [X] I'm reporting a bug unrelated to a specific site
- [X] I've verified that I'm running yt-dlp version **2023.10.13** ([update instructions](https://github.com/yt-dlp/yt-dlp#update)) or later (specify commit)
- [X] I've checked that all provided URLs are playable in a browser with the same IP and same login details
- [X] I've checked that all URLs and arguments with special characters are [properly quoted or escaped](https://github.com/yt-dlp/yt-dlp/wiki/FAQ#video-url-contains-an-ampersand--and-im-getting-some-strange-output-1-2839-or-v-is-not-recognized-as-an-internal-or-external-command)
- [X] I've searched [known issues](https://github.com/yt-dlp/yt-dlp/issues/3766) and the [bugtracker](https://github.com/yt-dlp/yt-dlp/issues?q=) for similar issues **including closed ones**. DO NOT post duplicates
- [X] I've read the [guidelines for opening an issue](https://github.com/yt-dlp/yt-dlp/blob/master/CONTRIBUTING.md#opening-an-issue)

### Provide a description that is worded well enough to be understood

I recently upgraded to the latest version and I've found that it is creating empty folders. The previous release did not do this.

I've truncated the log as I don't think having 137 channels of output is useful, especially when one is Big Clive.

### Provide verbose output that clearly demonstrates the problem

- [X] Run **your** yt-dlp command with **-vU** flag added (`yt-dlp -vU <your command line>`)
- [ ] If using API, add `'verbose': True` to `YoutubeDL` params instead
- [X] Copy the WHOLE output (starting with `[debug] Command-line config`) and insert it below

### Complete Verbose Output

```shell
[debug] Command-line config: ['--download-archive', '/home/kevin/.config/ytget/archive', '--batch-file', '/home/kevin/.config/ytget/config', '--output', '~/podcasts/video/youtube/%(uploader)s/%(upload_date)s %(title)s.%(ext)s', '--cookies-from-browser', 'firefox', '-vU']
[debug] User config "/home/kevin/.config/yt-dlp.conf": ['--output', '%(upload_date)s %(title)s.%(ext)s', '--ignore-errors', '--sub-langs', 'en', '--write-subs', '--merge-output-format', 'mp4', '--format', 'best[height<=720],best']
[debug] Batch file urls: ['https://www.twitch.tv/fasterthanlime/videos', 'https://www.twitch.tv/princessxen/videos', 'https://www.twitch.tv/thekuto/videos', 'https://www.twitch.tv/xssfox/videos', 'https://www.youtube.com/@11foot8plus8/videos', 'https://www.youtube.com/@Airforceproud95/videos', 'https://www.youtube.com/@AlphaBravoV/videos', 'https://www.youtube.com/@BackyardBirdsofAustralia/', 'https://www.youtube.com/@BadObsessionMotorsport/videos', 'https://www.youtube.com/@BeauMiles/videos', 'https://www.youtube.com/@BeckyStern/videos', 'https://www.youtube.com/@Berd/videos', 'https://www.youtube.com/@Bigclivedotcom/videos', 'https://www.youtube.com/@Blondihacks/videos', 'https://www.youtube.com/@BosnianApeSociety/videos', 'https://www.youtube.com/@Cade_Media/videos', 'https://www.youtube.com/@Cadey', 'https://www.youtube.com/@Ciband/videos', 'https://www.youtube.com/@Clickspring/videos', 'https://www.youtube.com/@ClickspringClips/videos', 'https://www.youtube.com/@ConSeanWay/videos', 'https://www.youtube.com/@CraftComputing/videos', 'https://www.youtube.com/@CricketthePigeon/videos', 'https://www.youtube.com/@DavidMcLuckie/videos', 'https://www.youtube.com/@DemilyPyro/videos', 'https://www.youtube.com/@DeviantOllam/videos', 'https://www.youtube.com/@DevineLuLinvega/videos', 'https://www.youtube.com/@DropTableAdventures/', 'https://www.youtube.com/@Electroboom/videos', 'https://www.youtube.com/@ExplosionsandFire/videos', 'https://www.youtube.com/@ExtractionsandIre/videos', 'https://www.youtube.com/@FelixColgrave/videos', 'https://www.youtube.com/@FiberNinja/videos', 'https://www.youtube.com/@GLovesTrains/videos', 'https://www.youtube.com/@GarbageTime420/videos', 'https://www.youtube.com/@GeistPunkWorkShop/videos', 'https://www.youtube.com/@HackaweekTV/videos', 'https://www.youtube.com/@HillPeopleGear/videos', 'https://www.youtube.com/@HundredRabbits/videos', 'https://www.youtube.com/@IHatchetJack/videos', 'https://www.youtube.com/@IronangelForge/videos', 'https://www.youtube.com/@Jer_Schmidt/videos', 'https://www.youtube.com/@JunYoshizuki/videos', 'https://www.youtube.com/@JunsKitchen/videos', 'https://www.youtube.com/@KennethFinnegan/videos', 'https://www.youtube.com/@KinCony', 'https://www.youtube.com/@KymNonStop/videos', 'https://www.youtube.com/@Lefie/videos', 'https://www.youtube.com/@Mehditation/videos', 'https://www.youtube.com/@MichaelReeves/videos', 'https://www.youtube.com/@MrMichaelSpicer', 'https://www.youtube.com/@NODEtv/videos', 'https://www.youtube.com/@Naomi-Wu/videos', 'https://www.youtube.com/@Neytirix/videos', 'https://www.youtube.com/@NileBlue/videos', 'https://www.youtube.com/@NileRed/videos', 'https://www.youtube.com/@NoBoilerplate/videos', 'https://www.youtube.com/@NullByteWHT/videos', 'https://www.youtube.com/@OH8STN/videos', 'https://www.youtube.com/@OM0ET/videos', 'https://www.youtube.com/@Photonvids/videos', 'https://www.youtube.com/@RJTheBikeGuy/videos', 'https://www.youtube.com/@SamuraiMatcha/videos', 'https://www.youtube.com/@SovietWomble/videos', 'https://www.youtube.com/@TastyPC/videos', 'https://www.youtube.com/@TechnologyConnections/videos', 'https://www.youtube.com/@TechnologyConnextras/videos', 'https://www.youtube.com/@Telepurte/videos', 'https://www.youtube.com/@TerminalMontage/videos', 'https://www.youtube.com/@TheCryptoNaturalist/videos', 'https://www.youtube.com/@TomScottGo/videos', 'https://www.youtube.com/@TravelsWithGeordie/videos', 'https://www.youtube.com/@TripleAughtDesign000/videos', 'https://www.youtube.com/@UnderDunnOfficial/videos', 'https://www.youtube.com/@UnusualVideos', 'https://www.youtube.com/@UrbanAgoge7598/videos', 'https://www.youtube.com/@Videodrome2503/videos', 'https://www.youtube.com/@ZackFreedman/videos', 'https://www.youtube.com/@agingwheels/videos', 'https://www.youtube.com/@bleeptrack/videos', 'https://www.youtube.com/@cgpgrey/videos', 'https://www.youtube.com/@dreamsofcode/videos', 'https://www.youtube.com/@electronupdate/videos', 'https://www.youtube.com/@fasterthanlime/videos', 'https://www.youtube.com/@foni7/videos/videos', 'https://www.youtube.com/@glasgowcycles/videos', 'https://www.youtube.com/@greatscottlab/videos', 'https://www.youtube.com/@hak5/videos', 'https://www.youtube.com/@hamesjoffmann/videos', 'https://www.youtube.com/@jafromobile/videos', 'https://www.youtube.com/@jeriellsworth/videos', 'https://www.youtube.com/@kekeflipnote/videos', 'https://www.youtube.com/@ktzsystems/videos', 'https://www.youtube.com/@laurakampf/videos', 'https://www.youtube.com/@linguoermechanic/videos', 'https://www.youtube.com/@lockpickinglawyer/videos', 'https://www.youtube.com/@m0mcx/videos', 'https://www.youtube.com/@mark_loveless/videos', 'https://www.youtube.com/@markjessop8536/videos', 'https://www.youtube.com/@microship/videos', 'https://www.youtube.com/@mikeselectricstuff/videos', 'https://www.youtube.com/@mindy_cycling/videos', 'https://www.youtube.com/@onecyclistinlisbon/videos', 'https://www.youtube.com/@oxidecomputercompany4540/videos', 'https://www.youtube.com/@peacefulcuisine/videos', 'https://www.youtube.com/@r4nger5tube/videos', 'https://www.youtube.com/@ryoyatakashima/videos', 'https://www.youtube.com/@saveitforparts/videos', 'https://www.youtube.com/@scanlime/videos', 'https://www.youtube.com/@scanlimeinprogress/videos', 'https://www.youtube.com/@shiey/videos', 'https://www.youtube.com/@shugemery/videos', 'https://www.youtube.com/@simonegiertz/videos', 'https://www.youtube.com/@socketwench/videos', 'https://www.youtube.com/@synologyinc/videos', 'https://www.youtube.com/@theCodyReeder/videos', 'https://www.youtube.com/@theserialport/videos', 'https://www.youtube.com/@thomasnagy/videos', 'https://www.youtube.com/@windytan/videos', 'https://www.youtube.com/@xssfox/videos', 'https://www.youtube.com/@xylafoxlin/videos', 'https://www.youtube.com/playlist?list=PL-saUBvIJzOkjAw_vOac75v-x6EzNzZq-', 'https://www.youtube.com/playlist?list=PL0vZL9uwyfOFezIOiBjkdW3TTdn0Q_AKL', 'https://www.youtube.com/playlist?list=PLm4CTm39B2cXn_yHEteBw8EhJres9JJfq', 'https://www.youtube.com/watch?v=-4WGET2TeXQ&list=PL_lgEqY9K6UVaIOTeE9PxK0Wrr1DJDsm4&pp=iAQB']
Extracting cookies from firefox
[debug] Extracting cookies from: "/home/kevin/.mozilla/firefox/w0ho6ii0.default-esr/cookies.sqlite"
Extracted 2540 cookies from firefox
[debug] Encodings: locale UTF-8, fs utf-8, pref UTF-8, out utf-8, error utf-8, screen utf-8
[debug] yt-dlp version stable@2023.10.13 [b634ba742] (debian*)
[debug] Python 3.11.6 (CPython x86_64 64bit) - Linux-6.5.0-1-amd64-x86_64-with-glibc2.37 (OpenSSL 3.0.11 19 Sep 2023, glibc 2.37)
[debug] exe versions: ffmpeg 6.0-7 (setts), ffprobe 6.0-7, rtmpdump 2.4
[debug] Optional libraries: Cryptodome-3.11.0, brotli-1.0.9, certifi-2023.07.22, mutagen-1.46.0, secretstorage-3.3.3, sqlite3-3.43.2, websockets-10.4
[debug] Proxy map: {}
[debug] Loaded 1890 extractors
[debug] Loading archive file '/home/kevin/.config/ytget/archive'
[debug] Fetching release info: https://api.github.com/repos/yt-dlp/yt-dlp/releases/latest
Available version: stable@2023.10.13, Current version: stable@2023.10.13
yt-dlp is up to date (stable@2023.10.13)
[TwitchVideos] Extracting URL: https://www.twitch.tv/fasterthanlime/videos
[download] Downloading playlist: fasterthanlime - All Videos sorted by Date
[TwitchVideos] fasterthanlime: Downloading Videos GraphQL page 1
[TwitchVideos] Playlist fasterthanlime - All Videos sorted by Date: Downloading 1 items of 1
[download] v500579101: Writing our sample program in IR then compiling it works for the first time! has already been recorded in the archive
[download] Finished downloading playlist: fasterthanlime - All Videos sorted by Date
[TwitchVideos] Extracting URL: https://www.twitch.tv/princessxen/videos
[download] Downloading playlist: princessxen - All Videos sorted by Date
[TwitchVideos] princessxen: Downloading Videos GraphQL page 1
[TwitchVideos] Playlist princessxen - All Videos sorted by Date: Downloading 6 items of 6
[download] v1939330794: Beat Saber Workout has already been recorded in the archive
[download] v1939328938: Beat Saber Workout has already been recorded in the archive
[download] v1484123245: fly.io stream has already been recorded in the archive
[download] v1453924524: Minecraft Server has already been recorded in the archive
[download] v1248970212: Highlight: Halo Infinite VTubing Test has already been recorded in the archive
[download] v206304626: Glorious snipes has already been recorded in the archive
[download] Finished downloading playlist: princessxen - All Videos sorted by Date
[TwitchVideos] Extracting URL: https://www.twitch.tv/thekuto/videos
[download] Downloading playlist: thekuto - All Videos sorted by Date
[TwitchVideos] thekuto: Downloading Videos GraphQL page 1
[TwitchVideos] Playlist thekuto - All Videos sorted by Date: Downloading 1 items of 1
[download] v1942633183: im tired but im tryin' has already been recorded in the archive
[download] Finished downloading playlist: thekuto - All Videos sorted by Date
[TwitchVideos] Extracting URL: https://www.twitch.tv/xssfox/videos
[download] Downloading playlist: xssfox - All Videos sorted by Date
[TwitchVideos] xssfox: Downloading Videos GraphQL page 1
[TwitchVideos] Playlist xssfox - All Videos sorted by Date: Downloading 11 items of 11
[download] v1937727573: meow has already been recorded in the archive
[download] v1924092158: meow has already been recorded in the archive
[download] v1924059263: meow has already been recorded in the archive
[download] v1924010831: meow has already been recorded in the archive
[download] v1923993261: meow has already been recorded in the archive
[download] v1922684458: Zelda has already been recorded in the archive
[download] v1914040197: Zelda has already been recorded in the archive
[download] v1635676473: Notes inside walls has already been recorded in the archive
[download] Downloading item 9 of 11
[twitch:vod] Extracting URL: https://www.twitch.tv/videos/1208786812
[twitch:vod] 1208786812: Downloading stream metadata GraphQL
[twitch:vod] 1208786812: Downloading video access token GraphQL
[twitch:vod] 1208786812: Downloading m3u8 information
[twitch:vod] 1208786812: Downloading storyboard metadata JSON
[debug] Formats sorted by: hasvid, ie_pref, lang, quality, res, fps, hdr:12(7), vcodec:vp9.2(10), channels, acodec, size, br, asr, proto, vext, aext, hasaud, source, id
[info] v1208786812: Downloading 1 format(s): 1080p60
[info] There are no subtitles for the requested languages
[debug] Invoking hlsnative downloader on "https://d2vjef5jvl6bfs.cloudfront.net/4cfbd41ea09992765f7d_xssfox_42404442624_4836582198/chunked/highlight-1208786812.m3u8"
[hlsnative] Downloading m3u8 manifest
[hlsnative] Total fragments: 3
[download] Destination: /home/kevin/podcasts/video/youtube/xssfox/20211118 also in beatsaber if you wiggle your box it gets bigger for some reason .mp4
[download] Got error: HTTP Error 403: Forbidden. Retrying fragment 1 (1/10)...
[download] Got error: HTTP Error 403: Forbidden. Retrying fragment 1 (2/10)...
[download] Got error: HTTP Error 403: Forbidden. Retrying fragment 1 (3/10)...
[download] Got error: HTTP Error 403: Forbidden. Retrying fragment 1 (4/10)...
[download] Got error: HTTP Error 403: Forbidden. Retrying fragment 1 (5/10)...
[download] Got error: HTTP Error 403: Forbidden. Retrying fragment 1 (6/10)...
[download] Got error: HTTP Error 403: Forbidden. Retrying fragment 1 (7/10)...
[download] Got error: HTTP Error 403: Forbidden. Retrying fragment 1 (8/10)...
[download] Got error: HTTP Error 403: Forbidden. Retrying fragment 1 (9/10)...
[download] Got error: HTTP Error 403: Forbidden. Retrying fragment 1 (10/10)...
[download] fragment not found; Skipping fragment 1 ...
[download] Got error: HTTP Error 403: Forbidden. Retrying fragment 2 (1/10)...
[download] Got error: HTTP Error 403: Forbidden. Retrying fragment 2 (2/10)...
[download] Got error: HTTP Error 403: Forbidden. Retrying fragment 2 (3/10)...
[download] Got error: HTTP Error 403: Forbidden. Retrying fragment 2 (4/10)...
[download] Got error: HTTP Error 403: Forbidden. Retrying fragment 2 (5/10)...
[download] Got error: HTTP Error 403: Forbidden. Retrying fragment 2 (6/10)...
[download] Got error: HTTP Error 403: Forbidden. Retrying fragment 2 (7/10)...
[download] Got error: HTTP Error 403: Forbidden. Retrying fragment 2 (8/10)...
[download] Got error: HTTP Error 403: Forbidden. Retrying fragment 2 (9/10)...
[download] Got error: HTTP Error 403: Forbidden. Retrying fragment 2 (10/10)...
[download] fragment not found; Skipping fragment 2 ...
[download] Got error: HTTP Error 403: Forbidden. Retrying fragment 3 (1/10)...
[download] Got error: HTTP Error 403: Forbidden. Retrying fragment 3 (2/10)...
[download] Got error: HTTP Error 403: Forbidden. Retrying fragment 3 (3/10)...
[download] Got error: HTTP Error 403: Forbidden. Retrying fragment 3 (4/10)...
[download] Got error: HTTP Error 403: Forbidden. Retrying fragment 3 (5/10)...
[download] Got error: HTTP Error 403: Forbidden. Retrying fragment 3 (6/10)...
[download] Got error: HTTP Error 403: Forbidden. Retrying fragment 3 (7/10)...
[download] Got error: HTTP Error 403: Forbidden. Retrying fragment 3 (8/10)...
[download] Got error: HTTP Error 403: Forbidden. Retrying fragment 3 (9/10)...
[download] Got error: HTTP Error 403: Forbidden. Retrying fragment 3 (10/10)...
[download] fragment not found; Skipping fragment 3 ...
ERROR: The downloaded file is empty
  File "/usr/bin/yt-dlp", line 8, in <module>
    sys.exit(main())
  File "/usr/lib/python3/dist-packages/yt_dlp/__init__.py", line 1008, in main
    _exit(*variadic(_real_main(argv)))
  File "/usr/lib/python3/dist-packages/yt_dlp/__init__.py", line 998, in _real_main
    return ydl.download(all_urls)
  File "/usr/lib/python3/dist-packages/yt_dlp/YoutubeDL.py", line 3510, in download
    self.__download_wrapper(self.extract_info)(
  File "/usr/lib/python3/dist-packages/yt_dlp/YoutubeDL.py", line 3485, in wrapper
    res = func(*args, **kwargs)
  File "/usr/lib/python3/dist-packages/yt_dlp/YoutubeDL.py", line 1556, in extract_info
    return self.__extract_info(url, self.get_info_extractor(key), download, extra_info, process)
  File "/usr/lib/python3/dist-packages/yt_dlp/YoutubeDL.py", line 1567, in wrapper
    return func(self, *args, **kwargs)
  File "/usr/lib/python3/dist-packages/yt_dlp/YoutubeDL.py", line 1723, in __extract_info
    return self.process_ie_result(ie_result, download, extra_info)
  File "/usr/lib/python3/dist-packages/yt_dlp/YoutubeDL.py", line 1852, in process_ie_result
    return self.__process_playlist(ie_result, download)
  File "/usr/lib/python3/dist-packages/yt_dlp/YoutubeDL.py", line 1996, in __process_playlist
    entry_result = self.__process_iterable_entry(entry, download, collections.ChainMap({
  File "/usr/lib/python3/dist-packages/yt_dlp/YoutubeDL.py", line 1567, in wrapper
    return func(self, *args, **kwargs)
  File "/usr/lib/python3/dist-packages/yt_dlp/YoutubeDL.py", line 2028, in __process_iterable_entry
    return self.process_ie_result(
  File "/usr/lib/python3/dist-packages/yt_dlp/YoutubeDL.py", line 1835, in process_ie_result
    return self.process_ie_result(
  File "/usr/lib/python3/dist-packages/yt_dlp/YoutubeDL.py", line 1782, in process_ie_result
    ie_result = self.process_video_result(ie_result, download=download)
  File "/usr/lib/python3/dist-packages/yt_dlp/YoutubeDL.py", line 2921, in process_video_result
    self.process_info(new_info)
  File "/usr/lib/python3/dist-packages/yt_dlp/YoutubeDL.py", line 3387, in process_info
    success, real_download = self.dl(temp_filename, info_dict)
  File "/usr/lib/python3/dist-packages/yt_dlp/YoutubeDL.py", line 3108, in dl
    return fd.download(name, new_info, subtitle)
  File "/usr/lib/python3/dist-packages/yt_dlp/downloader/common.py", line 455, in download
    ret = self.real_download(filename, info_dict)
  File "/usr/lib/python3/dist-packages/yt_dlp/downloader/hls.py", line 375, in real_download
    return self.download_and_append_fragments(ctx, fragments, info_dict)
  File "/usr/lib/python3/dist-packages/yt_dlp/downloader/fragment.py", line 527, in download_and_append_fragments
    return self._finish_frag_download(ctx, info_dict)
  File "/usr/lib/python3/dist-packages/yt_dlp/downloader/fragment.py", line 301, in _finish_frag_download
    self.report_error('The downloaded file is empty')
  File "/usr/lib/python3/dist-packages/yt_dlp/YoutubeDL.py", line 1045, in report_error
    self.trouble(f'{self._format_err("ERROR:", self.Styles.ERROR)} {message}', *args, **kwargs)
  File "/usr/lib/python3/dist-packages/yt_dlp/YoutubeDL.py", line 973, in trouble
    tb_data = traceback.format_list(traceback.extract_stack())


[download] v1208783798: Upside down saber has already been recorded in the archive
[download] v1199488815: Charge Controller first! has already been recorded in the archive
[download] Finished downloading playlist: xssfox - All Videos sorted by Date
[youtube:tab] Extracting URL: https://www.youtube.com/@11foot8plus8/videos
[youtube:tab] @11foot8plus8/videos: Downloading webpage
[debug] [youtube:tab] Selected tab: 'videos' (videos), Requested tab: 'videos'
[download] Downloading playlist: yovo68 - Videos
[debug] [youtube:tab] Extracted SAPISID cookie
[youtube:tab] UCXX0RWOIBjt4o3ziHu-6a5A page 1: Downloading API JSON
[youtube:tab] UCXX0RWOIBjt4o3ziHu-6a5A page 2: Downloading API JSON
[youtube:tab] UCXX0RWOIBjt4o3ziHu-6a5A page 3: Downloading API JSON
[youtube:tab] UCXX0RWOIBjt4o3ziHu-6a5A page 4: Downloading API JSON
[youtube:tab] UCXX0RWOIBjt4o3ziHu-6a5A page 5: Downloading API JSON
[youtube:tab] Playlist yovo68 - Videos: Downloading 179 items of 179
[download] L7kucKmcoBQ: Boxtruck crash sprays debris at the 11foot8 bridge has already been recorded in the archive
[download] oVpceWrLtWk: Speeding truck runs red light and hits the 11foot8+8 bridge has already been recorded in the archive
[download] dXF7Hx4VHXU: Another left turn crash at the 11foot8+8 bridge has already been recorded in the archive
[download] 8LK5RzZDJoQ: Camper trailer loses equipment at the 11foot8+8 bridge has already been recorded in the archive
[download] WLXxQjIuzqQ: Truck turns left and hits the 11foot8+8 bridge has already been recorded in the archive
[download] Vq04MeNcRUM: Semi truck loses stacks at the 11foot8+8 bridge has already been recorded in the archive
[download] SWTY2Pi1uKA: Roof ripper at the 11foot8+8 bridge has already been recorded in the archive
[download] 3jStdSyYpOA: Roof removal at the 11foot8+8 bridge has already been recorded in the archive
[download] gbRYOMClLME: Rental truck crash debris hits innocent vehicle at the 11foot8+8 bridge has already been recorded in the archive
[download] ylcdW03BV2c: Boxtruck tries to sneak up to the 11foot8+8 bridge has already been recorded in the archive
[download] tJIJ4ZpHAk0: Semi destroys fairing at the 11foot8+8 bridge has already been recorded in the archive
[download] mPUL2SQ77uQ: Perfect peel at the 11foot8+8 bridge has already been recorded in the archive
[download] eyRFjRSVQtk: Another delivery truck scrapes the roof at the 11foot8+8 bridge has already been recorded in the archive
[download] YO-17RYxXhA: Reefer truck makes a mess at the 11foot8+8 bridge has already been recorded in the archive
[download] VxOUG87rxDA: Rental boxtruck gets stuck as train crosses the 11foot8+8 bridge has already been recorded in the archive
[download] zJHmOGSgTIw: Speeding delivery truck scrapes the roof at the 11foot8+8 bridge has already been recorded in the archive
[download] X-ErHcOTa6w: Camper A/C units chewed off by hungry 11foot8+8 bridge has already been recorded in the archive
[download] KD4RXrI0ZWU: Crane truck almost defeats the 11foot8+8 bridge has already been recorded in the archive
[download] ak9uhkYveP4: Semi truck gets fairing stuck at the 11foot8+8 bridge has already been recorded in the archive
[download] -CmDZ-oEtB0: 11foot8+8 2020 crash compilation has already been recorded in the archive
[download] HR5MlZHA1fo: HVAC truck comes in hot and gets stopped cold at the 11foot8+8 bridge has already been recorded in the archive
[download] ThGcKwwFlaQ: Camping trailer gets A/C deleted at the 11foot8+8 bridge has already been recorded in the archive
[download] yZ766MY_Cog: Reefer truck breaks the spell at the 11foot8+8 bridge has already been recorded in the archive
[download] cZrOcCXNq5c: Social distancing violation at the 11foot8+8 bridge has already been recorded in the archive
[download] yO___E_sEvM: One last snack for the bridge before Durham goes quiet has already been recorded in the archive
[download] Lp1B6PS81Uk: Snowday snack for the 11foot8+8 bridge has already been recorded in the archive
[download] YQssl0sM9As: Partial Penske Peel at the 11foot8+8 bridge has already been recorded in the archive
[download] jdwleG_xFwI: Furniture goes flying at the 11foot8+8 bridge has already been recorded in the archive
[download] -VokezIMLKE: The new canopener nibbles on a box truck has already been recorded in the archive
[download] CiiEPSKrCMk: The new, shiny 11foot8 +8 canopener is open for business has already been recorded in the archive
[download] YPt4ijPFzc8: Raising the 11foot8 bridge by 8 inches has already been recorded in the archive
[download] 6nquHli7P5s: Boxtruck carnage on Friday the 13th at the 11foot8 bridge has already been recorded in the archive
[download] UDTV1uHjyIM: Budget not low enough for the 11foot8 bridge has already been recorded in the archive
[download] raptWPQbkMg: Preparing to raise the 11foot8 bridge has already been recorded in the archive
[download] dqOl5VgSem4: Excavator on trailer "bites" back at the 11foot8 bridge has already been recorded in the archive
[download] dRFXUplr2-E: Bucket truck gets chewed up at the 11foot8 bridge has already been recorded in the archive
[download] Z2ipi6bsRU8: Two trucks tango at the 11foot8 bridge has already been recorded in the archive
[download] TvxDhgDjVCA: Speeding semi gets smashed up at the 11foot8 bridge has already been recorded in the archive
[download] v_Lyvgy5DEs: Boxtruck wrestles with 11foot8 bridge while train crosses has already been recorded in the archive
[download] H2_cvoDdBT4: Pedestrian dodges truck crash debris at the 11foot8 bridge has already been recorded in the archive
[download] MR3T2G0u_74: Pedestrian escapes reefer truck carnage at the 11foot8 bridge has already been recorded in the archive
[download] V7DL7GkJgHA: Red light runner hits the 11foot8 bridge has already been recorded in the archive
[download] tcjwr2TjZCM: Semi de-cab-itated at the 11foot8 bridge has already been recorded in the archive
[download] ZxcrGHJzu5c: Truck crashes at the 11foot8 bridge and then hits a car has already been recorded in the archive
[download] zSy0yZWSAL0: Red light runner crashes at the 11foot8 bridge has already been recorded in the archive
[download] Qig6PW6LNy4: Snowstorm time lapse (no crash) has already been recorded in the archive
[download] ZpjrcTLADlw: Boxtruck returns to challenge the 11foot8 bridge has already been recorded in the archive
[download] LH83S869cbs: 11foot8 canopener traps truck has already been recorded in the archive
[download] 9EkToATjUJ0: Wakeup call at the 11foot8 bridge has already been recorded in the archive
[download] D7fvQVPS0JM: Boxtruck crashes at 11foot8 and then hits another low bridge has already been recorded in the archive
[download] CuZiegGDN_k: Early morning canopener at the 11foot8 bridge has already been recorded in the archive
[download] i-e9JW0wje0: 11foot8 bridge mauls camper's A/C unit has already been recorded in the archive
[download] b5kpgaFT2bw: Red-light runner crashes truck into the 11foot8 bridge has already been recorded in the archive
[download] iHga_jh1JDk: Flooding during a rainstorm at the 11foot8 bridge has already been recorded in the archive
[download] _osCPYPywnU: Secret military equipment gets banged up at the 11foot8 bridge has already been recorded in the archive
[download] zvL4ONNnJ44: Mobile health RV gets stuck under the 11foot8 bridge has already been recorded in the archive
[download] BK7roTklGyg: Foggy morning canopener truck crash at the 11foot8 bridge has already been recorded in the archive
[download] P3gsmDx6Nig: Some drivers get it, some don't, at the 11foot8 bridge has already been recorded in the archive
[download] qxVQ7ZEG1RU: New Year's Eve Penske Peel at the 11foot8 bridge has already been recorded in the archive
[download] aBLH8qvaIFg: Moving truck obliterated by the 11foot8 bridge has already been recorded in the archive
[download] yWsSYzMGZws: Truck runs light and rips off roof at the 11foot8 bridge has already been recorded in the archive
[download] I0BJmC6u7MU: Speeding truck runs light and pops a wheelie at the 11foot8 bridge has already been recorded in the archive
[download] gZ4SxlDdUVw: Right turn was the wrong move at the 11foot8 bridge has already been recorded in the archive
[download] eCyhGcD6DTc: Box truck tries to sneak under the 11foot8 bridge has already been recorded in the archive
[download] P2QW9CiHpZA: Clean hit at the 11foot8 bridge has already been recorded in the archive
[download] gIVK6XsoRSk: Another rental truck bites the dust at the 11foot8 bridge has already been recorded in the archive
[download] sbaeJjQCX9k: Crash #118 at the 11foot8 bridge has already been recorded in the archive
[download] bCyMQYiTqFo: Hope lost and bumped into the 11foot8 bridge has already been recorded in the archive
[download] IHqucc7gl_c: Boxtruck beats the red light and gets a bit beat up has already been recorded in the archive
[download] Wcnyue4tWOs: Car crash at the 11foot8 bridge takes out fire hydrant has already been recorded in the archive
[download] O_IJWhr_ORI: RV scrapes top at the 11foot8 bridge has already been recorded in the archive
[download] n73xZf20O8Y: Box of rental truck is destroyed by the 11foot8 bridge has already been recorded in the archive
[download] Os5BAOBtEMM: Boxtruck gets jammed under the 11foot8 bridge has already been recorded in the archive
[download] _5ozsuaAuBI: Reefer truck just barely escapes from the 11foot8 bridge has already been recorded in the archive
[download] SpwYO7UQ6kY: Log truck bumps into the 11foot8 bridge has already been recorded in the archive
[download] 027W59y45sE: RV gets a close shave at the 11foot8 bridge has already been recorded in the archive
[download] iQfSvIgIs_M: Very hungry canopener bridge defeats fancy, new warning system has already been recorded in the archive
[download] 1LNEQxJM9ZE: New warning signage at the 11foot8 bridge has already been recorded in the archive
[download] LmTEoZJA5-w: Boxtruck gets peeled open and stuck at the 11foot8 bridge has already been recorded in the archive
[download] Wy7nlA7zlDM: Dazed and confused at the 11foot8 bridge has already been recorded in the archive
[download] CVSTAh8uGoU: Cintas truck was not READY for the 11foot8 bridge has already been recorded in the archive
[download] Ne3WPt_H6rU: Industrial vacuum truck smashes into the 11foot8 bridge has already been recorded in the archive
[download] 5KLyNPqFm9c: Boxtruck crashes and leaves present at the 11foot8 bridge has already been recorded in the archive
[download] 7688rIoPW_c: Fast Forward 2 - extended footage of 11foot8 crash 102 has already been recorded in the archive
[download] wfoEbIfm0cU: Fast Forward- a new year and another crash at the 11foot8 bridge has already been recorded in the archive
[download] McA7c0quJf0: Boxtruck scrapes top at the 11foot8 bridge has already been recorded in the archive
[download] _94aZG4rHS0: Rental truck sliced open in crash 100 at the 11foot8 bridge has already been recorded in the archive
[download] cytUSjHGY4I: Camper A/C ripped off at the 11foot8 bridge has already been recorded in the archive
[download] tLhxPfKE8V0: Another reefer truck stuck under the 11foot8 bridge has already been recorded in the archive
[download] lSls86gYyyY: Walmart truck hits 11foot8 bridge has already been recorded in the archive
[download] 3DrgcmCEqLI: Insulation truck crashes at the 11foot8 bridge has already been recorded in the archive
[download] chLpqHTE3HQ: Reefer truck scrapes top at the 11foot8 bridge has already been recorded in the archive
[download] ZqSkobhzXyc: Truck driver makes a bad move at the 11foot8 bridge has already been recorded in the archive
[download] nOKstgQLRzk: Two men and a truck that almost fit under the 11foot8 bridge has already been recorded in the archive
[download] yvlvfY6lOyg: Two crashes in one morning at the 11foot8 bridge has already been recorded in the archive
[download] 69G8TxSmW4g: Rental truck hits the bridge and everyone helps clean up has already been recorded in the archive
[download] QJbBcjCuH9Y: Dumpster truck's tarp cover hits 11foot8 bridge has already been recorded in the archive
[download] hpgaeTXXSdQ: Truck turns right and slams into the 11foot8 bridge has already been recorded in the archive
[download] yda4f8sIjpU: Truck ripped open at the 11foot8 bridge has already been recorded in the archive
[download] UrEsaMu45hA: Another rental truck gets stuck under the 11foot8 bridge has already been recorded in the archive
[download] tdYBSLZkTRI: Car accident: hit-and-run at the 11foot8 bridge has already been recorded in the archive
[download] cL-AezmXco8: NIght time crash damages forklift on truck (audio only) has already been recorded in the archive
[download] 5JKYMWPSAck: Flatbed truck loses load at the 11foot8 bridge has already been recorded in the archive
[download] 8lrHb5Khy3I: Boxtruck briefly stuck at the 11foot8 bridge has already been recorded in the archive
[download] 4o-Gh1496x4: A new year and another 11foot8 boxtruck canopener has already been recorded in the archive
[download] Jm3lC-xF2gI: Truck driver hesitates and then hits the 11foot8 bridge anyway has already been recorded in the archive
[download] 9Gc8PoQs5KI: Crash #80 at the 11foot8 bridge - bump and go has already been recorded in the archive
[download] orbhVCSpmDE: The canopener strikes again has already been recorded in the archive
[download] whMCjUV4Ciw: Another truly spectacular crash at the 11foot8 bridge has already been recorded in the archive
[download] Ov7h-vnRCvk: Another truck stuck for an hour under the 11foot8 bridge has already been recorded in the archive
[download] rg3ghmyjpSE: Speeding truck pops a wheelie at the 11foot8 bridge has already been recorded in the archive
[download] Pg-vv2UjYl4: Another camper loses A/C to the 11foot8 bridge has already been recorded in the archive
[download] 0-2Y60zoNxc: Mattress truck stuck for an hour under the 11foot 8 bridge has already been recorded in the archive
[download] TUzwAcm0pA4: Truck smashes front of the box at the 11foot8 bridge has already been recorded in the archive
[download] 2sKjp_VjRq4: Dumpster hits crashbeam at the 11foot8 bridge has already been recorded in the archive
[download] djJc-kgfNYI: Truck rips back off at the 11foot8 bridge has already been recorded in the archive
[download] srKXDqdgf5k: Rental truck hits bridge and crash debris damages SUV has already been recorded in the archive
[download] 7tGP61EcjDY: Truck scrapes top under 11foot8 bridge in Feb. has already been recorded in the archive
[download] Ooio6HZg13s: Semi bends tall stacks in February at 11foot8 bridge has already been recorded in the archive
[download] wQBwDnRvdIg: 11foot8 bridge fall compilation has already been recorded in the archive
[download] h6BiAr1hAyM: May 2013 - new signage and another crash has already been recorded in the archive
[download] FXM1BSSkwrc: 12-foot stacks at the 11foot8 bridge has already been recorded in the archive
[download] F95SAYCT3P4: Slow truck crash while train crosses the 11foot8 trestle has already been recorded in the archive
[download] v66fBnNy7zo: Another boxtruck gets ripped open at the 11foot8 bridge has already been recorded in the archive
[download] 0lEFKMqp3qQ: Crash #60 at the 11foot8 bridge has already been recorded in the archive
[download] -jEuPtknsRQ: 2013 starts with a bang at the 11foot8 bridge has already been recorded in the archive
[download] P60wldP2AFA: Carolina classic canopener at the 11foot8 bridge has already been recorded in the archive
[download] hpUsLb95eT8: Another boxtruck is destroyed at the 11foot8 bridge has already been recorded in the archive
[download] ufEJuALS5Z4: Storage Pod takes a pounding at the 11foot8 bridge has already been recorded in the archive
[download] -Jd82SAY_n8: September truck crashes at the 11foot8 bridge has already been recorded in the archive
[download] S5d9O9N841s: Rental truck and RV hit the 11foot8 bridge has already been recorded in the archive
[download] 4vGWwSHwqs0: The canopener bridge claims three trucks has already been recorded in the archive
[download] i7nQOsQeqg4: Semi gets bent out of shape at the 11foot8 bridge has already been recorded in the archive
[download] JEgTrV58388: Just scrapin' by at the 11foot8 bridge has already been recorded in the archive
[download] 9cX07tysvZE: Can-not-truck hits 11foot8 bridge has already been recorded in the archive
[download] i7IlRbECGf8: Camper tries to sneak up on the 11foot8 bridge has already been recorded in the archive
[download] QT0ckJiw5sM: Sneaking up on the 11foot8 bridge has already been recorded in the archive
[download] L5D7UuA6g7o: Bus crashes into bridge and loses A/C has already been recorded in the archive
[download] JOl2cyxnmMc: Truck scrapes top at the 11foot8 bridge has already been recorded in the archive
[download] NVb0Va52MWs: Spectacular canopener at the 11foot8 bridge has already been recorded in the archive
[download] RQ5mUP4QPAo: Truck crash number 40 has already been recorded in the archive
[download] FJHNnsmcmtY: Un-bale-lievable crash at the 11foot8 bridge has already been recorded in the archive
[download] r9lf38iqjik: Recent crashes and accidents at the 11foot8 bridge has already been recorded in the archive
[download] -3vKpyAZYcE: Flooding under the 11foot8 bridge has already been recorded in the archive
[download] c5BhSa3A0sk: The actual clearance of the 11foot8 bridge has already been recorded in the archive
[download] 5zmz97mRNBM: Support the 11foot8 Doughman Team has already been recorded in the archive
[download] 5_ifd9JaubY: Rough day at the 11foot8 bridge has already been recorded in the archive
[download] l1XeBmcOfVE: Speeding rental truck hits 11foot8 bridge has already been recorded in the archive
[download] -9NusQdPYvY: speeding truck bends 11foot8 crash beam has already been recorded in the archive
[download] vj8Bkn9kaLE: The Good, The Bad and Some Ugly Crashes has already been recorded in the archive
[download] bCvPqaSyOos: 11foot8 bridge removes A/C from camper has already been recorded in the archive
[download] TlGimvSJNLs: Bump and run at 11foot8 bridge has already been recorded in the archive
[download] JEWR1Jjeck4: Classic canopener at the 11foot8 bridge has already been recorded in the archive
[download] Sh1nFd4oqcc: Flying debris from truck crash slams cars has already been recorded in the archive
[download] Z3yiRStQaHU: Truck hits 11foot8 trestle as train is crossing has already been recorded in the archive
[download] u3MUqRRlNmk: Truck with freezer crashes into 11foot8 bridge has already been recorded in the archive
[download] fgreeUKQOts: Spectacular truck crash at 11foot8 bridge has already been recorded in the archive
[download] ec3SXkIXYnU: Boxtrucks scrape top under low bridge has already been recorded in the archive
[download] oKJTZwjvmj8: Boxtruck crashes into bridge and looses top has already been recorded in the archive
[download] 17_wwjUDktw: Slow truck hits the bridge has already been recorded in the archive
[download] 2LJL3k11JAs: Another careless truck driver endangers pedestrian has already been recorded in the archive
[download] 9PkS6LnirRI: 13 crashes in 13 months has already been recorded in the archive
[download] _-n0NqJKse8: Two Men, a Truck  and a Bridge has already been recorded in the archive
[download] 9TkbwgZpb0U: Camper loses A/C unit under bridge has already been recorded in the archive
[download] gVLXx-36Wlc: The second topless boxtruck in a week has already been recorded in the archive
[download] kebw52V2mG8: Big John in "Will the Truck Fit?" has already been recorded in the archive
[download] T6PLzHxHDjU: Furniture truck gets stuck under RR bridge has already been recorded in the archive
[download] I9LK2MRapb8: Boxtruck decapitated on Friday the 13th has already been recorded in the archive
[download] _KhfOJijStM: Double header - two car crashes within 5 Minutes has already been recorded in the archive
[download] KTePHT443VQ: Boxtruck gets stuck under train trestle has already been recorded in the archive
[download] vKEzIfPuHwU: Will the Truck Fit? has already been recorded in the archive
[download] z38kPaYb3iQ: Another speeding boxtruck peels the top off has already been recorded in the archive
[download] jsIkw04UkvQ: Boxtruck loses top and keeps going has already been recorded in the archive
[download] ugdv0A9oi20: And another boxtruck loses its top has already been recorded in the archive
[download] 1Nvd5SotUXg: Another box truck scrapes the top has already been recorded in the archive
[download] 3WslPJfttI0: Boxtruck goes topless under bridge and backs out has already been recorded in the archive
[download] 7z935_9K6ro: boxtruck goes topless and gets stuck under bridge has already been recorded in the archive
[download] xpwASaUsLis: Box truck goes topless (longer version) has already been recorded in the archive
[download] eEkb3EhZ2o8: Boxtruck goes topless under railroad trestle has already been recorded in the archive
[download] Finished downloading playlist: yovo68 - Videos
[youtube:tab] Extracting URL: https://www.youtube.com/@Airforceproud95/videos
[youtube:tab] @Airforceproud95/videos: Downloading webpage
^C
ERROR: Interrupted by user
```



Discussion:

Resolving patch:
diff --git a/yt_dlp/YoutubeDL.py b/yt_dlp/YoutubeDL.py
--- a/yt_dlp/YoutubeDL.py
+++ b/yt_dlp/YoutubeDL.py
@@ -4242,7 +4242,7 @@ def _write_thumbnails(self, label, info_dict, filename, thumb_filename_base=None
             self.write_debug(f'Skipping writing {label} thumbnail')
             return ret
 
-        if not self._ensure_dir_exists(filename):
+        if thumbnails and not self._ensure_dir_exists(filename):
             return None
 
         for idx, t in list(enumerate(thumbnails))[::-1]:


Test patch: