camera.processPicture

Memproses gambar, yang sebelumnya diambil, tetapi belum diproses. Perintah ini hanya relevan jika Anda mendukung delayProcessing karena pemrosesannya memerlukan waktu lama. Jika Anda tidak mendukung delayProcessing, permintaan untuk perintah ini akan gagal dengan kode error disabledCommand. Perintah ini ditambahkan di API level 2.

Parameter

  • previewFileUrls: Daftar URL gambar yang belum diproses. Jika Anda ingin memproses semua gambar yang belum diproses di kamera, nilainya adalah [“all”]. Tidak boleh kosong. Jika kamera mengalami masalah saat memproses gambar, kamera tidak akan merespons error, sebagai gantinya, kamera harus mengabaikan URL tersebut dan melanjutkan dengan yang lain, dan kasus ekstremnya dapat berupa previewToFinalFileUrls ditampilkan sebagai JSONObject kosong.

Hasil

  • previewToFinalFileUrls: JSONObject <key, value=""> pasangan JSON, dengan setiap kunci adalah URL absolut dari gambar pratinjau, dan setiap kuncinya adalah gambar akhir yang diproses yang sesuai dan dapat digunakan untuk mendownload langsung dari kamera. Perhatikan bahwa perintah ini mirip dengan camera.takePicture, dan tidak langsung menampilkan previewToFinalFileUrls (kecuali untuk kasus sudut yang dijelaskan nanti dalam paragraf ini) karena pemrosesan (termasuk penggabungan dalam kamera) biasanya memerlukan waktu beberapa saat (bervariasi dari detik hingga menit) hingga selesai. Progres perintah diperoleh dengan melakukan polling pada kamera secara berkala menggunakan /osc/commands/status API dan previewToFinalFileUrls adalah hasil yang ditampilkan saat perintah selesai. Jika koneksi ke kamera terputus sebelum perintah selesai, klien dapat menggunakan listFiles untuk mendapatkan URL gambar akhir saat terhubung ke kamera lagi atau memberikan perintah processPicture lain, yang akan segera menampilkan previewToFinalFileUrls jika gambar sudah diproses sebelum koneksi ulang.</key,>

Error

  • disabledCommand: Jika Anda tidak mendukung pemrosesan penundaan.
  • invalidParameterName: Nama parameter input tidak dikenali.
  • invalidParameterValue: Nama parameter input dapat dikenali, tetapi nilainya tidak valid; misalnya, URL apa pun di previewFileUrls tidak valid.

Perintah I/O

Input Perintah
{
    "parameters": {
        "previewFileUrls": [
            "previewFileUrl1",
            "previewFileUrl2",
            "previewFileUrl3",
            ...
            "previewFileUrln"
        ]
    }
}
Output Perintah
{
    "results": {
        "previewToFinalFileUrls":{
            "previewFileUrl1": "finalFileUrl1",
            "previewFileUrl2": "finalFileUrl2",
            "previewFileUrl3": "finalFileUrl3",
            ...
            "previewFileUrln": "finalFileUrln"
        }
    }
}
Output Perintah (Error)
{
    "error": {
        "code": "disabledCommand",
        "message": "Command is currently disabled."
    }
}