camera.startCapture

Inicia la captura de video o la captura de imágenes en intervalo según el valor de captureMode en Opciones. Este comando se agregó en el nivel de API 2.

Parámetros

  • Este comando no tiene parámetros en el cuerpo de la solicitud. La opción captureMode determina si se trata de la captura de imágenes en intervalo o de video. En el caso de la captura en modo intervalo, si es una captura abierta o no, depende de si captureNumber es igual o mayor que 0. Se deben configurar captureMode, captureInterval y captureNumber antes de la captura en intervalo. Solo es necesario establecer captureMode como "video" antes de la captura de video, que solo se puede detener con el comando camera.stopCapture.

Resultados

  • Captura abierta (cuando captureMode == "video" o captureNumber == 0)
    • No hay resultados.
  • Captura de intervalo no abierto:
    • fileUrls: Una lista de URL absolutas que apunta a archivos de imagen para la captura en intervalos. Ten en cuenta que este comando no muestra fileUrls de inmediato, ya que la captura tarda captureNumber en completarse. El progreso del comando se puede obtener sondeando la cámara de forma periódica. Por ejemplo, sondea después de una duración estimada (time = captureInterval * (captureNumber - 1)) con la API de /osc/commands/status, y fileUrls es el resultado que se muestra cuando finaliza el comando. Si el comando no finaliza correctamente (p.ej., solo se tomaron 3 imágenes antes de que la cámara se quede sin batería) o si la cámara se desconecta del teléfono cliente en el medio, pero el comando finaliza correctamente, el cliente debería poder obtener las imágenes con camera.listFiles más adelante cuando se establezca una nueva conexión entre el cliente y la cámara.

Errores

  • disableCommand: se encuentra actualmente inhabilitado; por ejemplo, la cámara está en medio de una captura de video o una en intervalo.
  • invalidParameterName: No se reconoce el nombre del parámetro; por ejemplo, sessionId.

E/S de comando

Entrada del comando
none
Resultado del comando
{
    "results": {
        "fileUrls":[
            "url1",
            "url2",
            "url3",
            ...
            "urln"
        ]
    }
}
Resultado del comando (error)
{
    "error": {
        "code": "disabledCommand",
        "message": "Command is currently disabled."
    }
}