Disclaimer: I just want to mention that I'm not a techy person and I don't really know how to code so please explain as simple as possible!
So I recently changed from youtube-dl to yt-dlp and so far I'm having issues with embedding the thumbnail to my videos
Here is the command I use:
yt-dlp -f bestvideo*+bestaudio/best --sleep-interval 10 --write-sub --sub-lang en --embed-subs --add-metadata --embed-thumbnail https://www.youtube.com/watch?v=Ht4MUoQsRnI -o "[%(upload_date)s] %(title)s.%(ext)s"
However I always get this issue:
"WARNING: webm doesn't support embedding a thumbnail, mkv will be used"
Does anyone know how to fix this?
The goal was to download a 720 resolution video with the best audio available, embed the thumbnail to the file, and save it as an mp4. I'm not sure why the file was saved as an mkv. But it seems like the proper thumbnail was written to the file, but VLC is not displaying the thumbnail as it's "cover art". I used Tag Editor to extract the thumbnail to view it (it is the correct thumbnail). I wanted to ask what I missed in regards to it being saved as an mkv vs. mp4, and also wanted to make sure I'm not missing something else in regards to the thumbnail.
picture of the yt thumbnail
picture showing the thumbnail is attached to the file
picture showing vlc is not identifying the album art
picture of the file
verbose log below:
C:\Users\Mike\Downloads\youtubedl>yt-dlp -f "bestvideo[height<=720][ext=mp4]+bestaudio/mp4" --embed-thumbnail --verbose https://youtu.be/RjO0JCSR7K0?si=mP-qqd_PVG3seshA [debug] Command-line config: ['-f', 'bestvideo[height<=720][ext=mp4]+bestaudio/mp4', '--embed-thumbnail', '--verbose', 'https://youtu.be/RjO0JCSR7K0?si=mP-qqd_PVG3seshA'] [debug] Encodings: locale cp1252, fs utf-8, pref cp1252, out utf-8, error utf-8, screen utf-8 [debug] yt-dlp version stable@2024.04.09 from yt-dlp/yt-dlp [ff0779267] (pip) [debug] Python 3.11.0 (CPython AMD64 64bit) - Windows-10-10.0.22631-SP0 (OpenSSL 1.1.1q 5 Jul 2022) [debug] exe versions: ffmpeg git-2020-03-12-675bb1f, ffprobe git-2020-03-12-675bb1f [debug] Optional libraries: Cryptodome-3.16.0, brotli-1.0.9, certifi-2022.12.07, mutagen-1.47.0, requests-2.31.0, sqlite3-3.38.4, urllib3-2.1.0, websockets-12.0 [debug] Proxy map: {} [debug] Request Handlers: urllib, requests, websockets [debug] Loaded 1810 extractors [youtube] Extracting URL: https://youtu.be/RjO0JCSR7K0?si=mP-qqd_PVG3seshA [youtube] RjO0JCSR7K0: Downloading webpage [youtube] RjO0JCSR7K0: Downloading ios player API JSON [youtube] RjO0JCSR7K0: Downloading android player API JSON WARNING: [youtube] Skipping player responses from android clients (got player responses for video "aQvGIIdgFDM" instead of "RjO0JCSR7K0") [debug] Loading youtube-nsig.17fd9675 from cache [debug] [youtube] Decrypted nsig ghxr4G0-lNlobt => sH2E3Mkt3Qp5Uw [debug] Loading youtube-nsig.17fd9675 from cache [debug] [youtube] Decrypted nsig Gw6mrP8U7koxMg => 86gcavseAv4_Xg [youtube] RjO0JCSR7K0: Downloading m3u8 information [debug] Sort order given by extractor: quality, res, fps, hdr:12, source, vcodec:vp9.2, channels, acodec, lang, proto [debug] Formats sorted by: hasvid, ie_pref, quality, res, fps, hdr:12(7), source, vcodec:vp9.2(10), channels, acodec, lang, proto, size, br, asr, vext, aext, hasaud, id [info] RjO0JCSR7K0: Downloading 1 format(s): 609+251 [info] Downloading video thumbnail 41 ... [info] Writing video thumbnail 41 to: $2 Cheesy Bread Meal Prep for Fat Loss [RjO0JCSR7K0].webp WARNING: webm doesn't support embedding a thumbnail, mkv will be used [debug] Invoking hlsnative downloader on "https://manifest.googlevideo.com/api/manifest/hls_playlist/expire/1715483004/ei/HN0_ZoLPIvKJkucP-cWBgAE/ip/##.###.###.##/id/4633b4242491ecad/itag/609/source/youtube/requiressl/yes/ratebypass/yes/pfa/1/wft/1/sgovp/clen%3D73044674%3Bdur%3D783.733%3Bgir%3Dyes%3Bitag%3D247%3Blmt%3D1712792024826659/rqh/1/hls_chunk_host/rr4---sn-ab5l6nrl.googlevideo.com/xpc/EgVo2aDSNQ%3D%3D/mh/Bt/mm/31,26/mn/sn-ab5l6nrl,sn-p5qddn7d/ms/au,onr/mv/m/mvi/4/pl/19/initcwndbps/1035000/vprv/1/playlist_type/DVR/dover/13/txp/5537434/mt/1715461251/fvip/3/short_key/1/keepalive/yes/sparams/expire,ei,ip,id,itag,source,requiressl,ratebypass,pfa,wft,sgovp,rqh,xpc,vprv,playlist_type/sig/AJfQdSswRAIgR6ocnVw4ER1n6EXi2PT7eqn7Xyau4ABGB-eEyw-CUOQCIFXz8x5NGnrSl1w_B2w5f-tIDuxczvywe53NN8wOxbJE/lsparams/hls_chunk_host,mh,mm,mn,ms,mv,mvi,pl,initcwndbps/lsig/AHWaYeowRQIgfaI4px16KeTeCC5uKNa_E1RqJ4IubYGgBH6IrAWhXf8CIQChwP8Xt9jXxkqnQ47Umt_Yre89LYTAKYd6slo1JrgOtg%3D%3D/playlist/index.m3u8" [hlsnative] Downloading m3u8 manifest [hlsnative] Total fragments: 150 [download] Destination: $2 Cheesy Bread Meal Prep for Fat Loss [RjO0JCSR7K0].f609.mp4 [debug] File locking is not supported. Proceeding without locking [download] 100% of 69.78MiB in 00:00:58 at 1.19MiB/s [debug] Invoking http downloader on "https://rr4---sn-ab5l6nrl.googlevideo.com/videoplayback?expire=1715483002&ei=Gt0_ZpvfK6WLkucPzr2luA4&ip=##.###.###.##&id=o-AFjz7IvhPDA5H_pzLxQwrM3mGkihGCefLMR-mLo2RYW8&itag=251&source=youtube&requiressl=yes&xpc=EgVo2aDSNQ%3D%3D&mh=Bt&mm=31%2C26&mn=sn-ab5l6nrl%2Csn-p5qlsndr&ms=au%2Conr&mv=m&mvi=4&pl=19&initcwndbps=966250&bui=AWRWj2T85zReDOY9HWPYf6tdOenoiCdc1o6rjolkvSs4zCReCAcI79BEoO93pl8mqZVfUyoWw0Dbj6jo&spc=UWF9f4ujdoBYqeNVesocytj3VP8ek94CeocF37RUEb5VpR81YtD2d3k&vprv=1&svpuc=1&mime=audio%2Fwebm&ns=sK2e2ucooPr_VSkN-EZ2LCEQ&rqh=1&gir=yes&clen=13955530&dur=783.761&lmt=1712780508447942&mt=1715461010&fvip=3&keepalive=yes&c=WEB&sefc=1&txp=5532434&n=86gcavseAv4_Xg&sparams=expire%2Cei%2Cip%2Cid%2Citag%2Csource%2Crequiressl%2Cxpc%2Cbui%2Cspc%2Cvprv%2Csvpuc%2Cmime%2Cns%2Crqh%2Cgir%2Cclen%2Cdur%2Clmt&sig=AJfQdSswRQIhAN72cGHB1PiwC815dFPgk-OyaiIOlLHugGe_960ejsRLAiAwiKv562Me496Se9nxu6MFpqZyCjipKzmjbNfQgsvRpw%3D%3D&lsparams=mh%2Cmm%2Cmn%2Cms%2Cmv%2Cmvi%2Cpl%2Cinitcwndbps&lsig=AHWaYeowRAIgeX_Q9PQOh1gx83b_8AP2g-_rp1xW_G6hVJX9swYTGnICIBPGW2jyjlZ0JugsVdxyl_QlQNeHpNB75t6Q51-UPzuX" [download] Destination: $2 Cheesy Bread Meal Prep for Fat Loss [RjO0JCSR7K0].f251.webm [download] 100% of 13.31MiB in 00:00:01 at 8.85MiB/s [Merger] Merging formats into "$2 Cheesy Bread Meal Prep for Fat Loss [RjO0JCSR7K0].mkv" [debug] ffmpeg command line: ffmpeg -y -loglevel repeat+info -i "file:$2 Cheesy Bread Meal Prep for Fat Loss [RjO0JCSR7K0].f609.mp4" -i "file:$2 Cheesy Bread Meal Prep for Fat Loss [RjO0JCSR7K0].f251.webm" -c copy -map 0:v:0 -map 1:a:0 -movflags +faststart "file:$2 Cheesy Bread Meal Prep for Fat Loss [RjO0JCSR7K0].temp.mkv" Deleting original file $2 Cheesy Bread Meal Prep for Fat Loss [RjO0JCSR7K0].f609.mp4 (pass -k to keep) Deleting original file $2 Cheesy Bread Meal Prep for Fat Loss [RjO0JCSR7K0].f251.webm (pass -k to keep) [debug] ffprobe command line: ffprobe -hide_banner -show_format -show_streams -print_format json "file:$2 Cheesy Bread Meal Prep for Fat Loss [RjO0JCSR7K0].mkv" [EmbedThumbnail] ffmpeg: Adding thumbnail to "$2 Cheesy Bread Meal Prep for Fat Loss [RjO0JCSR7K0].mkv" [debug] ffmpeg command line: ffmpeg -y -loglevel repeat+info -i "file:$2 Cheesy Bread Meal Prep for Fat Loss [RjO0JCSR7K0].mkv" -map 0 -dn -ignore_unknown -c copy -attach "file:$2 Cheesy Bread Meal Prep for Fat Loss [RjO0JCSR7K0].webp" -metadata:s:2 "mimetype=image/webp" -metadata:s:2 "filename=cover.webp" -movflags +faststart "file:$2 Cheesy Bread Meal Prep for Fat Loss [RjO0JCSR7K0].temp.mkv"
Need some advice here--up til recently, I used YouTube-dl but I stopped since my old computer broke. On my old computer, I was using YouTube-dl + ffmpg + atomic parsley so I could download the audio only of songs on YouTube, and also get the album art embedded from the video's thumbnail. This all took a lot of effort and struggling over two years ago when I got it set up, since I am not tech savvy so doing stuff in my Mac's Terminal was not easy.
Now, my new computer doesnt have that software installed and I also know YT-dl was getting super slow. Has YT-dlp been the main replacement? Or should I use something else?
All I want to be able to do is: download files that are 1) audio only, 2) the actual audio quality of the file that was uploaded to YouTube (not downgraded even more) and 3) retain the thumbnail art. Any suggestions? Really appreciate it!!
I am trying to extract audio as mp3 from youtube with metadata and the cover art. Currently I am using the below command from bash shell in termux.
youtube-dl -f $audioformat --extract-audio --audio-format mp3 $url -o $storagepath --embed-thumbnail --add-metadata --postprocessor-args "write_id3v1 1 -id3v2_version 3"
This actually downloads mp3 with embedded thumbnail. But when I am downloading multiple mp3 files afterwards the cover art gets messed up(the new mp3 replaces cover art of the first one). I tried several music players in android that uses the cover art of the first mp3 files as cover art of the others. If I move the mp3 files to different location then cover art gets blank. What am I missing here.
In windows I tried Windows Media Player and cover art shows correctly(so the problem is in android only). Also in android file manager thumbnail is correct but the cover art during playing the file is incorrect. Any help is appreciated.
I always pass the "--embed-thumbnail --embed-metadata" arguments, but DLP never actually does it.
In the CLI output, it'll indicate that it will use mkv since webm doesn't support thumbnails, and I can see the [Metadata] and [EmbedThumbnail] processes executing, but the final file is always missing the thumbnail, and the Details tab in Properties only has the video title, length, and url. Frame rate, resolution, and any other data are missing, and total bitrate is always displayed as 0kbps.
I can't tell what's going wrong. DLP is updated, and I didn't think I needed to specify a container. For reference, here is the full command I usually use:
"yt-dlp --embed-thumbnail --embed-metadata --abort-on-unavailable-fragment --ignore-errors [URL]"
Does anybody know what could be going wrong?
Hello guys, like the title says. Any Gui which supports these features?
I have a video that I want to embed a thumbnail to it, how do you do it without having to download the video?
i want the video thumbnail/cover to be exactly like youtube , but many of the videos seems to be embedded with the first frame of the video not the youtube thumbnail/photo
so how can i download a playlist with the exact video cover ?