ओएससी एपीआई स्पेसिफ़िकेशन का एपीआई लेवल 1, इमेज टाइप पर फ़ोकस करता है और एपीआई लेवल 2 में वीडियो की सुविधा जोड़ी गई है. कैमरा बनाने वाली कंपनियों को यह सुझाव दिया जाता है कि वे अपनी पसंद के निर्देश तय करें और/या ज़रूरत पड़ने पर वे स्टैंडर्ड निर्देशों के पैरामीटर सेट को बढ़ाएं. इन्हें वेंडर कमांड और वेंडर पैरामीटर के नाम से जाना जाता है.
वेंडर के लिए खास निर्देशों और पैरामीटर के नाम में अक्षर और अंक, और इससे पहले एक अंडरस्कोर ( _ ) लगाया जाना चाहिए.
वेंडर के फ़ंक्शन इस तरह से चार जगहों पर हो सकते हैं:
- /osc/info API का आउटपुट
- /osc/state API का आउटपुट
- OSC API की खास बातें, /osc/commands/execut के लिए निर्देश
- OSC API की खास बातें, कमांड पैरामीटर; उदाहरण के लिए,
setOptionsऔरgetOptionsकमांड के लिए पैरामीटर.
उदाहरण | |
|---|---|
| अनुरोध (एपीआई 1) | POST /osc/commands/execute HTTP/1.1 Host: [camera ip address]:[httpPort] Content-Type: application/json;charset=utf-8 Accept: application/json Content-Length: {CONTENT_LENGTH} X-XSRF-Protected: 1 { "name": "camera.setOptions", "parameters": { "sessionId": "12ABC3", "iso": 200, "exposureCompensation": -2, "captureMode": "_video" } } |
| जवाब | HTTP/1.1 200 OK Content-Type: application/json;charset=utf-8 Content-Length: {CONTENT_LENGTH} X-Content-Type-Options: nosniff { "name": "camera.setOptions", "state": "done" } |
| अनुरोध करें | POST /osc/commands/execute HTTP/1.1 Host: [camera ip address]:[httpPort] Content-Type: application/json;charset=utf-8 Accept: application/json Content-Length: {CONTENT_LENGTH} X-XSRF-Protected: 1 { "name": "camera._startRecording", "parameters": { "sessionId": "12ABC3", ... } } |
| जवाब | HTTP/1.1 200 OK Content-Type: application/json;charset=utf-8 Content-Length: {CONTENT_LENGTH} X-Content-Type-Options: nosniff { "name": "camera._startRecording", "state": "done" } |