camera.startCapture

Memulai perekaman video atau pengambilan gambar interval, bergantung pada nilai captureMode di Opsi. Perintah ini ditambahkan di API level 2.

Parameter

  • Perintah ini tidak memiliki parameter dalam isi permintaan. Apakah berupa gambar interval perekaman atau perekaman video ditentukan oleh opsi captureMode. Untuk pengambilan interval, pengambilan gambar terbuka atau tidak bergantung pada apakah captureNumber sama dengan atau lebih besar dari 0. captureMode, captureInterval, dan captureNumber harus ditetapkan sebelum pengambilan interval. Hanya captureMode yang perlu ditetapkan ke "video" sebelum video , yang hanya dapat dihentikan dengan perintah camera.stopCapture.

Hasil

  • Pengambilan gambar terbuka (saat CaptureMode == "video" atau CaptureNumber == 0)
    • Tidak ada hasil.
  • Perekaman interval non-terbuka:
    • fileUrls: Daftar URL absolut, yang mengarah ke gambar untuk pengambilan gambar interval. Perlu diperhatikan bahwa perintah ini tidak ditampilkan fileUrls tepat setelah pengambilan gambar captureNumber untuk menyelesaikan. Progres perintah dapat yang diperoleh dengan melakukan polling pada kamera secara berkala. Misalnya, polling setelah perkiraan durasi (time = captureInterval * (captureNumber - 1)) menggunakan /osc/commands/status API dan fileUrls adalah hasil yang ditampilkan saat perintah selesai. Jika perintah tidak berhasil diselesaikan (mis. hanya 3 dari gambar yang yang diambil sebelum kamera kehabisan baterai) atau kamera terputus dari telepon klien di tengah, tetapi perintahnya berhasil diselesaikan, klien harus bisa mendapatkan gambar menggunakan camera.listFiles ketika koneksi baru dibuat antara klien dan kamera.

Error

  • dinonaktifkanCommand: Perintah saat ini dinonaktifkan; misalnya, kamera sedang di tengah-tengah perekaman video atau dalam interval.
  • invalidParameterName: Nama parameter tidak dikenal; misalnya, sessionId tidak dikenal.

I/O Perintah

Input Perintah
none
Output Perintah
{
    "results": {
        "fileUrls":[
            "url1",
            "url2",
            "url3",
            ...
            "urln"
        ]
    }
}
Output Perintah (Error)
{
    "error": {
        "code": "disabledCommand",
        "message": "Command is currently disabled."
    }
}