{
"$type": "site.standard.document",
"bskyPostRef": {
"cid": "bafyreidjorlw6qfpoetn23swqwyyoydqzszc6uc7rek6j4hudfizx6ire4",
"uri": "at://did:plc:sdrucajkmwyzquirsttcd32f/app.bsky.feed.post/3mmgvdhyb6dk2"
},
"description": "Over the years, I keep facing this issue of upgrading yt-dlp using winget. I had to search the resolution over and over with many people pointing to different places, but only this worked for me, so I'm documenting it for myself. Background Winget is a pacakage manager for Windows. yt-dlp is a program to download...",
"path": "/2025/03/how-to-upgrade-yt-dlp-using-winget/",
"publishedAt": "2025-03-31T15:10:02.000Z",
"site": "at://did:plc:sdrucajkmwyzquirsttcd32f/site.standard.publication/3mmehtqssafr7",
"tags": [
"ffmpeg",
"winget",
"yt-dlp",
"Notes"
],
"textContent": "Over the years, I keep facing this issue of upgrading yt-dlp using winget. I had to search the resolution over and over with many people pointing to different places, but only this worked for me, so I’m documenting it for myself. Background Winget is a pacakage manager for Windows. yt-dlp is a program to download YouTube videos. This program has an optional dependency to ffmpeg. When ffmpeg is available to use, yt-dlp gives the full feature of video/audio manipulation, like coverting from one format to another, splitting/merging, etc. When installing yt-dlp through winget using: winget install yt-dlp Winget will also install this package called “Gyan.FFmpeg” and this package will make “ffmpeg” executable available for use in terminal, and therefore will make yt-dlp able to use ffmpeg too. Problem As documented in this GitHub issue yt-dlp.yt-dlp hard depends on Gyan.FFmpeg and no ability to use shared ffmeg, many users are facing issue with updating yt-dlp to latest version using winget upgrade yt-dlp. For me, the problem arise after doing the upgrade, as seen with this logs: PowerShell 7.5.0 PS C:\\PATH_TO_FOLDER> yt-dlp --version 2025.03.25 PS C:\\PATH_TO_FOLDER> ffmpeg -version ffmpeg version 7.1.1-full_build-www.gyan.dev Copyright (c) 2000-2025 the FFmpeg developers built with gcc 14.2.0 (Rev1, Built by MSYS2 project) [...redacted...] PS C:\\PATH_TO_FOLDER> winget upgrade yt-dlp Found yt-dlp [yt-dlp.yt-dlp] Version 2025.03.27 This application is licensed to you by its owner. Microsoft is not responsible for, nor does it grant any licenses to, third-party packages. This package requires the following dependencies: - Packages Gyan.FFmpeg (1/1) Found FFmpeg [Gyan.FFmpeg] Version 7.1.1 This application is licensed to you by its owner. Microsoft is not responsible for, nor does it grant any licenses to, third-party packages. Successfully verified installer hash Extracting archive... Successfully extracted archive Starting package install... Command line alias added: \"ffmpeg\" Command line alias added: \"ffplay\" Command line alias added: \"ffprobe\" Successfully installed Downloading https://github.com/yt-dlp/yt-dlp/releases/download/2025.03.27/yt-dlp.exe ██████████████████████████████ 17.2 MB / 17.2 MB Successfully verified installer hash Starting package install... Command line alias added: \"yt-dlp\" Successfully installed PS C:\\PATH_TO_FOLDER> yt-dlp --version 2025.03.27 PS C:\\PATH_TO_FOLDER> ffmpeg -version ffmpeg version 7.1.1-full_build-www.gyan.dev Copyright (c) 2000-2025 the FFmpeg developers built with gcc 14.2.0 (Rev1, Built by MSYS2 project) [...redacted...] PS C:\\PATH_TO_FOLDER> However, if I open a new terminal: PowerShell 7.5.0 PS C:\\PATH_TO_FOLDER> ffmpeg ffmpeg: The term 'ffmpeg' is not recognized as a name of a cmdlet, function, script file, or executable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again. PS C:\\PATH_TO_FOLDER> yt-dlp yt-dlp: The term 'yt-dlp' is not recognized as a name of a cmdlet, function, script file, or executable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again. PS C:\\PATH_TO_FOLDER> At this state, the following commands no longer work for me: winget upgrade yt-dlp winget upgrade Gyan.FFmpeg winget uninstall yt-dlp winget unsintall Gyan.FFmpeg As I face the following problem or the combinations of them: The program is already at the latest version, or The program does not exist, or yt-dlp is available, but it cannot use ffmpeg Solution For me, to upgrade to latest version of yt-dlp, I have to fully uninstall yt-dlp and ffmpeg first using Control Panel. Windows settings > Apps > Installed apps. Search for “ffmpeg”. On the FFmpeg entry, tap the three-dot button, and click Uninstall Windows settings > Apps > Installed apps. Search for “yt-dlp”. On the yt-dlp entry, tap the three-dot button, and click Uninstall After that, re-do the installation of yt-dlp again, using winget install yt-dlp. This will make both yt-dlp and ffmpeg available again on terminal. PS C:\\PATH_TO_FOLDER> winget install yt-dlp Found yt-dlp [yt-dlp.yt-dlp] Version 2025.03.27 This application is licensed to you by its owner. Microsoft is not responsible for, nor does it grant any licenses to, third-party packages. This package requires the following dependencies: - Packages Gyan.FFmpeg (1/1) Found FFmpeg [Gyan.FFmpeg] Version 7.1.1 This application is licensed to you by its owner. Microsoft is not responsible for, nor does it grant any licenses to, third-party packages. Successfully verified installer hash Extracting archive... Successfully extracted archive Starting package install... Path environment variable modified; restart your shell to use the new value. Command line alias added: \"ffmpeg\" Command line alias added: \"ffplay\" Command line alias added: \"ffprobe\" Successfully installed Downloading https://github.com/yt-dlp/yt-dlp/releases/download/2025.03.27/yt-dlp.exe ██████████████████████████████ 17.2 MB / 17.2 MB Successfully verified installer hash Starting package install... Path environment variable modified; restart your shell to use the new value. Command line alias added: \"yt-dlp\" Successfully installed Even if I open a new terminal, it will still be available: PowerShell 7.5.0 PS C:\\PATH_TO_FOLDER> ffmpeg -version ffmpeg version 7.1.1-full_build-www.gyan.dev Copyright (c) 2000-2025 the FFmpeg developers built with gcc 14.2.0 (Rev1, Built by MSYS2 project) [..redacted..] PS C:\\PATH_TO_FOLDER> yt-dlp --version 2025.03.27 PS C:\\PATH_TO_FOLDER>",
"title": "How to Upgrade yt-dlp Using Winget",
"updatedAt": "2025-03-31T15:10:04.000Z"
}