camera.processPicture

Processe imagens que foram capturadas anteriormente, mas ainda não foram processadas. Esse comando só será relevante se você oferecer suporte a delayProcessing porque o processamento demora muito. Se você não oferecer suporte a delayProcessing, a solicitação desse comando vai falhar com o código de erro disabledCommand. Esse comando foi adicionado no nível 2 da API.

Parâmetros

  • previewFileUrls: uma lista de URLs de imagens não processadas. Se você quiser processar todas as imagens não processadas na câmera, use ["all"]. Ele não pode ficar vazio. Se a câmera tiver problemas para processar imagens, ela não responder com erro, em vez disso, deverá ignorar o URL e prosseguir com outros, e o caso extremo pode ser previewToFinalFileUrls é retornado como um JSONObject vazio.

Resultados

  • previewToFinalFileUrls: um JSONObject de JSON <key, value="">. em que cada chave é o URL absoluto da imagem de visualização, e cada chave é a imagem processada correspondente e pode ser usada para fazer o download diretamente da câmera. Esse comando é semelhante a Camera.takePicture e não retorna previewToFinalFileUrls imediatamente (exceto por um caso específico explicado posteriormente neste parágrafo), já que o processamento (incluindo a edição na câmera) geralmente demora um pouco (varia de segundos para minutos) para ser concluído. O progresso do comando é obtido Pesquisando a câmera periodicamente com a API /osc/commands/status e previewToFinalFileUrls é o resultado retornado quando o comando termina. Se a conexão com a câmera for perdida antes da conclusão do comando, o cliente pode usar listFiles para obter os URLs das imagens finais quando o dispositivo for conectado à câmera novamente ou emitir outro comando processPicture, que deve retornar previewToFinalFileUrls imediatamente se as imagens já estiverem processados antes da reconexão.</key,>

Erros

  • disableCommand:se você não oferecer suporte ao processamento com atraso.
  • invalidParameterName:o nome do parâmetro de entrada é não reconhecidos.
  • invalidParameterValue: o nome do parâmetro de entrada é reconhecido, mas seu valor é inválido; por exemplo, qualquer URL em previewFileUrls é inválido.

E/S de comando

Entrada de comando
{
   
"parameters": {
       
"previewFileUrls": [
           
"previewFileUrl1",
           
"previewFileUrl2",
           
"previewFileUrl3",
           
...
           
"previewFileUrln"
       
]
   
}
}
Resposta ao comando
{
   
"results": {
       
"previewToFinalFileUrls":{
           
"previewFileUrl1": "finalFileUrl1",
           
"previewFileUrl2": "finalFileUrl2",
           
"previewFileUrl3": "finalFileUrl3",
           
...
           
"previewFileUrln": "finalFileUrln"
       
}
   
}
}
Resposta ao comando (erro)
{
   
"error": {
       
"code": "disabledCommand",
       
"message": "Command is currently disabled."
   
}
}