Last active
August 1, 2026 17:29
-
-
Save eladkarako/3b5d1a2503f782b2823d4889a6e2f1d5 to your computer and use it in GitHub Desktop.
tiny script to keep the binaries of ffmpeg ffprobe ffplay updated (download, unpack, generate help files)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| ::@echo off | |
| chcp 65001 1>nul 2>nul | |
| pushd "%~sdp0.." | |
| set "TARGET_FOLDER=%CD%" | |
| popd | |
| set "TEMP_FOLDER=%TEMP%\ffmpeg_%RANDOM%" | |
| mkdir "%TEMP_FOLDER%" | |
| pushd "%TEMP_FOLDER%" | |
| ::"powershell.exe" -NoProfile Invoke-WebRequest -MaximumRedirection 2 -Uri "" -OutFile "ffmpeg-win64-nonfree-shared.tar.zst" | |
| "curl.exe" --disable --insecure --anyauth --tlsv1.2 --ssl-no-revoke --ssl-revoke-best-effort --doh-insecure --ipv4 --location-trusted --resolve "security.cloudflare-dns.com:443:1.1.1.2" --doh-url "https://security.cloudflare-dns.com/dns-query" --url "https://github.com/nanake/ffmpeg-tinderbox/releases/latest/download/ffmpeg-win64-nonfree-shared.tar.zst" --output-dir "%CD%" --output "ffmpeg-win64-nonfree-shared.tar.zst" | |
| if ["%ErrorLevel%"] neq ["0"] ( goto END ) | |
| "7za.exe" e -y -o"%CD%" "ffmpeg-win64-nonfree-shared.tar.zst" | |
| "7za.exe" e -y -o"%CD%" "ffmpeg-win64-nonfree-shared.tar" | |
| move /y ".\*.dll" "%TARGET_FOLDER%" | |
| move /y ".\*.exe" "%TARGET_FOLDER%" | |
| popd | |
| pushd "%TARGET_FOLDER%" | |
| "ffplay.exe" -hide_banner --help full 1>"readme_ffplay.txt" 2>&1 | |
| "ffprobe.exe" -hide_banner --help full 1>"readme_ffprobe.txt" 2>&1 | |
| "ffmpeg.exe" -hide_banner --help full 1>"readme_ffmpeg.txt" 2>&1 | |
| "ffmpeg.exe" -hide_banner -bsfs 1>"readme_ffmpeg_bsfs.txt" 2>&1 | |
| "ffmpeg.exe" -hide_banner -buildconf 1>"readme_ffmpeg_buildconf.txt" 2>&1 | |
| "ffmpeg.exe" -hide_banner -codecs 1>"readme_ffmpeg_codecs.txt" 2>&1 | |
| "ffmpeg.exe" -hide_banner -colors 1>"readme_ffmpeg_colors.txt" 2>&1 | |
| "ffmpeg.exe" -hide_banner -decoders 1>"readme_ffmpeg_decoders.txt" 2>&1 | |
| "ffmpeg.exe" -hide_banner -demuxers 1>"readme_ffmpeg_demuxers.txt" 2>&1 | |
| "ffmpeg.exe" -hide_banner -devices 1>"readme_ffmpeg_devices.txt" 2>&1 | |
| "ffmpeg.exe" -hide_banner -dispositions 1>"readme_ffmpeg_dispositions.txt" 2>&1 | |
| "ffmpeg.exe" -hide_banner -encoders 1>"readme_ffmpeg_encoders.txt" 2>&1 | |
| "ffmpeg.exe" -hide_banner -filters 1>"readme_ffmpeg_filters.txt" 2>&1 | |
| "ffmpeg.exe" -hide_banner -formats 1>"readme_ffmpeg_formats.txt" 2>&1 | |
| "ffmpeg.exe" -hide_banner -hwaccels 1>"readme_ffmpeg_hwaccels.txt" 2>&1 | |
| "ffmpeg.exe" -hide_banner -layouts 1>"readme_ffmpeg_layouts.txt" 2>&1 | |
| "ffmpeg.exe" -hide_banner -muxers 1>"readme_ffmpeg_muxers.txt" 2>&1 | |
| "ffmpeg.exe" -hide_banner -pix_fmts 1>"readme_ffmpeg_video_pix_fmts.txt" 2>&1 | |
| "ffmpeg.exe" -hide_banner -protocols 1>"readme_ffmpeg_protocols.txt" 2>&1 | |
| "ffmpeg.exe" -hide_banner -sample_fmts 1>"readme_ffmpeg_audio_sample_fmts.txt" 2>&1 | |
| "ffmpeg.exe" -hide_banner -version 1>"readme_ffmpeg_version.txt" 2>&1 | |
| popd | |
| :END | |
| timeout /t 5 1>&2 | |
| exit /b 0 | |
| :: | |
| :: https://github.com/nanake/ffmpeg-tinderbox/releases/ | |
| :: updater - ffmpeg for Windows. | |
| :: | |
| :: - download (github release - latest - shared - includes DLL files). | |
| :: - unpack (uses 7za.exe. needs 7zip folder in system PATH). | |
| :: - move to target folder which is in system PATH (you may change this). | |
| :: - generate few text "help" files. | |
| :: | |
| :: - note: downloads without check if newer is available. always overrides current version. | |
| :: - note: powershell downloader is an alternative to curl. | |
| :: - note: your Windows 10+ already should have curl (C:\Windows\System32) | |
| :: | |
| :: - updated "curl.exe" - https://curl.se/windows/latest.cgi?p=win64-mingw.zip | |
| :: - 7zip with zstandard codec - https://github.com/mcmilk/7-Zip-zstd/releases/ | |
| :: | |
| :: | |
| :: suggested installation. | |
| :: D:\Software\ffmpeg | |
| :: (for all your ffmpeg batch files and scripts) | |
| :: create a new folder named "updater" | |
| :: place this batch file in-it. | |
| :: run "update.cmd" | |
| :: | |
| :: you will get under target folder: | |
| :: | |
| :: avcodec-63.dll | |
| :: avdevice-63.dll | |
| :: avfilter-12.dll | |
| :: avformat-63.dll | |
| :: avutil-61.dll | |
| :: swresample-7.dll | |
| :: swscale-10.dll | |
| :: | |
| :: ffmpeg.exe | |
| :: ffplay.exe | |
| :: ffprobe.exe | |
| :: | |
| :: readme_ffplay.txt | |
| :: readme_ffprobe.txt | |
| :: readme_ffmpeg.txt | |
| :: readme_ffmpeg_muxers.txt | |
| :: readme_ffmpeg_demuxers.txt | |
| :: readme_ffmpeg_devices.txt | |
| :: readme_ffmpeg_decoders.txt | |
| :: readme_ffmpeg_encoders.txt | |
| :: readme_ffmpeg_version | |
| :: readme_ffmpeg_video_pix_fmts.txt | |
| :: readme_ffmpeg_audio_sample_fmts.txt | |
| :: readme_ffmpeg_filters.txt | |
| :: | |
| :: latest version of this script is in: | |
| :: https://gist.githubusercontent.com/eladkarako/3b5d1a2503f782b2823d4889a6e2f1d5/raw/ffmpeg_updater.cmd | |
| :: leave comments on | |
| :: https://gist.github.com/eladkarako/3b5d1a2503f782b2823d4889a6e2f1d5#file-ffmpeg_updater-cmd | |
| :: | |
| :: |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment