diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 084322d2..f80ec233 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -11,7 +11,7 @@ jobs: fail-fast: false matrix: # os: [ubuntu-latest, windows-latest, macos-latest] - build: [ubuntu-x64, windows-x64, macos-x64, macos-arm64] + build: [ubuntu-x64, ubuntu-20.04-x64, windows-x64, macos-x64, macos-arm64] config: [Release] include: - build: ubuntu-x64 @@ -19,6 +19,12 @@ jobs: triplet: x64-linux-release vcpkg-root: /usr/local/share/vcpkg extra-args: "" + - build: ubuntu-20.04-x64 + os: ubuntu-20.04 + triplet: x64-linux-release + upload-path: /home/runner/.cache/vcpkg/archives + vcpkg-root: /usr/local/share/vcpkg + extra-args: "" - build: windows-x64 os: windows-latest triplet: x64-win-llvm-static-release @@ -48,6 +54,11 @@ jobs: sudo apt -y install nasm if: matrix.os == 'ubuntu-latest' + - name: Set up build environment (ubuntu-20.04) + run: | + sudo apt -y install nasm + if: matrix.os == 'ubuntu-20.04' + - name: Patch vcpkg run: | (cd ${{ matrix.vcpkg-root }} && git fetch origin) diff --git a/ffmpeg.patch b/ffmpeg.patch index a06a969a..679ff570 100644 --- a/ffmpeg.patch +++ b/ffmpeg.patch @@ -2,7 +2,7 @@ diff --git a/ports/ffmpeg/portfile.cmake b/ports/ffmpeg/portfile.cmake index 35bac875b..5137c69be 100644 --- a/ports/ffmpeg/portfile.cmake +++ b/ports/ffmpeg/portfile.cmake -@@ -42,7 +42,20 @@ else() +@@ -42,7 +42,19 @@ else() set(LIB_PATH_VAR "LIBRARY_PATH") endif() @@ -13,13 +13,12 @@ index 35bac875b..5137c69be 100644 +string(APPEND OPTIONS " --disable-everything") +string(APPEND OPTIONS " --enable-decoder=aac --enable-decoder=aac_latm --enable-decoder=atrac3 --enable-decoder=atrac3p --enable-decoder=atrac9 --enable-decoder=mp3 --enable-decoder=pcm_s16le --enable-decoder=pcm_s8") +string(APPEND OPTIONS " --enable-decoder=mov --enable-decoder=h264 --enable-decoder=mpeg4 --enable-decoder=mpeg2video --enable-decoder=mjpeg --enable-decoder=mjpegb") -+string(APPEND OPTIONS " --enable-encoder=pcm_s16le") -+string(APPEND OPTIONS " --enable-encoder=ffv1 --enable-encoder=mpeg4 --enable-encoder=mjpeg") -+string(APPEND OPTIONS " --enable-muxer=avi") ++string(APPEND OPTIONS " --enable-encoder=pcm_s16le --enable-encoder=mp3 --enable-encoder=ac3 --enable-encoder=aac") ++string(APPEND OPTIONS " --enable-encoder=ffv1 --enable-encoder=mpeg4 --enable-encoder=mjpeg --enable-encoder=h264") ++string(APPEND OPTIONS " --enable-muxer=avi --enable-muxer=h264 --enable-muxer=mjpeg --enable-muxer=mp4") +string(APPEND OPTIONS " --enable-demuxer=h264 --enable-demuxer=m4v --enable-demuxer=mp3 --enable-demuxer=mpegvideo --enable-demuxer=mpegps --enable-demuxer=mjpeg --enable-demuxer=mov --enable-demuxer=avi --enable-demuxer=aac --enable-demuxer=pmp --enable-demuxer=oma --enable-demuxer=pcm_s16le --enable-demuxer=pcm_s8 --enable-demuxer=wav") +string(APPEND OPTIONS " --enable-parser=h264 --enable-parser=mpeg4video --enable-parser=mpegaudio --enable-parser=mpegvideo --enable-parser=mjpeg --enable-parser=aac --enable-parser=aac_latm") +string(APPEND OPTIONS " --enable-protocol=file") -+string(APPEND OPTIONS " --enable-bsf=mjpeg2jpeg") +string(APPEND OPTIONS " --enable-indev=dshow") if(VCPKG_TARGET_IS_WINDOWS) diff --git a/lib/linux/ubuntu-20.04/x86_64/libavcodec.a b/lib/linux/ubuntu-20.04/x86_64/libavcodec.a new file mode 100644 index 00000000..0e623f56 Binary files /dev/null and b/lib/linux/ubuntu-20.04/x86_64/libavcodec.a differ diff --git a/lib/linux/ubuntu-20.04/x86_64/libavdevice.a b/lib/linux/ubuntu-20.04/x86_64/libavdevice.a new file mode 100644 index 00000000..2d93f26b Binary files /dev/null and b/lib/linux/ubuntu-20.04/x86_64/libavdevice.a differ diff --git a/lib/linux/ubuntu-20.04/x86_64/libavfilter.a b/lib/linux/ubuntu-20.04/x86_64/libavfilter.a new file mode 100644 index 00000000..da0654d3 Binary files /dev/null and b/lib/linux/ubuntu-20.04/x86_64/libavfilter.a differ diff --git a/lib/linux/ubuntu-20.04/x86_64/libavformat.a b/lib/linux/ubuntu-20.04/x86_64/libavformat.a new file mode 100644 index 00000000..901977fa Binary files /dev/null and b/lib/linux/ubuntu-20.04/x86_64/libavformat.a differ diff --git a/lib/linux/ubuntu-20.04/x86_64/libavutil.a b/lib/linux/ubuntu-20.04/x86_64/libavutil.a new file mode 100644 index 00000000..9b4cc450 Binary files /dev/null and b/lib/linux/ubuntu-20.04/x86_64/libavutil.a differ diff --git a/lib/linux/ubuntu-20.04/x86_64/libswresample.a b/lib/linux/ubuntu-20.04/x86_64/libswresample.a new file mode 100644 index 00000000..82d62252 Binary files /dev/null and b/lib/linux/ubuntu-20.04/x86_64/libswresample.a differ diff --git a/lib/linux/ubuntu-20.04/x86_64/libswscale.a b/lib/linux/ubuntu-20.04/x86_64/libswscale.a new file mode 100644 index 00000000..85a5db1c Binary files /dev/null and b/lib/linux/ubuntu-20.04/x86_64/libswscale.a differ diff --git a/lib/linux/x86_64/libavcodec.a b/lib/linux/ubuntu-22.04/x86_64/libavcodec.a similarity index 86% rename from lib/linux/x86_64/libavcodec.a rename to lib/linux/ubuntu-22.04/x86_64/libavcodec.a index cd6efc0b..151cb185 100644 Binary files a/lib/linux/x86_64/libavcodec.a and b/lib/linux/ubuntu-22.04/x86_64/libavcodec.a differ diff --git a/lib/linux/x86_64/libavdevice.a b/lib/linux/ubuntu-22.04/x86_64/libavdevice.a similarity index 91% rename from lib/linux/x86_64/libavdevice.a rename to lib/linux/ubuntu-22.04/x86_64/libavdevice.a index 56b13ac7..23107ae6 100644 Binary files a/lib/linux/x86_64/libavdevice.a and b/lib/linux/ubuntu-22.04/x86_64/libavdevice.a differ diff --git a/lib/linux/x86_64/libavfilter.a b/lib/linux/ubuntu-22.04/x86_64/libavfilter.a similarity index 71% rename from lib/linux/x86_64/libavfilter.a rename to lib/linux/ubuntu-22.04/x86_64/libavfilter.a index ecacefb4..8d9eeb5b 100644 Binary files a/lib/linux/x86_64/libavfilter.a and b/lib/linux/ubuntu-22.04/x86_64/libavfilter.a differ diff --git a/lib/linux/x86_64/libavformat.a b/lib/linux/ubuntu-22.04/x86_64/libavformat.a similarity index 69% rename from lib/linux/x86_64/libavformat.a rename to lib/linux/ubuntu-22.04/x86_64/libavformat.a index 9e47026e..1ce7a8ff 100644 Binary files a/lib/linux/x86_64/libavformat.a and b/lib/linux/ubuntu-22.04/x86_64/libavformat.a differ diff --git a/lib/linux/x86_64/libavutil.a b/lib/linux/ubuntu-22.04/x86_64/libavutil.a similarity index 83% rename from lib/linux/x86_64/libavutil.a rename to lib/linux/ubuntu-22.04/x86_64/libavutil.a index 64f2f309..adfd6305 100644 Binary files a/lib/linux/x86_64/libavutil.a and b/lib/linux/ubuntu-22.04/x86_64/libavutil.a differ diff --git a/lib/linux/x86_64/libswresample.a b/lib/linux/ubuntu-22.04/x86_64/libswresample.a similarity index 86% rename from lib/linux/x86_64/libswresample.a rename to lib/linux/ubuntu-22.04/x86_64/libswresample.a index 1d527bf0..4c233e90 100644 Binary files a/lib/linux/x86_64/libswresample.a and b/lib/linux/ubuntu-22.04/x86_64/libswresample.a differ diff --git a/lib/linux/x86_64/libswscale.a b/lib/linux/ubuntu-22.04/x86_64/libswscale.a similarity index 91% rename from lib/linux/x86_64/libswscale.a rename to lib/linux/ubuntu-22.04/x86_64/libswscale.a index ce7288a4..4b7517da 100644 Binary files a/lib/linux/x86_64/libswscale.a and b/lib/linux/ubuntu-22.04/x86_64/libswscale.a differ diff --git a/lib/macos/arm64/libavcodec.a b/lib/macos/arm64/libavcodec.a index 5c0ad97e..22b3a804 100644 Binary files a/lib/macos/arm64/libavcodec.a and b/lib/macos/arm64/libavcodec.a differ diff --git a/lib/macos/arm64/libavdevice.a b/lib/macos/arm64/libavdevice.a index 281f5e6e..7b11ff16 100644 Binary files a/lib/macos/arm64/libavdevice.a and b/lib/macos/arm64/libavdevice.a differ diff --git a/lib/macos/arm64/libavfilter.a b/lib/macos/arm64/libavfilter.a index 4d0ad550..9a74d233 100644 Binary files a/lib/macos/arm64/libavfilter.a and b/lib/macos/arm64/libavfilter.a differ diff --git a/lib/macos/arm64/libavformat.a b/lib/macos/arm64/libavformat.a index 80c15b79..f1677d3a 100644 Binary files a/lib/macos/arm64/libavformat.a and b/lib/macos/arm64/libavformat.a differ diff --git a/lib/macos/arm64/libavutil.a b/lib/macos/arm64/libavutil.a index 2c082100..a95f733f 100644 Binary files a/lib/macos/arm64/libavutil.a and b/lib/macos/arm64/libavutil.a differ diff --git a/lib/macos/arm64/libswresample.a b/lib/macos/arm64/libswresample.a index 8f251f64..16b2c387 100644 Binary files a/lib/macos/arm64/libswresample.a and b/lib/macos/arm64/libswresample.a differ diff --git a/lib/macos/arm64/libswscale.a b/lib/macos/arm64/libswscale.a index 6edddcff..28b1772a 100644 Binary files a/lib/macos/arm64/libswscale.a and b/lib/macos/arm64/libswscale.a differ diff --git a/lib/macos/x86_64/libavcodec.a b/lib/macos/x86_64/libavcodec.a index 5a9f1911..3b5375f9 100644 Binary files a/lib/macos/x86_64/libavcodec.a and b/lib/macos/x86_64/libavcodec.a differ diff --git a/lib/macos/x86_64/libavdevice.a b/lib/macos/x86_64/libavdevice.a index 5342e8d1..62481815 100644 Binary files a/lib/macos/x86_64/libavdevice.a and b/lib/macos/x86_64/libavdevice.a differ diff --git a/lib/macos/x86_64/libavfilter.a b/lib/macos/x86_64/libavfilter.a index 684ee512..47c583f4 100644 Binary files a/lib/macos/x86_64/libavfilter.a and b/lib/macos/x86_64/libavfilter.a differ diff --git a/lib/macos/x86_64/libavformat.a b/lib/macos/x86_64/libavformat.a index b29ecb34..19a4e1ba 100644 Binary files a/lib/macos/x86_64/libavformat.a and b/lib/macos/x86_64/libavformat.a differ diff --git a/lib/macos/x86_64/libavutil.a b/lib/macos/x86_64/libavutil.a index 848f6383..fbcc760d 100644 Binary files a/lib/macos/x86_64/libavutil.a and b/lib/macos/x86_64/libavutil.a differ diff --git a/lib/macos/x86_64/libswresample.a b/lib/macos/x86_64/libswresample.a index e908d4f7..17330f08 100644 Binary files a/lib/macos/x86_64/libswresample.a and b/lib/macos/x86_64/libswresample.a differ diff --git a/lib/macos/x86_64/libswscale.a b/lib/macos/x86_64/libswscale.a index b8dd12dc..ffa6d156 100644 Binary files a/lib/macos/x86_64/libswscale.a and b/lib/macos/x86_64/libswscale.a differ diff --git a/lib/windows/x86_64/avcodec.lib b/lib/windows/x86_64/avcodec.lib index 1157a50b..707db6ed 100644 Binary files a/lib/windows/x86_64/avcodec.lib and b/lib/windows/x86_64/avcodec.lib differ diff --git a/lib/windows/x86_64/avdevice.lib b/lib/windows/x86_64/avdevice.lib index cdbc7c8e..b2ac73d1 100644 Binary files a/lib/windows/x86_64/avdevice.lib and b/lib/windows/x86_64/avdevice.lib differ diff --git a/lib/windows/x86_64/avfilter.lib b/lib/windows/x86_64/avfilter.lib index 6e15334e..7b847c5a 100644 Binary files a/lib/windows/x86_64/avfilter.lib and b/lib/windows/x86_64/avfilter.lib differ diff --git a/lib/windows/x86_64/avformat.lib b/lib/windows/x86_64/avformat.lib index 43ae74a2..9a72e3f1 100644 Binary files a/lib/windows/x86_64/avformat.lib and b/lib/windows/x86_64/avformat.lib differ diff --git a/lib/windows/x86_64/avutil.lib b/lib/windows/x86_64/avutil.lib index e93a5747..cf82b7d7 100644 Binary files a/lib/windows/x86_64/avutil.lib and b/lib/windows/x86_64/avutil.lib differ diff --git a/lib/windows/x86_64/swresample.lib b/lib/windows/x86_64/swresample.lib index 9d5ccf33..927ebb18 100644 Binary files a/lib/windows/x86_64/swresample.lib and b/lib/windows/x86_64/swresample.lib differ diff --git a/lib/windows/x86_64/swscale.lib b/lib/windows/x86_64/swscale.lib index d6697aff..27b25d6c 100644 Binary files a/lib/windows/x86_64/swscale.lib and b/lib/windows/x86_64/swscale.lib differ