aparat.przetwórzObraz.

Przetwarzanie zdjęć, które zostały wcześniej zarejestrowane, ale nie zostały jeszcze przetworzone. To polecenie ma zastosowanie tylko wtedy, gdy obsługujesz delayProcessing, ponieważ przetwarzanie trwa bardzo długo. Jeśli nie obsługujesz polecenia delayProcessing, żądanie tego polecenia powinno zakończyć się niepowodzeniem i wystąpić o brak kodu błędu DisableCommand. To polecenie zostało dodane w interfejsie API na poziomie 2.

Parametry

  • previewFileUrls: lista adresów URL nieprzetworzonych obrazów. Jeśli chcesz przetworzyć wszystkie nieprzetworzone obrazy w aparacie, użyj wartości ["all"], a nie może być puste. Jeśli podczas przetwarzania dowolnego obrazu kamera nie będzie miała problemu z przetworzeniem obrazu, nie będzie odpowiadała z powodu błędu, powinna natomiast zignorować ten adres URL i kontynuować przesyłanie kolejnych. W skrajnym przypadku previewToFinalFileUrls może zostać zwrócony jako pusty obiekt JSONObject.

Wyniki

  • previewToFinalFileUrls: obiekt JSONObject składający się z par <key, value=""> JSON, gdzie każdy klucz to bezwzględny adres URL obrazu podglądu, a każdy klucz odpowiada ostatecznemu przetworzonemu obrazowi, który może służyć do pobierania bezpośrednio z aparatu. Pamiętaj, że to polecenie jest podobne do poleceniacamera.takePicture i nie zwraca kodu previewToFinalFileUrls natychmiast (z wyjątkiem przypadków, w których opisano to w rogu tego akapitu), ponieważ przetwarzanie (w tym łączenie w aparacie) zwykle trwa trochę czasu (od kilku sekund do minut). Postęp wykonywania polecenia uzyskuje się przez okresowe sondowanie kamery za pomocą interfejsu API /osc/commands/status. Wynik previewToFinalFileUrls jest zwracany po zakończeniu polecenia. Jeśli połączenie z kamerą zostanie utracone przed zakończeniem tego polecenia, klient może skorzystać z listFiles, aby uzyskać adresy URL ostatecznych obrazów po ponownym połączeniu z kamerą, lub też wydać inne polecenie ProcessPicture, które powinno zwrócić wartość previewToFinalFileUrls od razu, jeśli obrazy zostały przetworzone przed ponownym połączeniem.</key,>

Błędy

  • disableCommand: jeśli nie obsługujesz opóźnienia przetwarzania.
  • ErrorParameterName: nie udało się rozpoznać nazwy parametru wejściowego.
  • ErrorParameterValue: rozpoznawana jest nazwa parametru wejściowego, ale jego wartość jest nieprawidłowa, np. każdy adres URL w polu previewFileUrls jest nieprawidłowy.

Command I/O

Polecenie
{
    "parameters": {
        "previewFileUrls": [
            "previewFileUrl1",
            "previewFileUrl2",
            "previewFileUrl3",
            ...
            "previewFileUrln"
        ]
    }
}
Dane wyjściowe polecenia
{
    "results": {
        "previewToFinalFileUrls":{
            "previewFileUrl1": "finalFileUrl1",
            "previewFileUrl2": "finalFileUrl2",
            "previewFileUrl3": "finalFileUrl3",
            ...
            "previewFileUrln": "finalFileUrln"
        }
    }
}
Dane wyjściowe polecenia (błąd)
{
    "error": {
        "code": "disabledCommand",
        "message": "Command is currently disabled."
    }
}