From cac030e9d45c5a265c77a1d0a23815e018bd741a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sybren=20A=2E=20St=C3=BCvel?= Date: Mon, 31 Jul 2023 17:07:44 +0200 Subject: [PATCH] Bump version of FFmpeg to 5.1 The 5.0 binaries that were bundled could no longer be downloaded from the original URLs, so I took the opportunity to upgrade a minor version. Unfortunately there is a discrepancy between the last version of FFmpeg (according to https://ffmpeg.org/download.html#release_5.1) and the binaries that are offered for download. Because of this, Linux is at 5.1.1, where Windows and macOS (darwin) are on 5.1.2. --- CHANGELOG.md | 1 + Makefile | 32 +++++++++++++++++++------------- 2 files changed, 20 insertions(+), 13 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index b4417dc1..02e66d0a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,7 @@ bugs in actually-released versions. ## 3.3 - in development +- Upgrade bundled FFmpeg from 5.0 to 5.1. - Improve speed of queueing up >100 simultaneous job deletions. - Improve logging of job deletion. - Add Worker Tag support. Workers can be members of any number of tags. Workers will only work on jobs that are assigned to that tag. Jobs that do not have a tag will be available to all workers, regardless of their tag assignment. As a result, tagless workers will only work on tagless jobs. diff --git a/Makefile b/Makefile index 0ca67bdf..ddb97701 100644 --- a/Makefile +++ b/Makefile @@ -38,11 +38,6 @@ WEB_STATIC=web/static # Prevent any dependency that requires a C compiler, i.e. only work with pure-Go libraries. export CGO_ENABLED=0 -# FFmpeg version to bundle. -FFMPEG_VERSION=5.0.1 -TOOLS=./tools -TOOLS_DOWNLOAD=./tools/download - all: application # Install generators and build the software. @@ -264,18 +259,29 @@ tools: $(MAKE) -s tools-darwin $(MAKE) -s tools-windows -FFMPEG_PACKAGE_LINUX=$(TOOLS_DOWNLOAD)/ffmpeg-$(FFMPEG_VERSION)-linux-amd64-static.tar.xz -FFMPEG_PACKAGE_DARWIN=$(TOOLS_DOWNLOAD)/ffmpeg-$(FFMPEG_VERSION)-darwin-amd64.zip -FFMPEG_PACKAGE_WINDOWS=$(TOOLS_DOWNLOAD)/ffmpeg-$(FFMPEG_VERSION)-windows-amd64.zip + +# FFmpeg version to bundle. +# Version 5.1.3 is the last release in the 5.x series, but binaries have not +# been made available. And then there are different 'latest' binaries for the +# different platforms. +FFMPEG_VERSION_LINUX=5.1.1 +FFMPEG_VERSION_WINDOWS=5.1.2 +FFMPEG_VERSION_DARWIN=5.1.2 +TOOLS=./tools +TOOLS_DOWNLOAD=./tools/download + +FFMPEG_PACKAGE_LINUX=$(TOOLS_DOWNLOAD)/ffmpeg-$(FFMPEG_VERSION_LINUX)-linux-amd64-static.tar.xz +FFMPEG_PACKAGE_DARWIN=$(TOOLS_DOWNLOAD)/ffmpeg-$(FFMPEG_VERSION_DARWIN)-darwin-amd64.zip +FFMPEG_PACKAGE_WINDOWS=$(TOOLS_DOWNLOAD)/ffmpeg-$(FFMPEG_VERSION_WINDOWS)-windows-amd64.zip .PHONY: tools-linux tools-linux: [ -e $(FFMPEG_PACKAGE_LINUX) ] || curl \ --create-dirs -o $(FFMPEG_PACKAGE_LINUX) \ - https://johnvansickle.com/ffmpeg/releases/ffmpeg-$(FFMPEG_VERSION)-amd64-static.tar.xz + https://www.johnvansickle.com/ffmpeg/old-releases/ffmpeg-$(FFMPEG_VERSION_LINUX)-amd64-static.tar.xz tar xvf \ $(FFMPEG_PACKAGE_LINUX) \ - ffmpeg-$(FFMPEG_VERSION)-amd64-static/ffmpeg \ + ffmpeg-$(FFMPEG_VERSION_LINUX)-amd64-static/ffmpeg \ --strip-components=1 mv ffmpeg $(TOOLS)/ffmpeg-linux-amd64 @@ -283,7 +289,7 @@ tools-linux: tools-darwin: [ -e $(FFMPEG_PACKAGE_DARWIN) ] || curl \ --create-dirs -o $(FFMPEG_PACKAGE_DARWIN) \ - https://evermeet.cx/ffmpeg/ffmpeg-$(FFMPEG_VERSION).zip + https://evermeet.cx/ffmpeg/ffmpeg-$(FFMPEG_VERSION_DARWIN).zip unzip $(FFMPEG_PACKAGE_DARWIN) mv ffmpeg $(TOOLS)/ffmpeg-darwin-amd64 @@ -291,8 +297,8 @@ tools-darwin: tools-windows: [ -e $(FFMPEG_PACKAGE_WINDOWS) ] || curl \ --create-dirs -o $(FFMPEG_PACKAGE_WINDOWS) \ - https://www.gyan.dev/ffmpeg/builds/packages/ffmpeg-$(FFMPEG_VERSION)-essentials_build.zip - unzip -j $(FFMPEG_PACKAGE_WINDOWS) ffmpeg-5.0.1-essentials_build/bin/ffmpeg.exe -d . + https://www.gyan.dev/ffmpeg/builds/packages/ffmpeg-$(FFMPEG_VERSION_WINDOWS)-essentials_build.zip + unzip -j $(FFMPEG_PACKAGE_WINDOWS) ffmpeg-$(FFMPEG_VERSION_WINDOWS)-essentials_build/bin/ffmpeg.exe -d . mv ffmpeg.exe $(TOOLS)/ffmpeg-windows-amd64.exe