我为苹果的平台构建了FFmpeg作为XCFramework。我使用的脚本是 https:/github.comkewlbearFFmpeg-iOS-build-scriptpull147。 来做到这一点。
我现在试图在一个传统的iOSmacOS框架(命名为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
行。
苹果所有的例子都是在Swift中显示,只是在框架发卖一个模块。如果我是尝试着仍然设置一个头部搜索路径,你现在每个架构有不同的头部。
试试吧 @import FFmpeg
并设置 Enable Modules (C and Objective C)
到 YES
构建设置中。确保 Link Frameworks Automatically
设置为 YES