camera.processPicture

Traiter les images précédemment capturées, mais pas encore traitées Cette commande n'est pertinente que si elle est compatible avec delayProcessing, car le traitement prend beaucoup de temps. Si vous n'acceptez pas delayProcessing, la requête pour cette commande devrait échouer avec le code d’erreur disabledCommand. Cette commande a été ajoutée au niveau d'API 2.

Paramètres

  • previewFileUrls:liste des URL des images non traitées. Si vous souhaitez traiter toutes les images non traitées dans l'appareil photo, utilisez ["toutes"]. Ce champ est obligatoire. Si l'appareil photo ne parvient pas à traiter une image, ne renvoie pas d'erreur, il doit ignorer l'URL et poursuivre avec d'autres, et le cas extrême peut être previewToFinalFileUrls : renvoyée sous la forme d'un objet JSONObject vide.

Résultats

  • previewToFinalFileUrls:objet JSONObject de JSON <key, value="">. où chaque clé correspond à l'URL absolue de l'image d'aperçu et chaque clé correspond à l'image traitée finale correspondante. Elle peut être utilisée pour télécharger directement depuis la caméra. Notez que cette commande ressemble à Camera.takePicture, et ne renvoie pas previewToFinalFileUrls immédiatement (à l'exception d'un cas particulier expliqué plus loin dans ce paragraphe), car le traitement (y compris l'assemblage via l'appareil photo) prend généralement un certain temps (varie selon de quelques secondes à minutes). La progression de la commande est obtenue en interrogeant régulièrement la caméra à l'aide de l'API /osc/commands/status et previewToFinalFileUrls est le résultat renvoyé lorsque la commande se termine. Si la connexion à l'appareil photo est perdue avant la fin de la commande, le client peut utiliser listFiles pour obtenir les URL des images finales lorsque vous reconnectez à l'appareil photo ou une autre commande processPicture, qui devrait renvoyer previewToFinalFileUrls immédiatement si les images étaient déjà traités avant la reconnexion.</key,>

Erreurs

  • disableCommand:si le traitement différé n'est pas disponible.
  • invalidParameterName:le nom du paramètre d'entrée est non reconnues.
  • invalidParameterValue::le nom du paramètre d'entrée est mais sa valeur n'est pas valide. par exemple, toute URL dans previewFileUrls n'est pas valide.

E/S de commande

Saisie de la commande
{
    "parameters": {
        "previewFileUrls": [
            "previewFileUrl1",
            "previewFileUrl2",
            "previewFileUrl3",
            ...
            "previewFileUrln"
        ]
    }
}
Résultat de la commande
{
    "results": {
        "previewToFinalFileUrls":{
            "previewFileUrl1": "finalFileUrl1",
            "previewFileUrl2": "finalFileUrl2",
            "previewFileUrl3": "finalFileUrl3",
            ...
            "previewFileUrln": "finalFileUrln"
        }
    }
}
Résultat de la commande (erreur)
{
    "error": {
        "code": "disabledCommand",
        "message": "Command is currently disabled."
    }
}