camera.startCapture

অপশনে captureMode মানের উপর নির্ভর করে ভিডিও ক্যাপচার বা ইন্টারভাল ইমেজ ক্যাপচার শুরু করে। এই কমান্ডটি API স্তর 2 এ যোগ করা হয়েছে।

পরামিতি

  • অনুরোধের বডিতে এই কমান্ডের কোনো প্যারামিটার নেই। এটি ইন্টারভাল ইমেজ ক্যাপচার বা ভিডিও ক্যাপচার কিনা তা captureMode বিকল্প দ্বারা নির্ধারিত হয়। ব্যবধান ক্যাপচারের জন্য, এটি ওপেন এন্ডেড ক্যাপচার কিনা তা নির্ভর করে captureNumber 0 এর সমান বা বড় কিনা তার উপর। captureMode , captureInterval এবং captureNumber ব্যবধান ক্যাপচারের আগে সেট করতে হবে। ভিডিও ক্যাপচারের আগে শুধুমাত্র captureMode "ভিডিও" এ সেট করতে হবে, যা শুধুমাত্র camera.stopCapture কমান্ড দ্বারা বন্ধ করা যেতে পারে।

ফলাফল

  • ওপেন-এন্ডেড ক্যাপচার (যখন captureMode == "ভিডিও" বা captureNumber == 0)
    • কোনো ফলাফল নেই।
  • অ-ওপেন-এন্ডেড ব্যবধান ক্যাপচার:
    • fileUrls: পরম URL এর একটি তালিকা, ব্যবধান ক্যাপচারের জন্য চিত্র ফাইলের দিকে নির্দেশ করে। অনুগ্রহ করে মনে রাখবেন এই কমান্ডটি অবিলম্বে fileUrls ফেরত দেয় না যেহেতু ক্যাপচারটি সম্পূর্ণ হতে captureNumber নেয়। ক্যামেরায় পর্যায়ক্রমে পোলিং করে কমান্ডের অগ্রগতি জানা যাবে। উদাহরণ স্বরূপ, /osc/commands/status API ব্যবহার করে একটি আনুমানিক সময়কাল ( time = captureInterval * (captureNumber - 1) ) পরে পোল করা fileUrls কমান্ড শেষ হলে ফলাফলটি ফেরত দেওয়া হয়। যদি কমান্ডটি সফলভাবে শেষ না হয় (যেমন ক্যামেরার ব্যাটারি শেষ হওয়ার আগে মাত্র 3টি ছবি তোলা হয়েছিল) বা ক্যামেরাটি মাঝখানে ক্লায়েন্ট ফোন থেকে সংযোগ বিচ্ছিন্ন হয়ে যায়, কিন্তু কমান্ডটি সফলভাবে শেষ হয়, ক্লায়েন্টের সক্ষম হওয়া উচিত ক্লায়েন্ট এবং ক্যামেরার মধ্যে একটি নতুন সংযোগ স্থাপন করা হলে camera.listFiles ব্যবহার করে ছবিগুলি পেতে।

ত্রুটি

  • disabledCommand: কমান্ড বর্তমানে নিষ্ক্রিয়; উদাহরণস্বরূপ, ক্যামেরাটি একটি ভিডিও ক্যাপচার বা একটি ব্যবধান ক্যাপচারের মাঝখানে থাকে৷
  • invalidParameterName: প্যারামিটার নামটি অচেনা; উদাহরণস্বরূপ, sessionId স্বীকৃত নয়।

কমান্ড I/O

কমান্ড ইনপুট
none
কমান্ড আউটপুট
{
    "results": {
        "fileUrls":[
            "url1",
            "url2",
            "url3",
            ...
            "urln"
        ]
    }
}
কমান্ড আউটপুট (ত্রুটি)
{
    "error": {
        "code": "disabledCommand",
        "message": "Command is currently disabled."
    }
}