Пакет Swift для получения изображений с цифровых камер Sony.
SwiftPM
Чтобы установить OpenAlpha с помощью диспетчера пакетов Swift, добавьте следующую зависимость в файл Package.swift:
. Package ( url : " https://github.com/colealanroberts/OpenAlpha/OpenAlpha.git " , majorVersion : 1 )
Кроме того, вы можете добавить OpenAlpha в свой проект, нажав кнопку «+» в меню «Swift Packages» Xcode.
Требуемые права
Следующие права должны быть добавлены к вашей цели Xcode:
Подключение к камере
import OpenAlpha
let oa = OpenAlpha ( )
let hotspot = OpenAlpha . Hotspot ( ssid : " DIRECT-SSID:ILCE-7M2 " , passphrase : " 1234abcd " )
do {
let ip = try await oa . connect ( to : hotspot )
// Specific sizes can be requested using: `[.thumbnail, .small, .large, .original]`.
// Additionally, a static helper method `.all()` has been included,
// though one should note the potential battery cost.
let media = try await oa . media ( sizes : . all ( ) , from : ip )
print ( media ) // [Media]
} catch {
fatalError ( error . localizedDescription )
}
? Примечание. Указание
.all()
может повлечь за собой дополнительные затраты, если ресурсAsset.original
доступен для извлечения. Вообще говоря, эти данные представляют собой исходную фотографию с высоким разрешением и могут быть намного больше по разрешению и размеру файла, чем даже.large
. Для извлечения этого объекта может потребоваться больше времени, что приведет к дополнительному разряду аккумулятора камеры.
Вы также можете создать объект Hotspot
, передав String
значение, что полезно, если вы получили конфигурацию точки доступа из QR-кода. Информацию о том, как сканировать и обрабатывать QR-коды, см. в этом руководстве.
Внутри этот инициализатор использует Scanner
и пытается создать действительный объект Hotspot
из значения String.
Media
объекты содержат три свойства Asset
: small
, large
, thumbnail
и (необязательно) original
, если поддерживается камерой. Каждый объект Asset имеет одно свойство data
, которое представляет собой объект NSData/Data
, представляющий изображение JPEG. Вы можете использовать эти данные для создания UIImage/NSImage
или аналогичного объекта:
let image = UIImage ( data : media [ 0 ] . large . data )
imageView . image = image
Вклад в OpenAlpha приветствуется!
Если вы хотите сообщить об ошибке, обсудить текущее состояние кода, отправить исправление или предложить новую функцию, воспользуйтесь функциями GitHub «Проблемы» и «Запрос на извлечение».
Совместимость с OpenAlpha подтверждена следующими моделями камер:
Примечание. Это не полный список. После подтверждения откройте запрос на продажу с указанием совместимой модели камеры. См. запись в Wiki «Подтверждение совместимости».
OpenAlpha лицензируется по лицензии MIT. См. ЛИЦЕНЗИЯ для получения дополнительной информации.
Коул Робертс