camera.takePicture

Mengambil gambar equirectangular, menyimpan koordinat lintang/bujur ke EXIF (jika kamera Anda menampilkan GPS atau GPS-nya sendiri yang diaktifkan pada ponsel yang terhubung). Panggil camera.setOptions sebelum panggilan perintah ini jika diperlukan. Perintah ini diubah di API level 2.

Parameter

  • sessionId: ID sesi unik yang diperoleh dari perintah camera.startSession . Kolom ini tidak digunakan lagi pada API level 2.

Hasil

  • Level API 1
    • fileUri: URI dari gambar yang diambil. Produsen memutuskan apakah akan menggunakan URI absolut atau relatif; misalnya, "http://android.com/robots.txt" adalah URI absolut, sedangkan "robots.txt" adalah URI relatif. Klien mungkin menganggap hal ini sebagai ID buram.
  • Level API 2
    • fileUrl: URL absolut dari gambar yang diambil, yang dapat digunakan untuk mendownload langsung dari server HTTP kamera. Perlu diperhatikan bahwa perintah ini tidak langsung menampilkan fileUrl karena pengambilan gambar (termasuk penggabungan dalam kamera) biasanya memerlukan waktu beberapa saat (bervariasi dari detik ke menit) hingga selesai. Progres perintah diperoleh dengan melakukan polling pada kamera secara berkala menggunakan /osc/commands/status API dan fileUrl adalah hasil yang ditampilkan saat perintah selesai. Jika delayProcessing bernilai benar, maka itu adalah URL absolut dari gambar pratinjau, yang dapat digunakan sebagai input dalam processPicture untuk memproses gambar. Jika tidak, URL adalah URL absolut dari gambar yang diproses oleh akhir.

Error

  • missingParameter: sessionId tidak ada. Kode error ini tidak digunakan lagi di API level 2.
  • invalidParameterName: Nama parameter tidak dikenal, misalnya, sessionId tidak dikenali di API level 2.
  • invalidParameterValue: Nama parameter input dikenali, tetapi nilainya tidak valid; misalnya, sessionId tidak ada, tidak lagi aktif, atau jenis datanya salah. Kode error ini tidak digunakan lagi di API level 2.
  • disabledCommand: Command saat ini dinonaktifkan; misalnya, kamera dalam mode perekaman video. Kode error ini ditambahkan di API level 2.

Perintah I/O

Input Perintah (API level 1)
{
    "parameters": {
        "sessionId": "12ABC3"
    }
}
Output Perintah (API level 1)
{
    "results": {
        "fileUri": "file URI"
    }
}
Output Perintah (Error) (API level 1)
{
    "error": {
        "code": "invalidParameterValue",
        "message": "Parameter sessionId doesn't exist."
    }
}
Input Perintah (API level 2)
none
Output Perintah (API level 2)
{
    "results": {
        "fileUrl": "Absolute file URL"
    }
}
Output Perintah (Error) (API level 2)
{
    "error": {
        "code": "disabledCommand",
        "message": "Command is currently disabled."
    }
}