API уровня 1 в спецификации OSC API ориентирован на работу с изображениями, поддержка видео добавлена в API уровня 2. Производителям камер рекомендуется определять собственные команды и/или расширять набор параметров стандартных команд по мере необходимости. Они называются Командами поставщика и Параметрами поставщика.
Названия команд и параметров поставщика должны быть выражены буквенно-числовыми символами и начинаться с нижнего подчеркивания ( _ ).
Функциональные возможности, определяемые поставщиком, могут быть указаны в четырех местах:
- Вывод /osc/info API
- Вывод of /osc/state API
- Спецификация OSC API, команды для /osc/commands/execute
- Спецификация OSC API, параметры команды; например, параметры для команд
setOptions
иgetOptions
.
Пример | |
---|---|
Запрос (API 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" } |