Поглощение FFmpeg XCFramework из Objective- C, заголовки не найдены - PullRequest
2 голосов
/ 17 марта 2020

Я создал FFmpeg для платформ Apple как XCFramework. Для этого я использовал скрипт в https://github.com/kewlbear/FFmpeg-iOS-build-script/pull/147.

Я пытаюсь использовать этот фреймворк в традиционной среде iOS / macOS (называемой VideoEditing), которая затем используется внутри мое приложение iOS (скоро попробую стать Catalyst).

В VideoEditing я связался с FFmpeg.xcframework, а затем в приложении, которое использует VideoEditing Я связал и внедрил FFmpeg.xcframework. Ранее я создавал FFmpeg как стандартную библиотеку stati c и использовал ее из 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 с фреймворком, продающим модуль. Если бы я попытался установить путь поиска заголовка, у вас теперь разные заголовки для каждой архитектуры.

Overview of contents of XCFramework

1 Ответ

0 голосов
/ 26 апреля 2020

Попробуйте @import FFmpeg, а также установите Enable Modules (C and Objective C) на YES из настроек сборки. Убедитесь, что Link Frameworks Automatically установлено на YES

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...