Un package Swift pour récupérer des images d'appareils photo numériques Sony.
SwiftPM
Pour installer OpenAlpha à l'aide de Swift Package Manager, ajoutez la dépendance suivante à votre fichier Package.swift :
. Package ( url : " https://github.com/colealanroberts/OpenAlpha/OpenAlpha.git " , majorVersion : 1 )
Alternativement, vous pouvez ajouter OpenAlpha à votre projet en cliquant sur le bouton "+" dans le menu "Swift Packages" de Xcode.
Droits requis
Les droits suivants doivent être ajoutés à votre cible Xcode :
Connexion à une caméra
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 )
}
? Remarque : La spécification de
.all()
peut entraîner un coût supplémentaire si une ressourceAsset.original
est disponible pour la récupération. De manière générale, ces données représentent la photo haute résolution originale et peuvent être beaucoup plus grandes en termes de résolution et de taille de fichier que même.large
. La récupération de cet actif peut prendre plus de temps, ce qui entraîne une décharge supplémentaire de la batterie de l'appareil photo.
Vous pouvez également créer un objet Hotspot
en passant une valeur String
, ce qui est utile si vous avez récupéré une configuration de hotspot à partir d'un code QR. Pour plus d'informations sur la façon de numériser et de traiter les codes QR, consultez ce didacticiel.
En interne, cet initialiseur utilise Scanner
et tente de construire un objet Hotspot
valide à partir de la valeur String.
Les objets Media
contiennent trois propriétés Asset
: small
, large
, thumbnail
et éventuellement original
si pris en charge par la caméra. Chaque objet Asset possède une seule propriété data
, qui est un objet NSData/Data
représentant une image JPEG. Vous pouvez utiliser ces données pour créer un UIImage/NSImage
ou un objet similaire :
let image = UIImage ( data : media [ 0 ] . large . data )
imageView . image = image
Les contributions à OpenAlpha sont les bienvenues !
Si vous souhaitez signaler un bug, discuter de l'état actuel du code, soumettre un correctif ou proposer une nouvelle fonctionnalité, veuillez utiliser les fonctionnalités Problèmes et Pull Request de GitHub.
Il a été confirmé que les modèles de caméras suivants sont compatibles avec OpenAlpha :
Remarque Ce n'est pas une liste complète, veuillez ouvrir un PR avec le modèle d'appareil photo compatible une fois confirmé. Voir l'entrée Wiki de confirmation de compatibilité.
OpenAlpha est sous licence MIT. Voir LICENCE pour plus d’informations.
Cole Roberts