Camera.startCapture

เริ่มจับภาพวิดีโอหรือจับภาพตามช่วงเวลาโดยขึ้นอยู่กับค่าของ captureModeในตัวเลือก เพิ่มคำสั่งนี้ใน API ระดับ 2

พารามิเตอร์

  • คำสั่งนี้ไม่มีพารามิเตอร์ในเนื้อหาคำขอ ไม่ว่าจะเป็นรูปภาพช่วงเวลา การจับภาพหรือการบันทึกวิดีโอจะกำหนดโดยตัวเลือก captureMode สำหรับการจับภาพตามช่วงเวลา การจับภาพเป็นปลายเปิดหรือไม่นั้นขึ้นอยู่กับ ไม่ว่า captureNumber จะเท่ากับหรือมากกว่า 0 captureMode, captureInterval และ ต้องตั้งค่า captureNumber ก่อนจับภาพตามช่วงเวลา ต้องตั้งค่า captureMode เป็น "วิดีโอ" เท่านั้น ก่อนวิดีโอ การจับภาพ ซึ่งหยุดได้ด้วยคำสั่ง camera.stopCapture เท่านั้น

ผลลัพธ์

  • การจับภาพปลายเปิด (เมื่อ CaptureMode == "video" หรือ CaptureNumber == 0)
    • ไม่พบผลลัพธ์
  • การจับภาพตามช่วงเวลาที่ไม่ใช่แบบปลายเปิด:
    • fileUrls: รายการ URL แบบสัมบูรณ์ที่ชี้ไปยังรูปภาพ สำหรับการจับภาพตามช่วงเวลา โปรดทราบว่าคำสั่งนี้จะไม่แสดงผล fileUrls ทันทีนับตั้งแต่การจับภาพ captureNumberจึงจะเสร็จสมบูรณ์ การดำเนินการตามคำสั่งอาจมีลักษณะดังนี้ ที่ได้จากการสำรวจกล้องเป็นระยะๆ ตัวอย่างเช่น แบบสำรวจหลัง ระยะเวลาโดยประมาณ (time = captureInterval * (captureNumber - 1)) โดยใช้ API /osc/commands/status และ fileUrls คือผลลัพธ์ที่แสดงเมื่อคำสั่งเสร็จสิ้น หากคำสั่งดำเนินการไม่สำเร็จ (เช่น มีรูปภาพเพียง 3 รูปจากทั้งหมด ถ่ายก่อนที่แบตเตอรี่จะหมด) หรือกล้องไม่ได้เชื่อมต่อ จากโทรศัพท์ไคลเอ็นต์ตรงกลาง แต่คำสั่งทำได้สำเร็จ ลูกค้าควรได้รูปภาพโดยใช้ camera.listFiles เมื่อมีการเชื่อมต่อใหม่ระหว่างไคลเอ็นต์และกล้องอีกครั้ง

ข้อผิดพลาด

  • disableCommand: ปิดใช้คำสั่งอยู่ในขณะนี้ ตัวอย่างเช่น กล้องถ่ายรูป จะอยู่ระหว่างการจับภาพวิดีโอหรือการบันทึกตามช่วงเวลา
  • invalidParametersName: ระบบไม่รู้จักชื่อพารามิเตอร์ ตัวอย่างเช่น ไม่รู้จัก sessionId

Command I/O

อินพุตคำสั่ง
none
เอาต์พุตคำสั่ง
{
    "results": {
        "fileUrls":[
            "url1",
            "url2",
            "url3",
            ...
            "urln"
        ]
    }
}
เอาต์พุตคำสั่ง (ข้อผิดพลาด)
{
    "error": {
        "code": "disabledCommand",
        "message": "Command is currently disabled."
    }
}