我为 Apple 的平台构建了 FFmpeg 作为 XCFramework。我使用了https://github.com/kewlbear/FFmpeg-iOS-build-script/pull/147中的脚本来执行此操作。
我现在正尝试在传统的 iOS/macOS 框架(名为 VideoEditing)中使用该框架,然后在我的 iOS 应用程序中使用该框架(很快将尝试成为 Catalyst)。
在VideoEditing
我已链接到FFmpeg.xcframework
,然后在使用VideoEditing
我已链接和嵌入的应用程序中FFmpeg.xcframework
。以前我将 FFmpeg 构建为标准静态库,并VideoEditing
在 Objective-C++ 包装器中使用它,这样我就可以从 Swift 中使用它。
在那个 Objective-C++ 文件中,我将导入 FFmpeg 标头,如#import <libswscale/swscale.h>
要使其工作,我必须设置标头搜索路径。转换为 XCFramework 后应该怎么做?我试过@import FFmpeg
, #import <FFmpeg/libswscale/swscale.h>
,#import <FFmpeg/swscale.h>
以及#import <libswscale/swscale.h>
. 在每种情况下,我都会遇到file not found
错误import
。
Apple 的所有示例都只是在 Swift 中展示了它,框架出售了一个模块。如果我仍然尝试设置标头搜索路径,那么您现在每个体系结构都有不同的标头。