Startet die Videoaufnahme oder die Erfassung von Intervallbildern abhängig vom Wert von captureMode
in Optionen.
Dieser Befehl wurde in API-Level 2 hinzugefügt.
Parameter
- Dieser Befehl hat keinen Parameter im Anfragetext. Mit der Option
captureMode
wird bestimmt, ob es sich um eine Intervall-Bild- oder Videoaufnahme handelt. Ob es sich bei der Intervallerfassung um eine offene Erfassung handelt, hängt davon ab, obcaptureNumber
gleich oder größer als 0 ist.captureMode
,captureInterval
undcaptureNumber
müssen vor der Intervallerfassung festgelegt werden. NurcaptureMode
muss vor der Videoaufnahme auf „Video“ gesetzt werden, was nur mit dem Befehl camera.stopCapture gestoppt werden kann.
Ergebnisse
- Offene Aufnahme (wenn recordMode == "video" oder recordNumber == 0 ist)
- Keine Ergebnisse.
- Intervallaufnahme ohne offenes Ende:
- fileUrls:Liste absoluter URLs, die für die Intervallaufnahme auf Bilddateien verweisen. Beachten Sie, dass dieser Befehl nicht sofort
fileUrls
zurückgibt, da die ErfassungcaptureNumber
dauert. Sie können den Fortschritt des Befehls abrufen, indem Sie die Kamera regelmäßig abfragen. Eine Abfrage nach einer geschätzten Dauer (time = captureInterval * (captureNumber - 1)
) kann beispielsweise mit der API /osc/commands/status erfolgen.fileUrls
ist das Ergebnis, das nach Abschluss des Befehls zurückgegeben wird. Wenn der Befehl nicht erfolgreich abgeschlossen wird (z.B. wurden nur 3 der Bilder aufgenommen, bevor der Akku der Kamera leer ist) oder die Kamera in der Mitte vom Client-Smartphone getrennt wird, der Befehl aber erfolgreich abgeschlossen wurde, sollte der Client später in der Lage sein, die Bilder übercamera.listFiles
abzurufen, wenn eine neue Verbindung zwischen dem Client und der Kamera hergestellt wird.
- fileUrls:Liste absoluter URLs, die für die Intervallaufnahme auf Bilddateien verweisen. Beachten Sie, dass dieser Befehl nicht sofort
Fehler
- disabledCommand: Der Befehl ist derzeit deaktiviert – zum Beispiel, wenn sich die Kamera mitten in einer Videoaufnahme oder einer Intervallaufnahme befindet.
- invalidParameterName: Der Parametername wurde nicht erkannt. Beispiel:
sessionId
wird nicht erkannt.
Befehls-E/A | |
---|---|
Befehlseingabe | none |
Befehlsausgabe | { "results": { "fileUrls":[ "url1", "url2", "url3", ... "urln" ] } } |
Befehlsausgabe (Fehler) | { "error": { "code": "disabledCommand", "message": "Command is currently disabled." } } |