1-- http://www.itu.int/ITU-T/asn1/database/itu-t/h/h282/1999/RDC-PROTOCOL.asn
2
3-- Module RDC-PROTOCOL (H.282:02/1998)
4RDC-PROTOCOL {itu-t(0) recommendation(0) h 282 version(0) 1} DEFINITIONS
5AUTOMATIC TAGS ::=
6BEGIN
7
8-- Export all symbols
9-- ==========================================================================
10-- Part 1:  Message Components
11-- ==========================================================================
12H221NonStandardIdentifier ::= OCTET STRING(SIZE (4..255))
13
14-- First four octets shall be country code and
15-- Manufacturer code, assigned as specified in
16-- H.221 Annex A for NS-cap and NS-comm
17Key ::= CHOICE -- Identifier of a standard or non-standard object
18         {
19  object           OBJECT IDENTIFIER,
20  h221NonStandard  H221NonStandardIdentifier
21}
22
23NonStandardParameter ::= SEQUENCE {key   Key,
24                                   data  OCTET STRING
25}
26
27Handle ::= INTEGER(0..4294967295)
28
29NonStandardIdentifier ::= CHOICE {
30  object           OBJECT IDENTIFIER,
31  h221nonStandard  H221NonStandardIdentifier
32}
33
34TextString ::=
35  BMPString
36    (SIZE (0..255)) -- Basic Multilingual Plane of ISO/IEC 10646-1 (Unicode)
37
38
39DeviceClass ::= CHOICE {
40  camera                NULL,
41  microphone            NULL,
42  streamPlayerRecorder  NULL,
43  slideProjector        NULL,
44  lightSource           NULL,
45  sourceCombiner        NULL,
46  nonStandardDevice     NonStandardIdentifier
47}
48
49DeviceID ::= INTEGER(0..127)
50
51StreamID ::= INTEGER(0..65535)
52
53DeviceProfile ::= SEQUENCE {
54  deviceID           DeviceID,
55  audioSourceFlag    BOOLEAN,
56  audioSinkFlag      BOOLEAN,
57  videoSourceFlag    BOOLEAN,
58  videoSinkFlag      BOOLEAN,
59  remoteControlFlag  BOOLEAN,
60  instanceNumber     INTEGER(0..255),
61  deviceName         TextString OPTIONAL,
62  ...
63}
64
65StreamProfile ::= SEQUENCE {
66  streamID          StreamID,
67  videoStreamFlag   BOOLEAN,
68  sourceChangeFlag  BOOLEAN,
69  streamName        TextString OPTIONAL,
70  ...
71}
72
73CapabilityID ::= CHOICE {
74  standard     INTEGER(0..65535), -- Assigned by this specification
75  nonStandard  Key
76}
77
78NonCollapsingCapabilities ::=
79  SET OF
80    SEQUENCE {capabilityID     CapabilityID,
81              applicationData
82                CHOICE {deviceList  SET SIZE (0..127) OF DeviceProfile,
83                        streamList  SET SIZE (0..127) OF StreamProfile
84              }}
85
86--
87-- Attribute parameter types
88--
89Day ::= INTEGER(1..31)
90
91Month ::= INTEGER(1..12)
92
93Year ::= INTEGER(1980..2999)
94
95Hour ::= INTEGER(0..23)
96
97Minute ::= INTEGER(0..59)
98
99DeviceText ::= OCTET STRING(SIZE (0..32))
100
101PanPosition ::= INTEGER(-18000..18000) -- 100ths of a degree
102
103
104TiltPosition ::= INTEGER(-18000..18000) -- 100ths of a degree
105
106
107ZoomPosition ::= INTEGER(-1023..1023)
108
109IrisPosition ::= INTEGER(-127..127)
110
111FocusPosition ::= INTEGER(-127..127)
112
113CameraPanSpeed ::= INTEGER(1..18000) -- 100ths of a degree/sec
114
115
116CameraTiltSpeed ::= INTEGER(1..18000) -- 100ths of a degree/sec
117
118
119BackLight ::= INTEGER(0..255)
120
121WhiteBalance ::= INTEGER(0..255)
122
123PresetNumber ::= INTEGER(1..255)
124
125StreamPlayerState ::= CHOICE {
126  playing             NULL,
127  recording           NULL,
128  pausedOnRecord      NULL,
129  pausedOnPlay        NULL,
130  rewinding           NULL,
131  fastForwarding      NULL,
132  searchingForwards   NULL,
133  searchingBackwards  NULL,
134  stopped             NULL,
135  programUnavailable  NULL
136}
137
138DevicePresetCapability ::= SEQUENCE {
139  maxNumber         PresetNumber,
140  presetCapability
141    SET SIZE (0..255) OF
142      SEQUENCE {presetNumber        PresetNumber,
143                storeModeSupported  BOOLEAN,
144                presetTextLabel     DeviceText} OPTIONAL
145}
146
147CameraFilterCapability ::= SEQUENCE {
148  maxNumberOfFilters  INTEGER(2..255),
149  filterTextLabel
150    SET SIZE (0..255) OF
151      SEQUENCE {filterNumber     INTEGER(1..255),
152                filterTextLabel  DeviceText} OPTIONAL
153}
154
155CameraLensCapability ::= SEQUENCE {
156  maxNumberOfLens     INTEGER(2..255),
157  accessoryTextLabel
158    SET SIZE (0..255) OF
159      SEQUENCE {lensNumber     INTEGER(1..255),
160                lensTextLabel  DeviceText} OPTIONAL
161}
162
163ExternalCameraLightCapability ::= SEQUENCE {
164  maxNumber       INTEGER(1..10),
165  lightTextLabel
166    SET SIZE (0..10) OF
167      SEQUENCE {lightNumber  INTEGER(1..10),
168                lightLabel   DeviceText} OPTIONAL
169}
170
171CameraPanSpeedCapability ::= SEQUENCE {
172  maxSpeed       CameraPanSpeed,
173  minSpeed       CameraPanSpeed,
174  speedStepSize  CameraPanSpeed
175}
176
177CameraTiltSpeedCapability ::= SEQUENCE {
178  maxSpeed       CameraTiltSpeed,
179  minSpeed       CameraTiltSpeed,
180  speedStepSize  CameraTiltSpeed
181}
182
183MaxBacklight ::= INTEGER(1..255)
184
185MaxWhiteBalance ::= INTEGER(1..255)
186
187MinZoomPositionSetSize ::= INTEGER(1..1023)
188
189MinFocusPositionStepSize ::= INTEGER(1..127)
190
191MinIrisPositionStepSize ::= INTEGER(1..127)
192
193PanPositionCapability ::= SEQUENCE {
194  maxLeft      INTEGER(-18000..0), -- Max pan left
195  maxRight     INTEGER(0..18000), -- Max pan right
196  minStepSize  INTEGER(1..18000)
197}
198
199TiltPositionCapability ::= SEQUENCE {
200  maxDown      INTEGER(-18000..0), -- Max tilt down
201  maxUp        INTEGER(0..18000), -- Max tilt up
202  minStepSize  INTEGER(1..18000)
203}
204
205MinZoomMagnificationStepSize ::= INTEGER(1..1000)
206
207MaxNumberOfSlides ::= INTEGER(1..1024)
208
209MaxSlideDisplayTime ::= INTEGER(1..255) -- Max time in seconds
210
211
212MaxNumberOfPrograms ::= INTEGER(1..1023)
213
214PlayBackSpeedCapability ::= SEQUENCE {
215  multiplierFactors  SET SIZE (1..64) OF INTEGER(10..1000),
216  divisorFactors     SET SIZE (1..64) OF INTEGER(10..1000)
217}
218
219VideoInputsCapability ::= SEQUENCE {
220  numberOfDeviceInputs  INTEGER(2..64),
221  numberOfDeviceRows    INTEGER(1..64),
222  -- The Optional Device list is only included if the inputs are configurable
223  availableDevices
224    SET SIZE (2..64) OF
225      SEQUENCE {deviceClass       DeviceClass,
226                deviceIdentifier  DeviceID} OPTIONAL
227}
228
229AudioInputsCapability ::= SEQUENCE {
230  numberOfDeviceInputs  INTEGER(2..64),
231  -- The Optional Device list is only included if the inputs are configurable
232  availableDevices
233    SET SIZE (2..64) OF
234      SEQUENCE {deviceClass       DeviceClass,
235                deviceIdentifier  DeviceID} OPTIONAL
236}
237
238DeviceAttribute ::= CHOICE {
239  deviceStateSupported                NULL,
240  deviceDateSupported                 NULL,
241  deviceTimeSupported                 NULL,
242  devicePresetSupported               DevicePresetCapability,
243  irisModeSupported                   NULL,
244  focusModeSupported                  NULL,
245  pointingModeSupported               NULL,
246  cameraLensSupported                 CameraLensCapability,
247  cameraFilterSupported               CameraFilterCapability,
248  homePositionSupported               NULL,
249  externalCameraLightSupported        ExternalCameraLightCapability,
250  clearCameraLensSupported            NULL,
251  cameraPanSpeedSupported             CameraPanSpeedCapability,
252  cameraTiltSpeedSupported            CameraTiltSpeedCapability,
253  backLightModeSupported              NULL,
254  backLightSettingSupported           MaxBacklight,
255  whiteBalanceSettingSupported        MaxWhiteBalance,
256  whiteBalanceModeSupported           NULL,
257  calibrateWhiteBalanceSupported      NULL,
258  focusImageSupported                 NULL,
259  captureImageSupported               NULL,
260  panContinuousSupported              NULL,
261  tiltContinuousSupported             NULL,
262  zoomContinuousSupported             NULL,
263  focusContinuousSupported            NULL,
264  irisContinuousSupported             NULL,
265  zoomPositionSupported               MinZoomPositionSetSize,
266  focusPositionSupported              MinFocusPositionStepSize,
267  irisPositionSupported               MinIrisPositionStepSize,
268  panPositionSupported                PanPositionCapability,
269  tiltPositionSupported               TiltPositionCapability,
270  zoomMagnificationSupported          MinZoomMagnificationStepSize,
271  panViewSupported                    NULL,
272  tiltViewSupported                   NULL,
273  selectSlideSupported                MaxNumberOfSlides,
274  selectNextSlideSupported            NULL,
275  slideShowModeSupported              NULL,
276  playSlideShowSupported              NULL,
277  setSlideDisplayTimeSupported        MaxSlideDisplayTime,
278  continuousRewindSupported           NULL,
279  continuousFastForwardSupported      NULL,
280  searchBackwardsSupported            NULL,
281  searchForwardsSupported             NULL,
282  pauseSupported                      NULL,
283  selectProgramSupported              MaxNumberOfPrograms,
284  nextProgramSupported                NULL,
285  gotoNormalPlayTimePointSupported    NULL,
286  readStreamPlayerStateSupported      NULL,
287  readProgramDurationSupported        NULL,
288  continuousPlayBackModeSupported     NULL,
289  playbackSpeedSupported              PlayBackSpeedCapability,
290  playSupported                       NULL,
291  setAudioOutputStateSupported        NULL,
292  playToNormalPlayTimePointSupported  NULL,
293  recordSupported                     NULL,
294  recordForDurationSupported          NULL,
295  configurableVideoInputsSupported    VideoInputsCapability,
296  videoInputsSupported                VideoInputsCapability,
297  configurableAudioInputsSupported    AudioInputsCapability,
298  audioInputsSupported                AudioInputsCapability,
299  -- Attributes for Device Events
300  deviceLockStateChangedSupported     NULL,
301  deviceAvailabilityChangedSupported  NULL,
302  cameraPannedToLimitSupported        NULL,
303  cameraTiltedToLimitSupported        NULL,
304  cameraZoomedToLimitSupported        NULL,
305  cameraFocusedToLimitSupported       NULL,
306  autoSlideShowFinishedSupported      NULL,
307  streamPlayerStateChangeSupported    NULL,
308  streamPlayerProgramChangeSupported  NULL,
309  nonStandardAttributeSupported       NonStandardParameter,
310  ...
311}
312
313DeviceState ::= CHOICE {active    NULL,
314                        inactive  NULL
315}
316
317DeviceDate ::= SEQUENCE {day    Day,
318                         month  Month,
319                         year   Year
320}
321
322DeviceTime ::= SEQUENCE {hour    Hour,
323                         minute  Minute
324}
325
326DevicePreset ::= SEQUENCE {
327  presetNumber  PresetNumber,
328  mode          CHOICE {store     NULL,
329                        activate  NULL}
330}
331
332Mode ::= CHOICE {manual  NULL,
333                 auto    NULL
334}
335
336PointingToggle ::= CHOICE {manual  NULL,
337                           auto    NULL,
338                           toggle  NULL
339}
340
341SelectExternalLight ::= CHOICE {lightNumber  INTEGER(1..10),
342                                none         NULL
343}
344
345PanContinuous ::= SEQUENCE {
346  panDirection
347    CHOICE {left      NULL,
348            right     NULL,
349            stop      NULL,
350            continue  NULL},
351  timeOut       INTEGER(50..1000) -- Milliseconds
352}
353
354TiltContinuous ::= SEQUENCE {
355  tiltDirection
356    CHOICE {up        NULL,
357            down      NULL,
358            stop      NULL,
359            continue  NULL},
360  timeOut        INTEGER(50..1000) -- Milliseconds
361}
362
363ZoomContinuous ::= SEQUENCE {
364  zoomDirection
365    CHOICE {telescopic  NULL,
366            wide        NULL,
367            stop        NULL,
368            continue    NULL},
369  timeOut        INTEGER(50..1000) -- Milliseconds
370}
371
372FocusContinuous ::= SEQUENCE {
373  focusDirection
374    CHOICE {near      NULL,
375            far       NULL,
376            stop      NULL,
377            continue  NULL},
378  timeOut         INTEGER(50..1000) -- Milliseconds
379}
380
381IrisContinuous ::= SEQUENCE {
382  irisDirection
383    CHOICE {darker    NULL,
384            lighter   NULL,
385            stop      NULL,
386            continue  NULL},
387  timeOut        INTEGER(50..1000) -- Milliseconds
388}
389
390PositioningMode ::= CHOICE {relative  NULL,
391                            absolute  NULL
392}
393
394CameraLensNumber ::= INTEGER(1..255)
395
396CameraFilterNumber ::= INTEGER(1..255)
397
398SetZoomPosition ::= SEQUENCE {
399  zoomPosition     ZoomPosition,
400  positioningMode  PositioningMode
401}
402
403SetFocusPosition ::= SEQUENCE {
404  focusPosition    FocusPosition,
405  positioningMode  PositioningMode
406}
407
408SetIrisPosition ::= SEQUENCE {
409  irisPosition     IrisPosition,
410  positioningMode  PositioningMode
411}
412
413SetPanPosition ::= SEQUENCE {
414  panPosition      PanPosition,
415  positioningMode  PositioningMode
416}
417
418SetTiltPosition ::= SEQUENCE {
419  tiltPosition     TiltPosition,
420  positioningMode  PositioningMode
421}
422
423ZoomMagnification ::= INTEGER(10..1000)
424
425PanView ::= INTEGER(-1000..1000)
426
427TiltView ::= INTEGER(-1000..1000)
428
429SlideNumber ::= INTEGER(0..1023)
430
431SelectDirection ::= CHOICE {next      NULL,
432                            previous  NULL
433}
434
435AutoSlideShowControl ::= CHOICE {start  NULL,
436                                 stop   NULL,
437                                 pause  NULL
438}
439
440AutoSlideDisplayTime ::=
441  INTEGER(1..255) -- Automatic slide display time in seconds
442
443
444ProgramNumber ::= INTEGER(1..1023)
445
446ProgramDuration ::= SEQUENCE {
447  hours         INTEGER(0..24),
448  minutes       INTEGER(0..59),
449  seconds       INTEGER(0..59),
450  microseconds  INTEGER(0..99999)
451}
452
453PlaybackSpeed ::= SEQUENCE {
454  scaleFactor     INTEGER(10..1000),
455  multiplyFactor  BOOLEAN -- TRUE to multiply, FALSE to divide
456}
457
458RecordForDuration ::= SEQUENCE {
459  hours    INTEGER(0..24),
460  minutes  INTEGER(0..59),
461  seconds  INTEGER(0..59)
462}
463
464DeviceInputs ::= SEQUENCE {
465  -- When used with the configurableVideoInputs type this device list must only contain
466  -- devices that source a video stream.
467  -- When used with the configurableAudioInputs type this device list must only contain
468  -- devices that source an audio stream.
469  inputDevices
470    SET SIZE (2..64) OF
471      SEQUENCE {deviceClass       DeviceClass,
472                deviceIdentifier  DeviceID}
473}
474
475ControlAttribute ::= CHOICE {
476  setDeviceState                DeviceState,
477  setDeviceDate                 DeviceDate,
478  setDeviceTime                 DeviceTime,
479  setDevicePreset               DevicePreset,
480  setIrisMode                   Mode,
481  setFocusMode                  Mode,
482  setBackLightMode              Mode,
483  setPointingMode               PointingToggle,
484  selectCameraLens              CameraLensNumber,
485  selectCameraFilter            CameraFilterNumber,
486  gotoHomePosition              NULL,
487  selectExternalLight           SelectExternalLight,
488  clearCameraLens               NULL,
489  setCameraPanSpeed             CameraPanSpeed,
490  setCameraTiltSpeed            CameraTiltSpeed,
491  setBackLight                  BackLight,
492  setWhiteBalance               WhiteBalance,
493  setWhiteBalanceMode           Mode,
494  calibrateWhiteBalance         NULL,
495  focusImage                    NULL,
496  captureImage                  NULL,
497  panContinuous                 PanContinuous,
498  tiltContinuous                TiltContinuous,
499  zoomContinuous                ZoomContinuous,
500  focusContinuous               FocusContinuous,
501  setZoomPosition               SetZoomPosition,
502  setFocusPosition              SetFocusPosition,
503  setIrisPosition               SetIrisPosition,
504  setPanPosition                SetPanPosition,
505  setTiltPosition               SetTiltPosition,
506  setZoomMagnification          ZoomMagnification,
507  setPanView                    PanView,
508  setTiltView                   TiltView,
509  selectSlide                   SlideNumber,
510  selectNextSlide               SelectDirection,
511  playAutoSlideShow             AutoSlideShowControl,
512  setAutoSlideDisplayTime       AutoSlideDisplayTime,
513  continuousRewindControl       BOOLEAN, -- TRUE to start, FALSE to Stop
514  continuousFastForwardControl  BOOLEAN, -- TRUE to start, FALSE to Stop
515  searchBackwardsControl        BOOLEAN, -- TRUE to start, FALSE to Stop
516  searchForwardsControl         BOOLEAN, -- TRUE to start, FALSE to Stop
517  pause                         BOOLEAN, -- TRUE to pause, FALSE to release
518  selectProgram                 ProgramNumber,
519  nextProgramSelect             SelectDirection,
520  gotoNormalPlayTimePoint       ProgramDuration,
521  continuousPlayBackMode        BOOLEAN, -- TRUE to set continuous mode
522  setPlaybackSpeed              PlaybackSpeed,
523  play                          BOOLEAN, -- TRUE to pause, FALSE to release
524  setAudioOutputMute            BOOLEAN, -- TRUE to mute, FALSE to unmute
525  playToNormalPlayTimePoint     ProgramDuration,
526  record                        BOOLEAN, -- TRUE to start, FALSE to Stop
527  recordForDuration             RecordForDuration,
528  configureVideoInputs          DeviceInputs, -- Device list contains Video devices
529  configureAudioInputs          DeviceInputs, -- Device list contains Audio Devices
530  nonStandardControl            NonStandardParameter,
531  ...
532}
533
534StatusAttributeIdentifier ::= CHOICE {
535  getDeviceState              NULL,
536  getDeviceDate               NULL,
537  getDeviceTime               NULL,
538  getdevicePreset             NULL,
539  getIrisMode                 NULL,
540  getFocusMode                NULL,
541  getBacklightMode            NULL,
542  getPointingMode             NULL,
543  getCameraLens               NULL,
544  getCameraFilter             NULL,
545  getExternalLight            NULL,
546  getCameraPanSpeed           NULL,
547  getCameraTiltSpeed          NULL,
548  getBackLightMode            NULL,
549  getBackLight                NULL,
550  getWhiteBalance             NULL,
551  getWhiteBalanceMode         NULL,
552  getZoomPosition             NULL,
553  getFocusPosition            NULL,
554  getIrisPosition             NULL,
555  getPanPosition              NULL,
556  getTiltPosition             NULL,
557  getSelectedSlide            NULL,
558  getAutoSlideDisplayTime     NULL,
559  getSelectedProgram          NULL,
560  getStreamPlayerState        NULL,
561  getCurrentProgramDuration   NULL,
562  getPlaybackSpeed            NULL,
563  getAudioOutputState         NULL,
564  getConfigurableVideoInputs  NULL,
565  getVideoInputs              NULL,
566  getConfigurableAudioInputs  NULL,
567  getAudioInputs              NULL,
568  getNonStandardStatus        NonStandardIdentifier,
569  ...
570}
571
572CurrentDeviceState ::= CHOICE {deviceState  DeviceState,
573                               unknown      NULL
574}
575
576CurrentDeviceDate ::= SEQUENCE {
577  currentDay    CHOICE {day      Day,
578                        unknown  NULL},
579  currentMonth  CHOICE {month    Month,
580                        unknown  NULL},
581  currentYear   CHOICE {year     Year,
582                        unknown  NULL}
583}
584
585CurrentDeviceTime ::= SEQUENCE {
586  currentHour    CHOICE {hour     Hour,
587                         unknown  NULL},
588  currentMinute  CHOICE {minute   Minute,
589                         unknown  NULL}
590}
591
592CurrentDevicePreset ::= CHOICE {preset   PresetNumber,
593                                unknown  NULL
594}
595
596CurrentMode ::= CHOICE {mode     Mode,
597                        unknown  NULL
598}
599
600CurrentPointingMode ::= CHOICE {
601  automatic  NULL,
602  manual     NULL,
603  unknown    NULL
604}
605
606CurrentCameraLensNumber ::= CHOICE {
607  lensNumber  CameraLensNumber,
608  unknown     NULL
609}
610
611CurrentCameraFilterNumber ::= CHOICE {
612  lensNumber  CameraFilterNumber,
613  unknown     NULL
614}
615
616CurrentExternalLight ::= CHOICE {
617  lightNumber  INTEGER(1..10),
618  none         NULL,
619  unknown      NULL
620}
621
622CurrentCameraPanSpeed ::= CHOICE {speed    CameraPanSpeed,
623                                  unknown  NULL
624}
625
626CurrentCameraTiltSpeed ::= CHOICE {speed    CameraTiltSpeed,
627                                   unknown  NULL
628}
629
630CurrentBackLight ::= CHOICE {backLight  BackLight,
631                             unknown    NULL
632}
633
634CurrentWhiteBalance ::= CHOICE {whiteBalance  WhiteBalance,
635                                unknown       NULL
636}
637
638CurrentZoomPosition ::= CHOICE {zoomPosition  ZoomPosition,
639                                unknown       NULL
640}
641
642CurrentFocusPosition ::= CHOICE {
643  focusPosition  FocusPosition,
644  unknown        NULL
645}
646
647CurrentIrisPosition ::= CHOICE {irisPosition  IrisPosition,
648                                unknown       NULL
649}
650
651CurrentPanPosition ::= CHOICE {panPosition  PanPosition,
652                               unknown      NULL
653}
654
655CurrentTiltPosition ::= CHOICE {tiltPosition  TiltPosition,
656                                unknown       NULL
657}
658
659CurrentSlide ::= CHOICE {slide    SlideNumber,
660                         unknown  NULL
661}
662
663CurrentAutoSlideDisplayTime ::= CHOICE {
664  time     AutoSlideDisplayTime,
665  unknown  NULL
666}
667
668CurrentSelectedProgram ::= CHOICE {program  ProgramNumber,
669                                   unknown  NULL
670}
671
672CurrentStreamPlayerState ::= CHOICE {state    StreamPlayerState,
673                                     unknown  NULL
674}
675
676CurrentPlaybackSpeed ::= CHOICE {speed    PlaybackSpeed,
677                                 unknown  NULL
678}
679
680CurrentAudioOutputMute ::= CHOICE {
681  mute     BOOLEAN, -- TRUE if muted
682  unknown  NULL
683}
684
685StatusAttribute ::= CHOICE {
686  currentdeviceState           CurrentDeviceState,
687  currentDeviceDate            CurrentDeviceDate,
688  currentDeviceTime            CurrentDeviceTime,
689  currentDevicePreset          CurrentDevicePreset,
690  currentIrisMode              CurrentMode,
691  currentFocusMode             CurrentMode,
692  currentBackLightMode         CurrentMode,
693  currentPointingMode          CurrentPointingMode,
694  currentCameraLens            CurrentCameraLensNumber,
695  currentCameraFilter          CurrentCameraFilterNumber,
696  currentExternalLight         CurrentExternalLight,
697  currentCameraPanSpeed        CurrentCameraPanSpeed,
698  currentCameraTiltSpeed       CurrentCameraTiltSpeed,
699  currentBackLight             CurrentBackLight,
700  currentWhiteBalance          CurrentWhiteBalance,
701  currentWhiteBalanceMode      CurrentMode,
702  currentZoomPosition          CurrentZoomPosition,
703  currentFocusPosition         CurrentFocusPosition,
704  currentIrisPosition          CurrentIrisPosition,
705  currentPanPosition           CurrentPanPosition,
706  currentTiltPosition          CurrentTiltPosition,
707  currentSlide                 CurrentSlide,
708  currentAutoSlideDisplayTime  CurrentAutoSlideDisplayTime,
709  currentSelectedProgram       CurrentSelectedProgram,
710  currentstreamPlayerState     CurrentStreamPlayerState,
711  currentProgramDuration       ProgramDuration,
712  currentPlaybackSpeed         CurrentPlaybackSpeed,
713  currentAudioOutputMute       CurrentAudioOutputMute,
714  configurableVideoInputs      DeviceInputs,
715  videoInputs                  DeviceInputs,
716  configurableAudioInputs      DeviceInputs,
717  audioInputs                  DeviceInputs,
718  nonStandardStatus            NonStandardParameter,
719  ...
720}
721
722DeviceEventIdentifier ::= CHOICE {
723  requestDeviceLockChanged          NULL,
724  requestDeviceAvailabilityChanged  NULL,
725  requestCameraPannedToLimit        NULL,
726  requestCameraTiltedToLimit        NULL,
727  requestCameraZoomedToLimit        NULL,
728  requestCameraFocusedToLimit       NULL,
729  requestAutoSlideShowFinished      NULL,
730  requestStreamPlayerStateChange    NULL,
731  requestStreamPlayerProgramChange  NULL,
732  requestNonStandardEvent           NonStandardIdentifier,
733  ...
734}
735
736CameraPannedToLimit ::= CHOICE {left   NULL,
737                                right  NULL
738}
739
740CameraTiltedToLimit ::= CHOICE {up    NULL,
741                                down  NULL
742}
743
744CameraZoomedToLimit ::= CHOICE {telescopic  NULL,
745                                wide        NULL
746}
747
748CameraFocusedToLimit ::= CHOICE {near  NULL,
749                                 far   NULL
750}
751
752DeviceEvent ::= CHOICE {
753  deviceLockChanged          BOOLEAN, -- TRUE if now locked FALSE if now unlocked
754  deviceAvailabilityChanged  BOOLEAN, -- TRUE if available FALSE if now unavailable
755  cameraPannedToLimit        CameraPannedToLimit,
756  cameraTiltedToLimit        CameraTiltedToLimit,
757  cameraZoomedToLimit        CameraZoomedToLimit,
758  cameraFocusedToLimit       CameraFocusedToLimit,
759  autoSlideShowFinished      NULL,
760  streamPlayerStateChange    StreamPlayerState,
761  streamPlayerProgramChange  ProgramNumber,
762  nonStandardEvent           NonStandardParameter,
763  ...
764}
765
766-- ==========================================================================
767-- Part 2:  PDU Messages
768-- ==========================================================================
769SourceSelectRequest ::= SEQUENCE {
770  requestHandle     Handle,
771  deviceClass       DeviceClass,
772  deviceID          DeviceID,
773  streamIdentifier  StreamID,
774  ...
775}
776
777SourceSelectResponse ::= SEQUENCE {
778  requestHandle  Handle,
779  result
780    CHOICE {successful             NULL,
781            requestDenied          NULL,
782            deviceUnavailable      NULL,
783            invalidStreamID        NULL,
784            currentDeviceIsLocked  NULL,
785            deviceIncompatible     NULL,
786            ...},
787  ...
788}
789
790SourceEventsRequest ::= SEQUENCE {
791  requestHandle      Handle,
792  streamIdentifier   StreamID,
793  sourceEventNotify  BOOLEAN, -- TRUE to request source events
794  ...
795}
796
797SourceEventsResponse ::= SEQUENCE {
798  requestHandle  Handle,
799  deviceClass    DeviceClass,
800  deviceID       DeviceID,
801  result
802    CHOICE {successful          NULL,
803            eventsNotSupported  NULL,
804            invalidStreamID     NULL,
805            ...},
806  ...
807}
808
809SourceChangeEventIndication ::= SEQUENCE {
810  deviceClass  DeviceClass,
811  deviceID     DeviceID,
812  ...
813}
814
815DeviceAttributeRequest ::= SEQUENCE {
816  requestHandle  Handle,
817  deviceClass    DeviceClass,
818  deviceID       DeviceID,
819  ...
820}
821
822DeviceAttributeResponse ::= SEQUENCE {
823  requestHandle        Handle,
824  deviceAttributeList  SET OF DeviceAttribute OPTIONAL,
825  result
826    CHOICE {successful     NULL,
827            requestDenied  NULL,
828            unknownDevice  NULL,
829            ...},
830  ...
831}
832
833DeviceLockRequest ::= SEQUENCE {
834  requestHandle  Handle,
835  deviceClass    DeviceClass,
836  deviceID       DeviceID,
837  lockFlag       BOOLEAN, -- TRUE to lock
838  ...
839}
840
841DeviceLockResponse ::= SEQUENCE {
842  requestHandle  Handle,
843  result
844    CHOICE {successful           NULL,
845            requestDenied        NULL,
846            unknownDevice        NULL,
847            lockingNotSupported  NULL,
848            deviceAlreadyLocked  NULL,
849            ...},
850  ...
851}
852
853DeviceLockEnquireRequest ::= SEQUENCE {
854  requestHandle  Handle,
855  deviceClass    DeviceClass,
856  deviceID       DeviceID,
857  ...
858}
859
860DeviceLockEnquireResponse ::= SEQUENCE {
861  requestHandle  Handle,
862  result
863    CHOICE {lockRequired     NULL,
864            lockNotRequired  NULL,
865            unknownDevice    NULL,
866            ...},
867  ...
868}
869
870DeviceLockTerminatedIndication ::= SEQUENCE {
871  deviceClass  DeviceClass,
872  deviceID     DeviceID,
873  ...
874}
875
876DeviceControlRequest ::= SEQUENCE {
877  requestHandle         Handle,
878  deviceClass           DeviceClass,
879  deviceID              DeviceID,
880  controlAttributeList  SET SIZE (1..8) OF ControlAttribute,
881  ...
882}
883
884DeviceStatusEnquireRequest ::= SEQUENCE {
885  requestHandle                  Handle,
886  deviceClass                    DeviceClass,
887  deviceID                       DeviceID,
888  statusAttributeIdentifierList  SET SIZE (1..16) OF StatusAttributeIdentifier,
889  ...
890}
891
892DeviceStatusEnquireResponse ::= SEQUENCE {
893  requestHandle        Handle,
894  statusAttributeList  SET SIZE (1..16) OF StatusAttribute OPTIONAL,
895  result
896    CHOICE {successful            NULL,
897            requestDenied         NULL,
898            unknownDevice         NULL,
899            deviceUnavailable     NULL,
900            deviceAttributeError  NULL,
901            ...},
902  ...
903}
904
905ConfigureDeviceEventsRequest ::= SEQUENCE {
906  requestHandle              Handle,
907  deviceClass                DeviceClass,
908  deviceID                   DeviceID,
909  deviceEventIdentifierList  SET OF DeviceEventIdentifier,
910  ...
911}
912
913ConfigureDeviceEventsResponse ::= SEQUENCE {
914  requestHandle  Handle,
915  result
916    CHOICE {successful            NULL,
917            requestDenied         NULL,
918            unknownDevice         NULL,
919            deviceUnavailable     NULL,
920            deviceAttributeError  NULL,
921            ...},
922  ...
923}
924
925DeviceEventNotifyIndication ::= SEQUENCE {
926  deviceClass      DeviceClass,
927  deviceID         DeviceID,
928  deviceEventList  SET SIZE (1..8) OF DeviceEvent,
929  ...
930}
931
932NonStandardPDU ::= SEQUENCE {nonStandardData  NonStandardParameter,
933                             ...
934}
935
936-- ==========================================================================
937-- Part 3:  Messages sent using  lower layer protocol
938-- ==========================================================================
939RDCPDU ::= CHOICE {
940  request     RequestPDU,
941  response    ResponsePDU,
942  indication  IndicationPDU
943}
944
945RequestPDU ::= CHOICE {
946  sourceSelectRequest           SourceSelectRequest,
947  sourceEventsRequest           SourceEventsRequest,
948  deviceAttributeRequest        DeviceAttributeRequest,
949  deviceLockRequest             DeviceLockRequest,
950  deviceLockEnquireRequest      DeviceLockEnquireRequest,
951  deviceControlRequest          DeviceControlRequest,
952  deviceStatusEnquireRequest    DeviceStatusEnquireRequest,
953  configureDeviceEventsRequest  ConfigureDeviceEventsRequest,
954  nonStandardRequest            NonStandardPDU,
955  ...
956}
957
958ResponsePDU ::= CHOICE {
959  sourceSelectResponse           SourceSelectResponse,
960  sourceEventsResponse           SourceEventsResponse,
961  deviceAttributeResponse        DeviceAttributeResponse,
962  deviceLockResponse             DeviceLockResponse,
963  deviceLockEnquireResponse      DeviceLockEnquireResponse,
964  deviceStatusEnquireResponse    DeviceStatusEnquireResponse,
965  configureDeviceEventsResponse  ConfigureDeviceEventsResponse,
966  nonStandardResponse            NonStandardPDU,
967  ...
968}
969
970IndicationPDU ::= CHOICE {
971  sourceChangeEventIndication     SourceChangeEventIndication,
972  deviceLockTerminatedIndication  DeviceLockTerminatedIndication,
973  deviceEventNotifyIndication     DeviceEventNotifyIndication,
974  nonStandardIndication           NonStandardPDU,
975  ...
976}
977
978END
979
980-- Generated by Asnp, the ASN.1 pretty-printer of France Telecom R&D
981
982