Sony デジタル カメラから画像を取得するための Swift パッケージ。
スウィフトPM
Swift Package Manager を使用して OpenAlpha をインストールするには、次の依存関係を Package.swift ファイルに追加します。
. Package ( url : " https://github.com/colealanroberts/OpenAlpha/OpenAlpha.git " , majorVersion : 1 )
あるいは、Xcode の「Swift Packages」メニューにある「+」ボタンをクリックして、OpenAlpha をプロジェクトに追加することもできます。
必要な資格
次の資格を 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 )
}
?注:
Asset.original
リソースを取得できる場合、.all()
を指定すると追加コストが発生する可能性があります。一般に、このデータは元の高解像度の写真を表しており、解像度とファイル サイズの両方で.large
よりもはるかに大きい可能性があります。このアセットの取得には時間がかかり、カメラのバッテリーがさらに消耗する可能性があります。
String
値を渡すことによってHotspot
オブジェクトを作成することもできます。これは、QR コードからホットスポット構成を取得した場合に便利です。 QR コードをスキャンして処理する方法については、このチュートリアルを参照してください。
内部的には、このイニシャライザはScanner
を利用し、文字列値から有効なHotspot
オブジェクトを構築しようとします。
Media
オブジェクトには、 small
、 large
、 thumbnail
、およびオプションでカメラでサポートされている場合はoriginal
3 つのAsset
プロパティが含まれます。各 Asset オブジェクトには、JPEG 画像を表すNSData/Data
オブジェクトである 1 つのdata
プロパティがあります。このデータを使用して、 UIImage/NSImage
または同様のオブジェクトを作成できます。
let image = UIImage ( data : media [ 0 ] . large . data )
imageView . image = image
OpenAlpha への貢献は大歓迎です!
バグの報告、コードの現在の状態についての議論、修正の送信、または新機能の提案を希望する場合は、GitHub の問題およびプル リクエスト機能を使用してください。
以下のカメラモデルが OpenAlpha と互換性があることが確認されています。
注:これは完全なリストではありません。確認したら、互換性のあるカメラ モデルを含む PR を開いてください。互換性の確認 Wiki のエントリを参照してください。
OpenAlpha は MIT ライセンスに基づいてライセンスされています。詳細については、「ライセンス」を参照してください。
コール・ロバーツ