diff --git a/Package.swift b/Package.swift index c9e417c5..1c2020f0 100644 --- a/Package.swift +++ b/Package.swift @@ -4,7 +4,7 @@ import PackageDescription let package = Package( name: "FFmpegKit", defaultLocalization: "en", - platforms: [.macOS(.v10_15), .macCatalyst(.v13), .iOS(.v13), .tvOS(.v13), + platforms: [.macOS(.v10_15), .macCatalyst(.v14), .iOS(.v13), .tvOS(.v13), .visionOS(.v1)], products: [ .library( diff --git a/Plugins/BuildFFmpeg/BuildFFMPEG.swift b/Plugins/BuildFFmpeg/BuildFFMPEG.swift index 5a95ce44..fd334361 100644 --- a/Plugins/BuildFFmpeg/BuildFFMPEG.swift +++ b/Plugins/BuildFFmpeg/BuildFFMPEG.swift @@ -279,6 +279,8 @@ class BuildFFMPEG: BaseBuild { // ,"--disable-fft" // Hardware accelerators: "--disable-d3d11va", "--disable-dxva2", "--disable-vaapi", "--disable-vdpau", + // todo ffmpeg的编译脚本有问题,没有加入libavcodec/vulkan_video_codec_av1std.h + "--disable-hwaccel=av1_vulkan,hevc_vulkan,h264_vulkan", // Individual component options: // ,"--disable-everything" // ./configure --list-muxers @@ -323,7 +325,7 @@ class BuildFFMPEG: BaseBuild { "--enable-decoder=prores", "--enable-decoder=rv10", "--enable-decoder=rv20", "--enable-decoder=rv30", "--enable-decoder=rv40", "--enable-decoder=snow", "--enable-decoder=svq3", - "--enable-decoder=tscc", "--enable-decoder=txd", + "--enable-decoder=tscc", "--enable-decoder=tscc2", "--enable-decoder=txd", "--enable-decoder=wmv1", "--enable-decoder=wmv2", "--enable-decoder=wmv3", "--enable-decoder=vc1", "--enable-decoder=vp6", "--enable-decoder=vp6a", "--enable-decoder=vp6f", "--enable-decoder=vp7", "--enable-decoder=vp8", "--enable-decoder=vp9", diff --git a/Plugins/BuildFFmpeg/BuildPlacebo.swift b/Plugins/BuildFFmpeg/BuildPlacebo.swift index f9cc7d77..ec31a1bd 100644 --- a/Plugins/BuildFFmpeg/BuildPlacebo.swift +++ b/Plugins/BuildFFmpeg/BuildPlacebo.swift @@ -35,9 +35,11 @@ class BuildVulkan: BaseBuild { try Utility.launch(path: (directoryURL + "fetchDependencies").path, arguments: arguments, currentDirectoryURL: directoryURL) } arguments = platforms().map(\.name) - try Utility.launch(path: "/usr/bin/make", arguments: arguments, currentDirectoryURL: directoryURL) + if !FileManager.default.fileExists(atPath: (directoryURL + "Package/Release/MoltenVK/static/MoltenVK.xcframework").path) || !BaseBuild.notRecompile { + try Utility.launch(path: "/usr/bin/make", arguments: arguments, currentDirectoryURL: directoryURL) + } try? FileManager.default.removeItem(at: URL.currentDirectory() + "../Sources/MoltenVK.xcframework") - try? FileManager.default.copyItem(at: directoryURL + "Package/Release/MoltenVK/MoltenVK.xcframework", to: URL.currentDirectory() + "../Sources/MoltenVK.xcframework") + try? FileManager.default.copyItem(at: directoryURL + "Package/Release/MoltenVK/static/MoltenVK.xcframework", to: URL.currentDirectory() + "../Sources/MoltenVK.xcframework") for platform in platforms() { var frameworks = ["CoreFoundation", "CoreGraphics", "Foundation", "IOSurface", "Metal", "QuartzCore"] if platform == .macos { @@ -60,7 +62,7 @@ class BuildVulkan: BaseBuild { let content = """ prefix=\((directoryURL + "Package/Release/MoltenVK").path) includedir=${prefix}/include - libdir=${prefix}/MoltenVK.xcframework/\(platform.frameworkName) + libdir=${prefix}/static/MoltenVK.xcframework/\(platform.frameworkName) Name: Vulkan-Loader Description: Vulkan Loader diff --git a/Plugins/BuildFFmpeg/main.swift b/Plugins/BuildFFmpeg/main.swift index ce171a97..565a2929 100644 --- a/Plugins/BuildFFmpeg/main.swift +++ b/Plugins/BuildFFmpeg/main.swift @@ -149,7 +149,7 @@ enum Library: String, CaseIterable { case .FFmpeg: return "n6.1" case .libfreetype: - return "VER-2-12-2" + return "VER-2-13-2" case .libfribidi: return "v1.0.12" case .libharfbuzz: