Install NASM when building SVT-AV1 locally (#3082)
This is to make sure there is at least one assembler available.
Otherwise, MSVC can be chosen as an assembler while it is not, cf
https://cmake.org/cmake/help/latest/policy/CMP0194.html
diff --git a/.github/actions/setup-common/action.yml b/.github/actions/setup-common/action.yml
index b3d9535..62a7064 100644
--- a/.github/actions/setup-common/action.yml
+++ b/.github/actions/setup-common/action.yml
@@ -10,6 +10,9 @@
codec-rav1e:
description: "Can take the values: OFF, LOCAL, SYSTEM"
default: "OFF"
+ codec-svt:
+ description: "Can take the values: OFF, LOCAL, SYSTEM"
+ default: "OFF"
oldest-cmake:
description: "Can take the values: true, false. Only useful on Linux to force using the minimum required CMake"
default: "false"
@@ -35,7 +38,7 @@
run: cmake --version
shell: bash
- name: Set up nasm
- if: ${{ inputs.codec-aom == 'LOCAL' || inputs.codec-dav1d == 'LOCAL' }}
+ if: ${{ inputs.codec-aom == 'LOCAL' || inputs.codec-dav1d == 'LOCAL' || inputs.codec-svt == 'LOCAL' }}
uses: ilammy/setup-nasm@72793074d3c8cdda771dba85f6deafe00623038b # v1.5.2
- name: Set up rust
if: ${{ inputs.codec-rav1e == 'LOCAL' }}
diff --git a/.github/actions/setup-linux/action.yml b/.github/actions/setup-linux/action.yml
index 7d12c9e..2b9f119 100644
--- a/.github/actions/setup-linux/action.yml
+++ b/.github/actions/setup-linux/action.yml
@@ -10,6 +10,9 @@
codec-rav1e:
description: "Can take the values: OFF, LOCAL, SYSTEM"
default: "OFF"
+ codec-svt:
+ description: "Can take the values: OFF, LOCAL, SYSTEM"
+ default: "OFF"
extra-cache-key:
description: "Extra cache key to use in the cache name. Useful when several caches are used in one workflow."
default: ""
@@ -51,6 +54,10 @@
if: ${{ inputs.codec-rav1e == 'SYSTEM' }}
run: sudo apt install -y librav1e-dev
shell: bash
+ - name: Install SVT-AV1 library
+ if: ${{ inputs.codec-rav1e == 'SYSTEM' }}
+ run: sudo apt install -y libsvtav1enc-dev
+ shell: bash
- name: Install libxml2 library
if: ${{ inputs.libxml2 == 'SYSTEM' }}
run: sudo apt install -y libxml2
@@ -79,6 +86,7 @@
codec-aom: ${{ inputs.codec-aom }}
codec-dav1d: ${{ inputs.codec-dav1d }}
codec-rav1e: ${{ inputs.codec-rav1e }}
+ codec-svt: ${{ inputs.codec-svt }}
oldest-cmake: ${{ inputs.oldest-cmake }}
- name: Set GCC & G++ compiler
diff --git a/.github/actions/setup-macos/action.yml b/.github/actions/setup-macos/action.yml
index 5f103e2..03ce0d8 100644
--- a/.github/actions/setup-macos/action.yml
+++ b/.github/actions/setup-macos/action.yml
@@ -10,6 +10,9 @@
codec-rav1e:
description: "Can take the values: OFF, LOCAL, SYSTEM"
default: "OFF"
+ codec-svt:
+ description: "Can take the values: OFF, LOCAL, SYSTEM"
+ default: "OFF"
gtest:
description: "Can take the values: OFF, LOCAL, SYSTEM"
default: "OFF"
@@ -65,3 +68,4 @@
codec-aom: ${{ inputs.codec-aom }}
codec-dav1d: ${{ inputs.codec-dav1d }}
codec-rav1e: ${{ inputs.codec-rav1e }}
+ codec-svt: ${{ inputs.codec-svt }}
diff --git a/.github/actions/setup-windows/action.yml b/.github/actions/setup-windows/action.yml
index 6dcd576..f8d2bfb 100644
--- a/.github/actions/setup-windows/action.yml
+++ b/.github/actions/setup-windows/action.yml
@@ -10,6 +10,9 @@
codec-rav1e:
description: "Can take the values: OFF, LOCAL, SYSTEM"
default: "OFF"
+ codec-svt:
+ description: "Can take the values: OFF, LOCAL, SYSTEM"
+ default: "OFF"
extra-cache-key:
description: "Extra cache key to use in the cache name. Useful when several caches are used in one workflow."
default: ""
@@ -48,6 +51,10 @@
if: ${{ inputs.codec-dav1d == 'SYSTEM' }}
run: echo "AVIF_WIN_LIBRARIES=${{ env.AVIF_WIN_LIBRARIES }} dav1d" >> "$GITHUB_ENV"
shell: bash
+ - name: Install SVT-AV1 library
+ if: ${{ inputs.codec-svt == 'SYSTEM' }}
+ run: echo "AVIF_WIN_LIBRARIES=${{ env.AVIF_WIN_LIBRARIES }} svt-av1" >> "$GITHUB_ENV"
+ shell: bash
- name: Install libjpeg-turbo library
if: ${{ inputs.libjpeg-turbo == 'SYSTEM' }}
run: echo "AVIF_WIN_LIBRARIES=${{ env.AVIF_WIN_LIBRARIES }} libjpeg-turbo" >> "$GITHUB_ENV"
@@ -109,3 +116,4 @@
codec-aom: ${{ inputs.codec-aom }}
codec-dav1d: ${{ inputs.codec-dav1d }}
codec-rav1e: ${{ inputs.codec-rav1e }}
+ codec-svt: ${{ inputs.codec-svt }}
diff --git a/.github/workflows/ci-disable-gtest.yml b/.github/workflows/ci-disable-gtest.yml
index 70e9e89..0b98005 100644
--- a/.github/workflows/ci-disable-gtest.yml
+++ b/.github/workflows/ci-disable-gtest.yml
@@ -42,6 +42,7 @@
codec-aom: "LOCAL"
codec-dav1d: "LOCAL"
codec-rav1e: "LOCAL"
+ codec-svt: "LOCAL"
gcc-version: ${{ matrix.gcc }}
libyuv: "LOCAL"
diff --git a/.github/workflows/ci-unix-static-av2.yml b/.github/workflows/ci-unix-static-av2.yml
index 6c92b64..7f676ca 100644
--- a/.github/workflows/ci-unix-static-av2.yml
+++ b/.github/workflows/ci-unix-static-av2.yml
@@ -35,6 +35,7 @@
with:
codec-aom: "LOCAL"
codec-dav1d: ${{ matrix.also-enable-av1-codecs }}
+ codec-svt: ${{ matrix.also-enable-av1-codecs }}
extra-cache-key: ${{ matrix.also-enable-av1-codecs }}
gcc-version: ${{ matrix.gcc }}
libyuv: "LOCAL"
diff --git a/.github/workflows/ci-unix-static.yml b/.github/workflows/ci-unix-static.yml
index abef639..6b3a4c7 100644
--- a/.github/workflows/ci-unix-static.yml
+++ b/.github/workflows/ci-unix-static.yml
@@ -38,6 +38,7 @@
codec-aom: "LOCAL"
codec-dav1d: "LOCAL"
codec-rav1e: "LOCAL"
+ codec-svt: "LOCAL"
gcc-version: ${{ matrix.gcc }}
libxml2: "LOCAL"
libyuv: "LOCAL"
diff --git a/.github/workflows/ci-windows.yml b/.github/workflows/ci-windows.yml
index 5c3f2f7..0bc2678 100644
--- a/.github/workflows/ci-windows.yml
+++ b/.github/workflows/ci-windows.yml
@@ -43,6 +43,7 @@
codec-aom: "LOCAL"
codec-dav1d: "LOCAL"
codec-rav1e: "LOCAL"
+ codec-svt: "LOCAL"
extra-cache-key: ${{ matrix.generator }}
libjpeg-turbo: "LOCAL"
libxml2: "LOCAL"