Deps: Add support for ARM64 assembly in x264 and update FFmpeg version

It appears that previously, assembly was straight up disabled for all ARM64 platforms in x264 - this re-enables it.

This also updates the version of FFmpeg to 7.1.1. I updated the patch files so that they would cleanly apply to 7.1.1.

For Windows ARM64, it also switches both of these libraries to use the copy of LLVM we build as part of the deps, instead of MSVC - this gives a small performance increase. To do this for x264, I added a small patch taken from VCPKG - this should be harmless to other platforms.

With all these changes, I was able to get a ~20-30% perf improvement in video transcoding in the sequence editor.

Pull Request: https://projects.blender.org/blender/blender/pulls/137670
This commit is contained in:
Anthony Roberts
2025-05-27 10:20:48 +02:00
parent b1e39d6cae
commit 32f7665673
9 changed files with 97 additions and 35 deletions

View File

@@ -1422,7 +1422,18 @@ elseif(WIN32)
# Filenames change slightly between FFMPEG versions check both 6.0 and fallback to 5.0
# to ease the transition between versions.
if(EXISTS "${LIBDIR}/ffmpeg/lib/avcodec-60.dll")
if(EXISTS "${LIBDIR}/ffmpeg/lib/avcodec-61.dll")
windows_install_shared_manifest(
FILES
${LIBDIR}/ffmpeg/lib/avcodec-61.dll
${LIBDIR}/ffmpeg/lib/avformat-61.dll
${LIBDIR}/ffmpeg/lib/avdevice-61.dll
${LIBDIR}/ffmpeg/lib/avutil-59.dll
${LIBDIR}/ffmpeg/lib/swscale-8.dll
${LIBDIR}/ffmpeg/lib/swresample-5.dll
ALL
)
elseif(EXISTS "${LIBDIR}/ffmpeg/lib/avcodec-60.dll")
windows_install_shared_manifest(
FILES
${LIBDIR}/ffmpeg/lib/avcodec-60.dll