Об этом проекте

Harbeth — это GPU-ускоренная библиотека фильтров для изображений, видео и камеры, построенная на фреймворке Metal от Apple. Она поддерживает iOS/iPadOS 15+, macOS 12+ и tvOS 15+ с использованием Swift 6 и Xcode 16+. Библиотека обрабатывает UIImage/NSImage, CGImage, CIImage, MTLTexture, CVPixelBuffer и CMSampleBuffer через ориентированный на текстуры движок рендеринга на Metal. Она предоставляет два пути интеграции: HarbethIO для прямой обработки цепочки фильтров с синхронным и асинхронным выводом и ImageNode для продвинутых структурированных рабочих процессов с композируемой обработкой, многослойными композитами, масками, геометрией, оптикой, политиками кэширования и доставкой в нескольких форматах. Возможности включают 183 публичных типа выполнения фильтров по категориям настройки цвета, размытия, смешивания, краёв/деталей, геометрии, оптики, LUT/Cube, генераторов и утилит, а также 30 режимов C7Blend. Функции охватывают примитивы масок и локальных эффектов, композитинг слоёв, переходы, рецепты редактирования, диагностику GPU waveform/vectorscope/histogram, пулинг текстур с выделением через MTLHeap, кэширование плана рендеринга и интеграцию пользовательских шейдеров Metal. Библиотека предоставляет хостинг предпросмотра для SwiftUI и UIKit/AppKit, который рендерит напрямую из GPU-текстур без обратного чтения на CPU. Производительность управляется профилями с выбираемыми режимами для интерактивной задержки, стабильного предпросмотра и вывода экспортного качества. Установка доступна через Swift Package Manager и CocoaPods. Демонстрационные стенды показывают интеграции с UIKit, SwiftUI и macOS AppKit, включая подключение эталонных кадров камеры, полный каталог фильтров и демонстрации масок.