wireshark/asn1/h245/MULTIMEDIA-SYSTEM-CONTROL.asn

3413 lines
122 KiB
Groff

-- MULTIMEDIA-SYSTEM-CONTROL.asn
--
-- Taken from ITU ASN.1 database
-- http://www.itu.int/ITU-T/formal-language/itu-t/h/h245/2009v15/MULTIMEDIA-SYSTEM-CONTROL.asn
--
-- $Id$
--
-- Module MULTIMEDIA-SYSTEM-CONTROL (H.245:12/2009)
MULTIMEDIA-SYSTEM-CONTROL {itu-t(0) recommendation(0) h(8) h245(245)
version(0) 15 multimedia-system-control(0)} DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
-- Export all symbols
-- =======================================================================
-- Top level Messages
-- =======================================================================
MultimediaSystemControlMessage ::= CHOICE {
request RequestMessage,
response ResponseMessage,
command CommandMessage,
indication IndicationMessage,
...
}
-- A RequestMessage results in action and requires an immediate response
RequestMessage ::= CHOICE {
nonStandard NonStandardMessage,
masterSlaveDetermination MasterSlaveDetermination,
terminalCapabilitySet TerminalCapabilitySet,
openLogicalChannel OpenLogicalChannel,
closeLogicalChannel CloseLogicalChannel,
requestChannelClose RequestChannelClose,
multiplexEntrySend MultiplexEntrySend,
requestMultiplexEntry RequestMultiplexEntry,
requestMode RequestMode,
roundTripDelayRequest RoundTripDelayRequest,
maintenanceLoopRequest MaintenanceLoopRequest,
...,
communicationModeRequest CommunicationModeRequest,
conferenceRequest ConferenceRequest,
multilinkRequest MultilinkRequest,
logicalChannelRateRequest LogicalChannelRateRequest,
genericRequest GenericMessage
}
-- A ResponseMessage is the response to a RequestMessage
ResponseMessage ::= CHOICE {
nonStandard NonStandardMessage,
masterSlaveDeterminationAck MasterSlaveDeterminationAck,
masterSlaveDeterminationReject MasterSlaveDeterminationReject,
terminalCapabilitySetAck TerminalCapabilitySetAck,
terminalCapabilitySetReject TerminalCapabilitySetReject,
openLogicalChannelAck OpenLogicalChannelAck,
openLogicalChannelReject OpenLogicalChannelReject,
closeLogicalChannelAck CloseLogicalChannelAck,
requestChannelCloseAck RequestChannelCloseAck,
requestChannelCloseReject RequestChannelCloseReject,
multiplexEntrySendAck MultiplexEntrySendAck,
multiplexEntrySendReject MultiplexEntrySendReject,
requestMultiplexEntryAck RequestMultiplexEntryAck,
requestMultiplexEntryReject RequestMultiplexEntryReject,
requestModeAck RequestModeAck,
requestModeReject RequestModeReject,
roundTripDelayResponse RoundTripDelayResponse,
maintenanceLoopAck MaintenanceLoopAck,
maintenanceLoopReject MaintenanceLoopReject,
...,
communicationModeResponse CommunicationModeResponse,
conferenceResponse ConferenceResponse,
multilinkResponse MultilinkResponse,
logicalChannelRateAcknowledge LogicalChannelRateAcknowledge,
logicalChannelRateReject LogicalChannelRateReject,
genericResponse GenericMessage
}
-- A CommandMessage requires action, but no explicit response
CommandMessage ::= CHOICE {
nonStandard NonStandardMessage,
maintenanceLoopOffCommand MaintenanceLoopOffCommand,
sendTerminalCapabilitySet SendTerminalCapabilitySet,
encryptionCommand EncryptionCommand,
flowControlCommand FlowControlCommand,
endSessionCommand EndSessionCommand,
miscellaneousCommand MiscellaneousCommand,
...,
communicationModeCommand CommunicationModeCommand,
conferenceCommand ConferenceCommand,
h223MultiplexReconfiguration H223MultiplexReconfiguration,
newATMVCCommand NewATMVCCommand,
mobileMultilinkReconfigurationCommand MobileMultilinkReconfigurationCommand,
genericCommand GenericMessage
}
-- An IndicationMessage is information that does not require action or response
IndicationMessage ::= CHOICE {
nonStandard NonStandardMessage,
functionNotUnderstood FunctionNotUnderstood,
masterSlaveDeterminationRelease MasterSlaveDeterminationRelease,
terminalCapabilitySetRelease TerminalCapabilitySetRelease,
openLogicalChannelConfirm OpenLogicalChannelConfirm,
requestChannelCloseRelease RequestChannelCloseRelease,
multiplexEntrySendRelease MultiplexEntrySendRelease,
requestMultiplexEntryRelease RequestMultiplexEntryRelease,
requestModeRelease RequestModeRelease,
miscellaneousIndication MiscellaneousIndication,
jitterIndication JitterIndication,
h223SkewIndication H223SkewIndication,
newATMVCIndication NewATMVCIndication,
userInput UserInputIndication,
...,
h2250MaximumSkewIndication H2250MaximumSkewIndication,
mcLocationIndication MCLocationIndication,
conferenceIndication ConferenceIndication,
vendorIdentification VendorIdentification,
functionNotSupported FunctionNotSupported,
multilinkIndication MultilinkIndication,
logicalChannelRateRelease LogicalChannelRateRelease,
flowControlIndication FlowControlIndication,
mobileMultilinkReconfigurationIndication
MobileMultilinkReconfigurationIndication,
genericIndication GenericMessage
}
-- SequenceNumber is defined here as it is used in a number of Messages
SequenceNumber ::= INTEGER(0..255)
-- =============================================================================
-- Generic Message definitions
-- =============================================================================
GenericMessage ::= SEQUENCE {
messageIdentifier CapabilityIdentifier,
subMessageIdentifier INTEGER(0..127) OPTIONAL,
messageContent SEQUENCE OF GenericParameter OPTIONAL,
...
}
GenericInformation ::= GenericMessage
-- =============================================================================
-- Non-standard Message definitions
-- =============================================================================
NonStandardMessage ::= SEQUENCE {nonStandardData NonStandardParameter,
...
}
NonStandardParameter ::= SEQUENCE {
nonStandardIdentifier NonStandardIdentifier,
data OCTET STRING
}
NonStandardIdentifier ::= CHOICE {
object OBJECT IDENTIFIER,
h221NonStandard
SEQUENCE {t35CountryCode INTEGER(0..255), -- country, per --
-- Annex A/T.35
t35Extension INTEGER(0..255),
-- assigned nationally unless
-- t35CountryCode is binary
-- 1111 1111, in which case it shall
-- contain the country code
-- according to Annex B/T.35
manufacturerCode INTEGER(0..65535) -- assigned nationally
}
}
-- =============================================================================
-- Master-slave determination definitions
-- =============================================================================
MasterSlaveDetermination ::= SEQUENCE {
terminalType INTEGER(0..255),
statusDeterminationNumber INTEGER(0..16777215),
...
}
MasterSlaveDeterminationAck ::= SEQUENCE {
decision CHOICE {master NULL,
slave NULL},
...
}
MasterSlaveDeterminationReject ::= SEQUENCE {
cause CHOICE {identicalNumbers NULL,
...},
...
}
MasterSlaveDeterminationRelease ::= SEQUENCE {...
}
-- =============================================================================
-- Capability exchange definitions
-- =============================================================================
TerminalCapabilitySet ::= SEQUENCE {
sequenceNumber SequenceNumber,
protocolIdentifier OBJECT IDENTIFIER,
-- shall be set to the value
-- {itu-t (0) recommendation (0) h (8) 245
-- version (0) 15}
multiplexCapability MultiplexCapability OPTIONAL,
capabilityTable SET SIZE (1..256) OF CapabilityTableEntry OPTIONAL,
capabilityDescriptors SET SIZE (1..256) OF CapabilityDescriptor OPTIONAL,
...,
genericInformation SEQUENCE OF GenericInformation OPTIONAL
-- generic information associated
-- with the message
}
CapabilityTableEntry ::= SEQUENCE {
capabilityTableEntryNumber CapabilityTableEntryNumber,
capability Capability OPTIONAL
}
CapabilityDescriptor ::= SEQUENCE {
capabilityDescriptorNumber CapabilityDescriptorNumber,
simultaneousCapabilities
SET SIZE (1..256) OF AlternativeCapabilitySet OPTIONAL
}
AlternativeCapabilitySet ::=
SEQUENCE SIZE (1..256) OF CapabilityTableEntryNumber
CapabilityTableEntryNumber ::= INTEGER(1..65535)
CapabilityDescriptorNumber ::= INTEGER(0..255)
TerminalCapabilitySetAck ::= SEQUENCE {
sequenceNumber SequenceNumber,
...,
genericInformation SEQUENCE OF GenericInformation OPTIONAL
-- generic information associated
-- with the message
}
TerminalCapabilitySetReject ::= SEQUENCE {
sequenceNumber SequenceNumber,
cause
CHOICE {unspecified NULL,
undefinedTableEntryUsed NULL,
descriptorCapacityExceeded NULL,
tableEntryCapacityExceeded
CHOICE {highestEntryNumberProcessed CapabilityTableEntryNumber,
noneProcessed NULL},
...},
...,
genericInformation SEQUENCE OF GenericInformation OPTIONAL
-- generic information associated
-- with the message
}
TerminalCapabilitySetRelease ::= SEQUENCE {
...,
genericInformation SEQUENCE OF GenericInformation OPTIONAL
-- generic information associated
-- with the message
}
-- =============================================================================
-- Capability exchange definitions: top level capability description
-- =============================================================================
Capability ::= CHOICE {
nonStandard NonStandardParameter,
receiveVideoCapability VideoCapability,
transmitVideoCapability VideoCapability,
receiveAndTransmitVideoCapability VideoCapability,
receiveAudioCapability AudioCapability,
transmitAudioCapability AudioCapability,
receiveAndTransmitAudioCapability AudioCapability,
receiveDataApplicationCapability DataApplicationCapability,
transmitDataApplicationCapability DataApplicationCapability,
receiveAndTransmitDataApplicationCapability DataApplicationCapability,
h233EncryptionTransmitCapability BOOLEAN,
h233EncryptionReceiveCapability
SEQUENCE {h233IVResponseTime INTEGER(0..255), -- units milliseconds --
...},
...,
conferenceCapability ConferenceCapability,
h235SecurityCapability H235SecurityCapability,
maxPendingReplacementFor INTEGER(0..255),
receiveUserInputCapability UserInputCapability,
transmitUserInputCapability UserInputCapability,
receiveAndTransmitUserInputCapability UserInputCapability,
genericControlCapability GenericCapability,
receiveMultiplexedStreamCapability MultiplexedStreamCapability,
transmitMultiplexedStreamCapability MultiplexedStreamCapability,
receiveAndTransmitMultiplexedStreamCapability MultiplexedStreamCapability,
receiveRTPAudioTelephonyEventCapability AudioTelephonyEventCapability,
receiveRTPAudioToneCapability AudioToneCapability,
depFecCapability DepFECCapability, -- Deprecated, do not use
multiplePayloadStreamCapability
MultiplePayloadStreamCapability,
fecCapability FECCapability,
redundancyEncodingCap RedundancyEncodingCapability,
oneOfCapabilities AlternativeCapabilitySet
}
H235SecurityCapability ::= SEQUENCE {
encryptionAuthenticationAndIntegrity EncryptionAuthenticationAndIntegrity,
mediaCapability CapabilityTableEntryNumber,
-- NOTE - The mediaCapability shall refer to Capability Table Entries
-- that do contain, directly or indirectly, one or more transmit,
-- receive, or receiveAndTransmit AudioCapability, VideoCapability,
-- DataApplicationCapability, or similar capabilities indicated by a
-- NonStandardParameter or GenericCapability only
...
}
-- =============================================================================
-- Capability exchange definitions: Multiplex capabilities
-- =============================================================================
MultiplexCapability ::= CHOICE {
nonStandard NonStandardParameter,
h222Capability H222Capability,
h223Capability H223Capability,
v76Capability V76Capability,
...,
h2250Capability H2250Capability,
genericMultiplexCapability GenericCapability
}
H222Capability ::= SEQUENCE {
numberOfVCs INTEGER(1..256),
vcCapability SET OF VCCapability,
...
}
VCCapability ::= SEQUENCE {
aal1
SEQUENCE {nullClockRecovery BOOLEAN,
srtsClockRecovery BOOLEAN,
adaptiveClockRecovery BOOLEAN,
nullErrorCorrection BOOLEAN,
longInterleaver BOOLEAN,
shortInterleaver BOOLEAN,
errorCorrectionOnly BOOLEAN,
structuredDataTransfer BOOLEAN,
partiallyFilledCells BOOLEAN,
...} OPTIONAL,
aal5
SEQUENCE {forwardMaximumSDUSize INTEGER(0..65535), -- units octets--
backwardMaximumSDUSize INTEGER(0..65535), -- units octets--
...} OPTIONAL,
transportStream BOOLEAN,
programStream BOOLEAN,
availableBitRates
SEQUENCE {type
CHOICE {singleBitRate INTEGER(1..65535), -- units 64 kbit/s--
rangeOfBitRates
SEQUENCE {lowerBitRate INTEGER(1..65535), -- units 64 kbit/s--
higherBitRate INTEGER(1..65535) -- units 64 kbit/s
}},
...},
...,
aal1ViaGateway
SEQUENCE {gatewayAddress SET SIZE (1..256) OF Q2931Address,
nullClockRecovery BOOLEAN,
srtsClockRecovery BOOLEAN,
adaptiveClockRecovery BOOLEAN,
nullErrorCorrection BOOLEAN,
longInterleaver BOOLEAN,
shortInterleaver BOOLEAN,
errorCorrectionOnly BOOLEAN,
structuredDataTransfer BOOLEAN,
partiallyFilledCells BOOLEAN,
...} OPTIONAL
}
H223Capability ::= SEQUENCE {
transportWithI-frames BOOLEAN, -- I-frame transport
-- of H.245
videoWithAL1 BOOLEAN,
videoWithAL2 BOOLEAN,
videoWithAL3 BOOLEAN,
audioWithAL1 BOOLEAN,
audioWithAL2 BOOLEAN,
audioWithAL3 BOOLEAN,
dataWithAL1 BOOLEAN,
dataWithAL2 BOOLEAN,
dataWithAL3 BOOLEAN,
maximumAl2SDUSize INTEGER(0..65535), -- units octets
maximumAl3SDUSize INTEGER(0..65535), -- units octets
maximumDelayJitter INTEGER(0..1023), -- units milliseconds
h223MultiplexTableCapability
CHOICE {basic NULL,
enhanced
SEQUENCE {maximumNestingDepth INTEGER(1..15),
maximumElementListSize INTEGER(2..255),
maximumSubElementListSize INTEGER(2..255),
...}},
...,
maxMUXPDUSizeCapability BOOLEAN,
nsrpSupport BOOLEAN,
mobileOperationTransmitCapability
SEQUENCE {modeChangeCapability BOOLEAN,
h223AnnexA BOOLEAN,
h223AnnexADoubleFlag BOOLEAN,
h223AnnexB BOOLEAN,
h223AnnexBwithHeader BOOLEAN,
...} OPTIONAL,
h223AnnexCCapability H223AnnexCCapability OPTIONAL,
bitRate INTEGER(1..19200) OPTIONAL, -- units of
-- 100 bit/s
mobileMultilinkFrameCapability
SEQUENCE {maximumSampleSize INTEGER(1..255), -- units octets--
maximumPayloadLength INTEGER(1..65025), -- units octets--
...} OPTIONAL
}
H223AnnexCCapability ::= SEQUENCE {
videoWithAL1M BOOLEAN,
videoWithAL2M BOOLEAN,
videoWithAL3M BOOLEAN,
audioWithAL1M BOOLEAN,
audioWithAL2M BOOLEAN,
audioWithAL3M BOOLEAN,
dataWithAL1M BOOLEAN,
dataWithAL2M BOOLEAN,
dataWithAL3M BOOLEAN,
alpduInterleaving BOOLEAN,
maximumAL1MPDUSize INTEGER(0..65535), -- units octets
maximumAL2MSDUSize INTEGER(0..65535), -- units octets
maximumAL3MSDUSize INTEGER(0..65535), -- units octets
...,
rsCodeCapability BOOLEAN OPTIONAL
}
V76Capability ::= SEQUENCE {
suspendResumeCapabilitywAddress BOOLEAN,
suspendResumeCapabilitywoAddress BOOLEAN,
rejCapability BOOLEAN,
sREJCapability BOOLEAN,
mREJCapability BOOLEAN,
crc8bitCapability BOOLEAN,
crc16bitCapability BOOLEAN,
crc32bitCapability BOOLEAN,
uihCapability BOOLEAN,
numOfDLCS INTEGER(2..8191),
twoOctetAddressFieldCapability BOOLEAN,
loopBackTestCapability BOOLEAN,
n401Capability INTEGER(1..4095),
maxWindowSizeCapability INTEGER(1..127),
v75Capability V75Capability,
...
}
V75Capability ::= SEQUENCE {audioHeader BOOLEAN,
...
}
H2250Capability ::= SEQUENCE {
maximumAudioDelayJitter INTEGER(0..1023), -- units in
-- milliseconds
receiveMultipointCapability MultipointCapability,
transmitMultipointCapability MultipointCapability,
receiveAndTransmitMultipointCapability MultipointCapability,
mcCapability
SEQUENCE {centralizedConferenceMC BOOLEAN,
decentralizedConferenceMC BOOLEAN,
...},
rtcpVideoControlCapability BOOLEAN, -- FIR and NACK
mediaPacketizationCapability MediaPacketizationCapability,
...,
transportCapability TransportCapability OPTIONAL,
redundancyEncodingCapability
SEQUENCE SIZE (1..256) OF RedundancyEncodingCapability OPTIONAL,
logicalChannelSwitchingCapability BOOLEAN,
t120DynamicPortCapability BOOLEAN
}
MediaPacketizationCapability ::= SEQUENCE {
h261aVideoPacketization BOOLEAN,
...,
rtpPayloadType SEQUENCE SIZE (1..256) OF RTPPayloadType OPTIONAL
}
RSVPParameters ::= SEQUENCE {
qosMode QOSMode OPTIONAL,
tokenRate INTEGER(1..4294967295) OPTIONAL,
-- rate in bytes/s
bucketSize INTEGER(1..4294967295) OPTIONAL,
-- size in bytes
peakRate INTEGER(1..4294967295) OPTIONAL,
-- peak bandwidth bytes/s
minPoliced INTEGER(1..4294967295) OPTIONAL,
--
maxPktSize INTEGER(1..4294967295) OPTIONAL,
-- size in bytes
...
}
QOSMode ::= CHOICE {guaranteedQOS NULL,
controlledLoad NULL,
...
}
ATMParameters ::= SEQUENCE {
maxNTUSize INTEGER(0..65535), -- units in octets
atmUBR BOOLEAN, -- unspecified bit rate
atmrtVBR BOOLEAN, -- real time variable
-- bit rate
atmnrtVBR BOOLEAN, -- non real time
-- variable bit rate
atmABR BOOLEAN, -- available bit rate
atmCBR BOOLEAN, -- constant bit rate
...
}
ServicePriorityValue ::= SEQUENCE {
nonStandardParameter NonStandardParameter OPTIONAL,
...,
value INTEGER(0..255)
}
ServicePriority ::= SEQUENCE {
nonStandardData NonStandardParameter OPTIONAL,
servicePrioritySignalled BOOLEAN,
servicePriorityValue ServicePriorityValue OPTIONAL,
...,
serviceClass INTEGER(0..4095) OPTIONAL,
serviceSubclass INTEGER(0..255) OPTIONAL
}
AuthorizationParameters ::= SEQUENCE {
nonStandardData NonStandardParameter OPTIONAL,
...
}
QOSType ::= CHOICE {desired NULL,
required NULL,
...
}
QOSClass ::= CHOICE {
class0 NULL,
class1 NULL,
class2 NULL,
class3 NULL,
class4 NULL,
class5 NULL,
...
}
QOSDescriptor ::= SEQUENCE {
nonStandardData NonStandardParameter OPTIONAL,
qosType QOSType,
qosClass QOSClass,
...
}
GenericTransportParameters ::= SEQUENCE {
nonStandardData NonStandardParameter OPTIONAL,
averageRate INTEGER(1..4294967295) OPTIONAL,
-- average bandwidth bytes/s
burst INTEGER(1..4294967295) OPTIONAL,
-- size in bytes
peakRate INTEGER(1..4294967295) OPTIONAL,
-- peak bandwidth bytes/s
maxPktSize INTEGER(1..4294967295) OPTIONAL,
-- size in bytes
...
}
QOSCapability ::= SEQUENCE {
nonStandardData NonStandardParameter OPTIONAL,
rsvpParameters RSVPParameters OPTIONAL,
atmParameters ATMParameters OPTIONAL,
...,
localQoS BOOLEAN OPTIONAL,
genericTransportParameters GenericTransportParameters OPTIONAL,
servicePriority ServicePriority OPTIONAL,
authorizationParameter AuthorizationParameters OPTIONAL,
qosDescriptor QOSDescriptor OPTIONAL,
dscpValue INTEGER(0..63) OPTIONAL
}
MediaTransportType ::= CHOICE {
ip-UDP NULL,
ip-TCP NULL,
atm-AAL5-UNIDIR NULL, -- virtual circuits used as unidirectional
atm-AAL5-BIDIR NULL, -- virtual circuits used as bidirectional
...,
atm-AAL5-compressed SEQUENCE {variable-delta BOOLEAN,
...}
}
MediaChannelCapability ::= SEQUENCE {
mediaTransport MediaTransportType OPTIONAL,
...
}
TransportCapability ::= SEQUENCE {
nonStandard NonStandardParameter OPTIONAL,
qOSCapabilities SEQUENCE SIZE (1..256) OF QOSCapability OPTIONAL,
mediaChannelCapabilities
SEQUENCE SIZE (1..256) OF MediaChannelCapability OPTIONAL,
...
}
RedundancyEncodingCapability ::= SEQUENCE {
redundancyEncodingMethod RedundancyEncodingMethod,
primaryEncoding CapabilityTableEntryNumber,
secondaryEncoding
SEQUENCE SIZE (1..256) OF CapabilityTableEntryNumber OPTIONAL,
-- must be Audio, Video, or Data capabilities, not derived
-- capabilities; redundancy order is inferred from number of
-- secondary encodings
...
}
RedundancyEncodingMethod ::= CHOICE {
nonStandard NonStandardParameter,
rtpAudioRedundancyEncoding NULL,
...,
rtpH263VideoRedundancyEncoding RTPH263VideoRedundancyEncoding
}
RTPH263VideoRedundancyEncoding ::= SEQUENCE {
numberOfThreads INTEGER(1..16),
framesBetweenSyncPoints INTEGER(1..256),
frameToThreadMapping
CHOICE {roundrobin NULL,
custom
SEQUENCE SIZE (1..256) OF RTPH263VideoRedundancyFrameMapping,
-- empty SEQUENCE for capability negotiation
-- meaningful contents only OpenLogicalChannel
...},
containedThreads SEQUENCE SIZE (1..256) OF INTEGER(0..15) OPTIONAL,
-- only used for opening of logical channels
...
}
RTPH263VideoRedundancyFrameMapping ::= SEQUENCE {
threadNumber INTEGER(0..15),
frameSequence SEQUENCE SIZE (1..256) OF INTEGER(0..255),
...
}
MultipointCapability ::= SEQUENCE {
multicastCapability BOOLEAN,
multiUniCastConference BOOLEAN,
mediaDistributionCapability SEQUENCE OF MediaDistributionCapability,
...
}
MediaDistributionCapability ::= SEQUENCE {
centralizedControl BOOLEAN,
distributedControl BOOLEAN, -- for further study in
-- ITU-T Rec. H.323
centralizedAudio BOOLEAN,
distributedAudio BOOLEAN,
centralizedVideo BOOLEAN,
distributedVideo BOOLEAN,
centralizedData SEQUENCE OF DataApplicationCapability OPTIONAL,
distributedData SEQUENCE OF DataApplicationCapability OPTIONAL,
-- for further study in
-- ITU-T Rec. H.323
...
}
-- =============================================================================
-- Capability exchange definitions: Video capabilities
-- =============================================================================
VideoCapability ::= CHOICE {
nonStandard NonStandardParameter,
h261VideoCapability H261VideoCapability,
h262VideoCapability H262VideoCapability,
h263VideoCapability H263VideoCapability,
is11172VideoCapability IS11172VideoCapability,
...,
genericVideoCapability GenericCapability,
extendedVideoCapability ExtendedVideoCapability
}
ExtendedVideoCapability ::= SEQUENCE {
videoCapability SEQUENCE OF VideoCapability,
videoCapabilityExtension SEQUENCE OF GenericCapability OPTIONAL,
...
}
H261VideoCapability ::= SEQUENCE {
qcifMPI INTEGER(1..4) OPTIONAL, -- units 1/29.97 Hz
cifMPI INTEGER(1..4) OPTIONAL, -- units 1/29.97 Hz
temporalSpatialTradeOffCapability BOOLEAN,
maxBitRate INTEGER(1..19200), -- units of
-- 100 bit/s
stillImageTransmission BOOLEAN, -- Annex D/H.261
...,
videoBadMBsCap BOOLEAN
}
H262VideoCapability ::= SEQUENCE {
profileAndLevel-SPatML BOOLEAN,
profileAndLevel-MPatLL BOOLEAN,
profileAndLevel-MPatML BOOLEAN,
profileAndLevel-MPatH-14 BOOLEAN,
profileAndLevel-MPatHL BOOLEAN,
profileAndLevel-SNRatLL BOOLEAN,
profileAndLevel-SNRatML BOOLEAN,
profileAndLevel-SpatialatH-14 BOOLEAN,
profileAndLevel-HPatML BOOLEAN,
profileAndLevel-HPatH-14 BOOLEAN,
profileAndLevel-HPatHL BOOLEAN,
videoBitRate INTEGER(0..1073741823) OPTIONAL, -- units 400 bit/s
vbvBufferSize INTEGER(0..262143) OPTIONAL, -- units 16 384 bits
samplesPerLine INTEGER(0..16383) OPTIONAL, -- units samples/line
linesPerFrame INTEGER(0..16383) OPTIONAL, -- units lines/frame
framesPerSecond INTEGER(0..15) OPTIONAL, -- frame_rate_code
luminanceSampleRate INTEGER(0..4294967295) OPTIONAL, -- units samples/s
...,
videoBadMBsCap BOOLEAN
}
H263VideoCapability ::= SEQUENCE {
sqcifMPI INTEGER(1..32) OPTIONAL, -- units 1/29.97 Hz
qcifMPI INTEGER(1..32) OPTIONAL, -- units 1/29.97 Hz
cifMPI INTEGER(1..32) OPTIONAL, -- units 1/29.97 Hz
cif4MPI INTEGER(1..32) OPTIONAL, -- units 1/29.97 Hz
cif16MPI INTEGER(1..32) OPTIONAL, -- units 1/29.97 Hz
maxBitRate INTEGER(1..192400), -- units 100 bit/s
unrestrictedVector BOOLEAN,
arithmeticCoding BOOLEAN,
advancedPrediction BOOLEAN,
pbFrames BOOLEAN,
temporalSpatialTradeOffCapability BOOLEAN,
hrd-B INTEGER(0..524287) OPTIONAL, -- units 128 bits
bppMaxKb INTEGER(0..65535) OPTIONAL, -- units 1024 bits
...,
slowSqcifMPI INTEGER(1..3600) OPTIONAL, -- units seconds/frame
slowQcifMPI INTEGER(1..3600) OPTIONAL, -- units seconds/frame
slowCifMPI INTEGER(1..3600) OPTIONAL, -- units seconds/frame
slowCif4MPI INTEGER(1..3600) OPTIONAL, -- units seconds/frame
slowCif16MPI INTEGER(1..3600) OPTIONAL, -- units seconds/frame
errorCompensation BOOLEAN,
enhancementLayerInfo EnhancementLayerInfo OPTIONAL,
h263Options H263Options OPTIONAL
}
EnhancementLayerInfo ::= SEQUENCE {
baseBitRateConstrained BOOLEAN,
snrEnhancement SET SIZE (1..14) OF EnhancementOptions OPTIONAL,
spatialEnhancement SET SIZE (1..14) OF EnhancementOptions OPTIONAL,
bPictureEnhancement SET SIZE (1..14) OF BEnhancementParameters OPTIONAL,
...
}
BEnhancementParameters ::= SEQUENCE {
enhancementOptions EnhancementOptions,
numberOfBPictures INTEGER(1..64),
...
}
EnhancementOptions ::= SEQUENCE {
sqcifMPI INTEGER(1..32) OPTIONAL, -- units 1/29.97 Hz
qcifMPI INTEGER(1..32) OPTIONAL, -- units 1/29.97 Hz
cifMPI INTEGER(1..32) OPTIONAL, -- units 1/29.97 Hz
cif4MPI INTEGER(1..32) OPTIONAL, -- units 1/29.97 Hz
cif16MPI INTEGER(1..32) OPTIONAL, -- units 1/29.97 Hz
maxBitRate INTEGER(1..192400), -- units 100 bit/s
unrestrictedVector BOOLEAN,
arithmeticCoding BOOLEAN,
temporalSpatialTradeOffCapability BOOLEAN,
slowSqcifMPI INTEGER(1..3600) OPTIONAL, -- units seconds/frame
slowQcifMPI INTEGER(1..3600) OPTIONAL, -- units seconds/frame
slowCifMPI INTEGER(1..3600) OPTIONAL, -- units seconds/frame
slowCif4MPI INTEGER(1..3600) OPTIONAL, -- units seconds/frame
slowCif16MPI INTEGER(1..3600) OPTIONAL, -- units seconds/frame
errorCompensation BOOLEAN,
h263Options H263Options OPTIONAL,
...
}
H263Options ::= SEQUENCE {
advancedIntraCodingMode BOOLEAN,
deblockingFilterMode BOOLEAN,
improvedPBFramesMode BOOLEAN,
unlimitedMotionVectors BOOLEAN,
fullPictureFreeze BOOLEAN,
partialPictureFreezeAndRelease BOOLEAN,
resizingPartPicFreezeAndRelease BOOLEAN,
fullPictureSnapshot BOOLEAN,
partialPictureSnapshot BOOLEAN,
videoSegmentTagging BOOLEAN,
progressiveRefinement BOOLEAN,
dynamicPictureResizingByFour BOOLEAN,
dynamicPictureResizingSixteenthPel BOOLEAN,
dynamicWarpingHalfPel BOOLEAN,
dynamicWarpingSixteenthPel BOOLEAN,
independentSegmentDecoding BOOLEAN,
slicesInOrder-NonRect BOOLEAN,
slicesInOrder-Rect BOOLEAN,
slicesNoOrder-NonRect BOOLEAN,
slicesNoOrder-Rect BOOLEAN,
alternateInterVLCMode BOOLEAN,
modifiedQuantizationMode BOOLEAN,
reducedResolutionUpdate BOOLEAN,
transparencyParameters TransparencyParameters OPTIONAL,
separateVideoBackChannel BOOLEAN,
refPictureSelection RefPictureSelection OPTIONAL,
customPictureClockFrequency
SET SIZE (1..16) OF CustomPictureClockFrequency OPTIONAL,
customPictureFormat
SET SIZE (1..16) OF CustomPictureFormat OPTIONAL,
modeCombos
SET SIZE (1..16) OF H263VideoModeCombos OPTIONAL,
...,
videoBadMBsCap BOOLEAN,
h263Version3Options H263Version3Options
}
TransparencyParameters ::= SEQUENCE {
presentationOrder INTEGER(1..256),
offset-x INTEGER(-262144..262143), -- 1/8 pixels
offset-y INTEGER(-262144..262143), -- 1/8 pixels
scale-x INTEGER(1..255),
scale-y INTEGER(1..255),
...
}
RefPictureSelection ::= SEQUENCE {
additionalPictureMemory
SEQUENCE {sqcifAdditionalPictureMemory INTEGER(1..256) OPTIONAL, -- units frame--
qcifAdditionalPictureMemory INTEGER(1..256) OPTIONAL, -- units frame--
cifAdditionalPictureMemory INTEGER(1..256) OPTIONAL, -- units frame--
cif4AdditionalPictureMemory INTEGER(1..256) OPTIONAL, -- units frame--
cif16AdditionalPictureMemory INTEGER(1..256) OPTIONAL, -- units frame--
bigCpfAdditionalPictureMemory INTEGER(1..256) OPTIONAL, -- units frame--
...} OPTIONAL,
videoMux BOOLEAN,
videoBackChannelSend
CHOICE {none NULL,
ackMessageOnly NULL,
nackMessageOnly NULL,
ackOrNackMessageOnly NULL,
ackAndNackMessage NULL,
...},
...,
enhancedReferencePicSelect
SEQUENCE {subPictureRemovalParameters
SEQUENCE {mpuHorizMBs INTEGER(1..128),
mpuVertMBs INTEGER(1..72),
mpuTotalNumber INTEGER(1..65536),
...} OPTIONAL,
...}
}
CustomPictureClockFrequency ::= SEQUENCE {
clockConversionCode INTEGER(1000..1001),
clockDivisor INTEGER(1..127),
sqcifMPI INTEGER(1..2048) OPTIONAL,
qcifMPI INTEGER(1..2048) OPTIONAL,
cifMPI INTEGER(1..2048) OPTIONAL,
cif4MPI INTEGER(1..2048) OPTIONAL,
cif16MPI INTEGER(1..2048) OPTIONAL,
...
}
CustomPictureFormat ::= SEQUENCE {
maxCustomPictureWidth INTEGER(1..2048), -- units 4 pixels
maxCustomPictureHeight INTEGER(1..2048), -- units 4 pixels
minCustomPictureWidth INTEGER(1..2048), -- units 4 pixels
minCustomPictureHeight INTEGER(1..2048), -- units 4 pixels
mPI
SEQUENCE {standardMPI INTEGER(1..31) OPTIONAL,
customPCF
SET SIZE (1..16) OF
SEQUENCE {clockConversionCode INTEGER(1000..1001),
clockDivisor INTEGER(1..127),
customMPI INTEGER(1..2048),
...} OPTIONAL,
...},
pixelAspectInformation
CHOICE {anyPixelAspectRatio BOOLEAN,
pixelAspectCode SET SIZE (1..14) OF INTEGER(1..14),
extendedPAR
SET SIZE (1..256) OF
SEQUENCE {width INTEGER(1..255),
height INTEGER(1..255),
...},
...},
...
}
H263VideoModeCombos ::= SEQUENCE {
h263VideoUncoupledModes H263ModeComboFlags,
h263VideoCoupledModes SET SIZE (1..16) OF H263ModeComboFlags,
...
}
H263ModeComboFlags ::= SEQUENCE {
unrestrictedVector BOOLEAN,
arithmeticCoding BOOLEAN,
advancedPrediction BOOLEAN,
pbFrames BOOLEAN,
advancedIntraCodingMode BOOLEAN,
deblockingFilterMode BOOLEAN,
unlimitedMotionVectors BOOLEAN,
slicesInOrder-NonRect BOOLEAN,
slicesInOrder-Rect BOOLEAN,
slicesNoOrder-NonRect BOOLEAN,
slicesNoOrder-Rect BOOLEAN,
improvedPBFramesMode BOOLEAN,
referencePicSelect BOOLEAN,
dynamicPictureResizingByFour BOOLEAN,
dynamicPictureResizingSixteenthPel BOOLEAN,
dynamicWarpingHalfPel BOOLEAN,
dynamicWarpingSixteenthPel BOOLEAN,
reducedResolutionUpdate BOOLEAN,
independentSegmentDecoding BOOLEAN,
alternateInterVLCMode BOOLEAN,
modifiedQuantizationMode BOOLEAN,
...,
enhancedReferencePicSelect BOOLEAN,
h263Version3Options H263Version3Options
}
H263Version3Options ::= SEQUENCE {
dataPartitionedSlices BOOLEAN,
fixedPointIDCT0 BOOLEAN,
interlacedFields BOOLEAN,
currentPictureHeaderRepetition BOOLEAN,
previousPictureHeaderRepetition BOOLEAN,
nextPictureHeaderRepetition BOOLEAN,
pictureNumber BOOLEAN,
spareReferencePictures BOOLEAN,
...
}
IS11172VideoCapability ::= SEQUENCE {
constrainedBitstream BOOLEAN,
videoBitRate INTEGER(0..1073741823) OPTIONAL, -- units 400 bit/s
vbvBufferSize INTEGER(0..262143) OPTIONAL, -- units 16 384 bits
samplesPerLine INTEGER(0..16383) OPTIONAL, -- units samples/line
linesPerFrame INTEGER(0..16383) OPTIONAL, -- units lines/frame
pictureRate INTEGER(0..15) OPTIONAL,
luminanceSampleRate INTEGER(0..4294967295) OPTIONAL, -- units samples/s
...,
videoBadMBsCap BOOLEAN
}
-- =============================================================================
-- Capability exchange definitions: Audio capabilities
-- =============================================================================
-- For an H.222 multiplex, the integers indicate the size of the STD buffer
-- in units of 256 octets
-- For an H.223 multiplex, the integers indicate the maximum number of audio
-- frames per AL-SDU
-- For an H.225.0 multiplex, the integers indicate the maximum number of audio
-- frames per packet
AudioCapability ::= CHOICE {
nonStandard NonStandardParameter,
g711Alaw64k INTEGER(1..256),
g711Alaw56k INTEGER(1..256),
g711Ulaw64k INTEGER(1..256),
g711Ulaw56k INTEGER(1..256),
g722-64k INTEGER(1..256),
g722-56k INTEGER(1..256),
g722-48k INTEGER(1..256),
g7231
SEQUENCE {maxAl-sduAudioFrames INTEGER(1..256),
silenceSuppression BOOLEAN},
g728 INTEGER(1..256),
g729 INTEGER(1..256),
g729AnnexA INTEGER(1..256),
is11172AudioCapability IS11172AudioCapability,
is13818AudioCapability IS13818AudioCapability,
...,
g729wAnnexB INTEGER(1..256),
g729AnnexAwAnnexB INTEGER(1..256),
g7231AnnexCCapability G7231AnnexCCapability,
gsmFullRate GSMAudioCapability,
gsmHalfRate GSMAudioCapability,
gsmEnhancedFullRate GSMAudioCapability,
genericAudioCapability GenericCapability,
g729Extensions G729Extensions,
vbd VBDCapability,
audioTelephonyEvent NoPTAudioTelephonyEventCapability,
audioTone NoPTAudioToneCapability
}
G729Extensions ::= SEQUENCE {
audioUnit INTEGER(1..256) OPTIONAL,
annexA BOOLEAN,
annexB BOOLEAN,
annexD BOOLEAN,
annexE BOOLEAN,
annexF BOOLEAN,
annexG BOOLEAN,
annexH BOOLEAN,
...
}
G7231AnnexCCapability ::= SEQUENCE {
maxAl-sduAudioFrames INTEGER(1..256),
silenceSuppression BOOLEAN,
g723AnnexCAudioMode
SEQUENCE {highRateMode0 INTEGER(27..78), -- units octets--
highRateMode1 INTEGER(27..78), -- units octets--
lowRateMode0 INTEGER(23..66), -- units octets--
lowRateMode1 INTEGER(23..66), -- units octets--
sidMode0 INTEGER(6..17), -- units octets--
sidMode1 INTEGER(6..17), -- units octets--
...} OPTIONAL,
...
}
IS11172AudioCapability ::= SEQUENCE {
audioLayer1 BOOLEAN,
audioLayer2 BOOLEAN,
audioLayer3 BOOLEAN,
audioSampling32k BOOLEAN,
audioSampling44k1 BOOLEAN,
audioSampling48k BOOLEAN,
singleChannel BOOLEAN,
twoChannels BOOLEAN,
bitRate INTEGER(1..448), -- units kbit/s
...
}
IS13818AudioCapability ::= SEQUENCE {
audioLayer1 BOOLEAN,
audioLayer2 BOOLEAN,
audioLayer3 BOOLEAN,
audioSampling16k BOOLEAN,
audioSampling22k05 BOOLEAN,
audioSampling24k BOOLEAN,
audioSampling32k BOOLEAN,
audioSampling44k1 BOOLEAN,
audioSampling48k BOOLEAN,
singleChannel BOOLEAN,
twoChannels BOOLEAN,
threeChannels2-1 BOOLEAN,
threeChannels3-0 BOOLEAN,
fourChannels2-0-2-0 BOOLEAN,
fourChannels2-2 BOOLEAN,
fourChannels3-1 BOOLEAN,
fiveChannels3-0-2-0 BOOLEAN,
fiveChannels3-2 BOOLEAN,
lowFrequencyEnhancement BOOLEAN,
multilingual BOOLEAN,
bitRate INTEGER(1..1130), -- units kbit/s
...
}
GSMAudioCapability ::= SEQUENCE {
audioUnitSize INTEGER(1..256),
comfortNoise BOOLEAN,
scrambled BOOLEAN,
...
}
VBDCapability ::= SEQUENCE {type AudioCapability, -- shall not be "vbd"
...
}
-- =============================================================================
-- Capability exchange definitions: Data capabilities
-- =============================================================================
DataApplicationCapability ::= SEQUENCE {
application
CHOICE {nonStandard NonStandardParameter,
t120 DataProtocolCapability,
dsm-cc DataProtocolCapability,
userData DataProtocolCapability,
t84
SEQUENCE {t84Protocol DataProtocolCapability,
t84Profile T84Profile},
t434 DataProtocolCapability,
h224 DataProtocolCapability,
nlpid
SEQUENCE {nlpidProtocol DataProtocolCapability,
nlpidData OCTET STRING},
dsvdControl NULL,
h222DataPartitioning DataProtocolCapability,
...,
t30fax DataProtocolCapability,
t140 DataProtocolCapability,
t38fax
SEQUENCE {t38FaxProtocol DataProtocolCapability,
t38FaxProfile T38FaxProfile},
genericDataCapability GenericCapability},
maxBitRate INTEGER(0..4294967295), -- units 100 bit/s
...
}
DataProtocolCapability ::= CHOICE {
nonStandard NonStandardParameter,
v14buffered NULL,
v42lapm NULL, -- may negotiate to V.42 bis
hdlcFrameTunnelling NULL,
h310SeparateVCStack NULL,
h310SingleVCStack NULL,
transparent NULL,
...,
segmentationAndReassembly NULL,
hdlcFrameTunnelingwSAR NULL,
v120 NULL, -- as in H.230
separateLANStack NULL,
v76wCompression
CHOICE {transmitCompression CompressionType,
receiveCompression CompressionType,
transmitAndReceiveCompression CompressionType,
...},
tcp NULL,
udp NULL
}
CompressionType ::= CHOICE {v42bis V42bis,
...
}
V42bis ::= SEQUENCE {
numberOfCodewords INTEGER(1..65536),
maximumStringLength INTEGER(1..256),
...
}
T84Profile ::= CHOICE {
t84Unrestricted NULL,
t84Restricted
SEQUENCE {qcif BOOLEAN,
cif BOOLEAN,
ccir601Seq BOOLEAN,
ccir601Prog BOOLEAN,
hdtvSeq BOOLEAN,
hdtvProg BOOLEAN,
g3FacsMH200x100 BOOLEAN,
g3FacsMH200x200 BOOLEAN,
g4FacsMMR200x100 BOOLEAN,
g4FacsMMR200x200 BOOLEAN,
jbig200x200Seq BOOLEAN,
jbig200x200Prog BOOLEAN,
jbig300x300Seq BOOLEAN,
jbig300x300Prog BOOLEAN,
digPhotoLow BOOLEAN,
digPhotoMedSeq BOOLEAN,
digPhotoMedProg BOOLEAN,
digPhotoHighSeq BOOLEAN,
digPhotoHighProg BOOLEAN,
...}
}
T38FaxProfile ::= SEQUENCE {
fillBitRemoval BOOLEAN,
transcodingJBIG BOOLEAN,
transcodingMMR BOOLEAN,
...,
version INTEGER(0..255),
-- Version 0, the default, refers to
-- T.38 (2005)
t38FaxRateManagement T38FaxRateManagement,
-- The default Data Rate Management is
-- determined by the choice of
-- DataProtocolCapability
t38FaxUdpOptions T38FaxUdpOptions OPTIONAL,
-- For UDP, t38UDPRedundancy is the default
t38FaxTcpOptions T38FaxTcpOptions OPTIONAL
}
T38FaxRateManagement ::= CHOICE {
localTCF NULL,
transferredTCF NULL,
...
}
T38FaxUdpOptions ::= SEQUENCE {
t38FaxMaxBuffer INTEGER OPTIONAL,
t38FaxMaxDatagram INTEGER OPTIONAL,
t38FaxUdpEC
CHOICE {t38UDPFEC NULL,
t38UDPRedundancy NULL,
...}
}
T38FaxTcpOptions ::= SEQUENCE {t38TCPBidirectionalMode BOOLEAN,
...
}
-- =============================================================================
-- Encryption Capability Definitions
-- =============================================================================
EncryptionAuthenticationAndIntegrity ::= SEQUENCE {
encryptionCapability EncryptionCapability OPTIONAL,
authenticationCapability AuthenticationCapability OPTIONAL,
integrityCapability IntegrityCapability OPTIONAL,
...,
genericH235SecurityCapability GenericCapability OPTIONAL
}
EncryptionCapability ::= SEQUENCE SIZE (1..256) OF MediaEncryptionAlgorithm
MediaEncryptionAlgorithm ::= CHOICE {
nonStandard NonStandardParameter,
algorithm OBJECT IDENTIFIER, -- many defined
-- in ISO/IEC 9979
...
}
AuthenticationCapability ::= SEQUENCE {
nonStandard NonStandardParameter OPTIONAL,
...,
antiSpamAlgorithm OBJECT IDENTIFIER OPTIONAL
}
IntegrityCapability ::= SEQUENCE {
nonStandard NonStandardParameter OPTIONAL,
...
}
-- =============================================================================
-- Capability Exchange Definitions: UserInput
-- =============================================================================
UserInputCapability ::= CHOICE {
nonStandard SEQUENCE SIZE (1..16) OF NonStandardParameter,
basicString NULL, -- alphanumeric
iA5String NULL, -- alphanumeric
generalString NULL, -- alphanumeric
dtmf NULL, -- supports dtmf using signal
-- and signalUpdate
hookflash NULL, -- supports hookflash using signal
...,
extendedAlphanumeric NULL,
encryptedBasicString NULL, -- encrypted Basic string in
-- encryptedAlphanumeric
encryptedIA5String NULL, -- encrypted IA5 string in
-- encryptedSignalType
encryptedGeneralString NULL, -- encrypted general string in
-- extendedAlphanumeric.encryptedalphanumeric
secureDTMF NULL, -- secure DTMF using encryptedSignalType
genericUserInputCapability GenericCapability
}
-- =============================================================================
-- Capability Exchange Definitions: Conference
-- =============================================================================
ConferenceCapability ::= SEQUENCE {
nonStandardData
SEQUENCE OF NonStandardParameter OPTIONAL,
chairControlCapability BOOLEAN,
...,
videoIndicateMixingCapability BOOLEAN,
multipointVisualizationCapability BOOLEAN OPTIONAL -- same as H.230 MVC
}
-- =============================================================================
-- Capability Exchange Definitions: Generic Capability
-- =============================================================================
GenericCapability ::= SEQUENCE {
capabilityIdentifier CapabilityIdentifier,
maxBitRate INTEGER(0..4294967295) OPTIONAL,
-- Units 100 bit/s
collapsing SEQUENCE OF GenericParameter OPTIONAL,
nonCollapsing SEQUENCE OF GenericParameter OPTIONAL,
nonCollapsingRaw OCTET STRING OPTIONAL,
-- Typically contains ASN.1
-- PER encoded data describing capability
transport DataProtocolCapability OPTIONAL,
...
}
CapabilityIdentifier ::= CHOICE {
standard OBJECT IDENTIFIER,
-- e.g., { itu-t (0) recommendation (0) h (8) 267
-- version (0) 2 subIdentifier (0)}
h221NonStandard NonStandardParameter,
uuid OCTET STRING(SIZE (16)),
domainBased IA5String(SIZE (1..64)),
...
}
-- NOTE - The ranges of parameter values have been selected to ensure that the
-- GenericParameter preamble, standard part of ParameterIdentifier and the
-- encoding of that choice, and the preamble of ParameterValue to fit into
-- 2 octets.
GenericParameter ::= SEQUENCE {
parameterIdentifier ParameterIdentifier,
parameterValue ParameterValue,
supersedes SEQUENCE OF ParameterIdentifier OPTIONAL,
...
}
ParameterIdentifier ::= CHOICE {
standard INTEGER(0..127), -- Assigned by
-- Capability
-- specifications
h221NonStandard NonStandardParameter, -- N.B.
-- NonStandardIdentifier
-- is not sufficient in
-- this case
uuid OCTET STRING(SIZE (16)), -- For non-
-- standard
domainBased IA5String(SIZE (1..64)),
...
}
ParameterValue ::= CHOICE {
logical NULL, -- Only acceptable if
-- all entities
-- include this option
booleanArray INTEGER(0..255), -- array of 8 logical
-- types
unsignedMin INTEGER(0..65535), -- Look for min
-- common value
unsignedMax INTEGER(0..65535), -- Look for max
-- common value
unsigned32Min INTEGER(0..4294967295), -- Look for min
-- common value
unsigned32Max INTEGER(0..4294967295), -- Look for max
-- common value
octetString OCTET STRING, -- non-collapsing
-- octet string
genericParameter SEQUENCE OF GenericParameter,
...
}
-- =============================================================================
-- Capability Exchange Definitions: Multiplexed Stream Capability
-- =============================================================================
MultiplexedStreamCapability ::= SEQUENCE {
multiplexFormat MultiplexFormat,
controlOnMuxStream BOOLEAN,
capabilityOnMuxStream SET SIZE (1..256) OF AlternativeCapabilitySet OPTIONAL,
...
}
MultiplexFormat ::= CHOICE {
nonStandard NonStandardParameter,
h222Capability H222Capability,
h223Capability H223Capability,
...
}
-- =============================================================================
-- Capability Exchange Definitions: AudioTelephonyEventCapability and AudioToneCapability
--==============================================================================
AudioTelephonyEventCapability ::= SEQUENCE {
dynamicRTPPayloadType INTEGER(96..127),
audioTelephoneEvent GeneralString, -- As per <list of values>
-- in RFC 4733
...
}
AudioToneCapability ::= SEQUENCE {dynamicRTPPayloadType INTEGER(96..127),
...
}
-- The following definitions are as above but without a Payload Type field.
NoPTAudioTelephonyEventCapability ::= SEQUENCE {
audioTelephoneEvent GeneralString, -- As per <list of values>
-- in RFC 4733
...
}
NoPTAudioToneCapability ::= SEQUENCE {...
}
-- =============================================================================
-- Capability Exchange Definitions: MultiplePayloadStreamCapability
-- =============================================================================
MultiplePayloadStreamCapability ::= SEQUENCE {
capabilities SET SIZE (1..256) OF AlternativeCapabilitySet,
...
}
-- =============================================================================
-- Capability Exchange Definitions: FECCapability
-- =============================================================================
DepFECCapability ::= CHOICE -- Deprecated, do not use
{
rfc2733
SEQUENCE {redundancyEncoding BOOLEAN,
separateStream
SEQUENCE {separatePort BOOLEAN,
samePort BOOLEAN,
...},
...},
...
}
FECCapability ::= SEQUENCE {
protectedCapability CapabilityTableEntryNumber,
fecScheme
-- identifies encoding scheme -- OBJECT IDENTIFIER OPTIONAL,
rfc2733Format
CHOICE {rfc2733rfc2198 -- RFC 2198 -- MaxRedundancy,
rfc2733sameport -- separate packet, same port -- MaxRedundancy,
rfc2733diffport -- separate packet and port -- MaxRedundancy
} OPTIONAL,
...
}
MaxRedundancy ::= INTEGER(1..MAX)
-- =============================================================================
-- Logical channel signalling definitions
-- =============================================================================
-- "Forward" is used to refer to transmission in the direction from the terminal
-- making the original request for a logical channel to the other terminal, and
-- "reverse" is used to refer to the opposite direction of transmission, in the
-- case of a bidirectional channel request.
OpenLogicalChannel ::= SEQUENCE {
forwardLogicalChannelNumber LogicalChannelNumber,
forwardLogicalChannelParameters
SEQUENCE {portNumber INTEGER(0..65535) OPTIONAL,
dataType DataType,
multiplexParameters
CHOICE {h222LogicalChannelParameters
H222LogicalChannelParameters,
h223LogicalChannelParameters
H223LogicalChannelParameters,
v76LogicalChannelParameters
V76LogicalChannelParameters,
...,
h2250LogicalChannelParameters
H2250LogicalChannelParameters,
none NULL}, -- for use with Separate Stack when--
-- multiplexParameters are not
-- required or appropriate
...,
forwardLogicalChannelDependency LogicalChannelNumber OPTIONAL,
-- also used to refer to the primary
-- logical channel when using video
-- redundancy coding
replacementFor LogicalChannelNumber OPTIONAL
},
-- Used to specify the reverse channel for bidirectional open request
reverseLogicalChannelParameters
SEQUENCE {dataType DataType,
multiplexParameters
CHOICE {-- H.222 parameters are never present in reverse direction
h223LogicalChannelParameters
H223LogicalChannelParameters,
v76LogicalChannelParameters
V76LogicalChannelParameters,
...,
h2250LogicalChannelParameters
H2250LogicalChannelParameters} OPTIONAL, -- Not present for H.222--
...,
reverseLogicalChannelDependency LogicalChannelNumber OPTIONAL,
-- also used to refer to the primary logical channel when using
-- video redundancy coding
replacementFor LogicalChannelNumber OPTIONAL
} OPTIONAL, -- Not present for unidirectional channel request
...,
separateStack NetworkAccessParameters OPTIONAL,
-- for Open responder to establish the stack
encryptionSync EncryptionSync OPTIONAL,
genericInformation SEQUENCE OF GenericInformation OPTIONAL
}
-- generic information associated
-- with the message
LogicalChannelNumber ::= INTEGER(1..65535)
NetworkAccessParameters ::= SEQUENCE {
distribution
CHOICE {unicast NULL,
multicast NULL, -- for further study in T.120--
...} OPTIONAL,
networkAddress
CHOICE {q2931Address Q2931Address,
e164Address IA5String(SIZE (1..128))(FROM ("0123456789#*,")),
localAreaAddress TransportAddress,
...},
associateConference BOOLEAN,
externalReference OCTET STRING(SIZE (1..255)) OPTIONAL,
...,
t120SetupProcedure
CHOICE {originateCall NULL,
waitForCall NULL,
issueQuery NULL,
...} OPTIONAL
}
Q2931Address ::= SEQUENCE {
address
CHOICE {internationalNumber NumericString(SIZE (1..16)),
nsapAddress OCTET STRING(SIZE (1..20)),
...},
subaddress OCTET STRING(SIZE (1..20)) OPTIONAL,
...
}
V75Parameters ::= SEQUENCE {audioHeaderPresent BOOLEAN,
...
}
DataType ::= CHOICE {
nonStandard NonStandardParameter,
nullData NULL,
videoData VideoCapability,
audioData AudioCapability,
data DataApplicationCapability,
encryptionData EncryptionMode,
...,
h235Control NonStandardParameter,
h235Media H235Media,
multiplexedStream MultiplexedStreamParameter,
redundancyEncoding RedundancyEncoding,
multiplePayloadStream MultiplePayloadStream,
depFec DepFECData, -- Deprecated, do not use
fec FECData
}
H235Media ::= SEQUENCE {
encryptionAuthenticationAndIntegrity EncryptionAuthenticationAndIntegrity,
mediaType
CHOICE {nonStandard NonStandardParameter,
videoData VideoCapability,
audioData AudioCapability,
data DataApplicationCapability,
...,
redundancyEncoding RedundancyEncoding,
multiplePayloadStream MultiplePayloadStream,
depFec DepFECData, -- Deprecated, do not use--
fec FECData},
...
}
MultiplexedStreamParameter ::= SEQUENCE {
multiplexFormat MultiplexFormat,
controlOnMuxStream BOOLEAN,
...
}
H222LogicalChannelParameters ::= SEQUENCE {
resourceID INTEGER(0..65535),
subChannelID INTEGER(0..8191),
pcr-pid INTEGER(0..8191) OPTIONAL,
programDescriptors OCTET STRING OPTIONAL,
streamDescriptors OCTET STRING OPTIONAL,
...
}
H223LogicalChannelParameters ::= SEQUENCE {
adaptationLayerType
CHOICE {nonStandard NonStandardParameter,
al1Framed NULL,
al1NotFramed NULL,
al2WithoutSequenceNumbers NULL,
al2WithSequenceNumbers NULL,
al3
SEQUENCE {controlFieldOctets INTEGER(0..2),
sendBufferSize
-- units octets -- INTEGER(0..16777215)},
...,
al1M H223AL1MParameters,
al2M H223AL2MParameters,
al3M H223AL3MParameters},
segmentableFlag BOOLEAN,
...
}
H223AL1MParameters ::= SEQUENCE {
transferMode CHOICE {framed NULL,
unframed NULL,
...},
headerFEC CHOICE {sebch16-7 NULL,
golay24-12 NULL,
...},
crcLength
CHOICE {crc4bit NULL,
crc12bit NULL,
crc20bit NULL,
crc28bit NULL,
...,
crc8bit NULL,
crc16bit NULL,
crc32bit NULL,
crcNotUsed NULL},
rcpcCodeRate INTEGER(8..32),
arqType
CHOICE {noArq NULL,
typeIArq H223AnnexCArqParameters,
typeIIArq H223AnnexCArqParameters,
...},
alpduInterleaving BOOLEAN,
alsduSplitting BOOLEAN,
...,
rsCodeCorrection INTEGER(0..127) OPTIONAL
}
H223AL2MParameters ::= SEQUENCE {
headerFEC CHOICE {sebch16-5 NULL,
golay24-12 NULL,
...},
alpduInterleaving BOOLEAN,
...
}
H223AL3MParameters ::= SEQUENCE {
headerFormat CHOICE {sebch16-7 NULL,
golay24-12 NULL,
...},
crcLength
CHOICE {crc4bit NULL,
crc12bit NULL,
crc20bit NULL,
crc28bit NULL,
...,
crc8bit NULL,
crc16bit NULL,
crc32bit NULL,
crcNotUsed NULL},
rcpcCodeRate INTEGER(8..32),
arqType
CHOICE {noArq NULL,
typeIArq H223AnnexCArqParameters,
typeIIArq H223AnnexCArqParameters,
...},
alpduInterleaving BOOLEAN,
...,
rsCodeCorrection INTEGER(0..127) OPTIONAL
}
H223AnnexCArqParameters ::= SEQUENCE {
numberOfRetransmissions
CHOICE {finite INTEGER(0..16),
infinite NULL,
...},
sendBufferSize INTEGER(0..16777215), -- units octets
...
}
V76LogicalChannelParameters ::= SEQUENCE {
hdlcParameters V76HDLCParameters,
suspendResume
CHOICE {noSuspendResume NULL,
suspendResumewAddress NULL,
suspendResumewoAddress NULL,
...},
uIH BOOLEAN,
mode
CHOICE {eRM
SEQUENCE {windowSize INTEGER(1..127),
recovery
CHOICE {rej NULL,
sREJ NULL,
mSREJ NULL,
...},
...},
uNERM NULL,
...},
v75Parameters V75Parameters,
...
}
V76HDLCParameters ::= SEQUENCE {
crcLength CRCLength,
n401 INTEGER(1..4095),
loopbackTestProcedure BOOLEAN,
...
}
CRCLength ::= CHOICE {crc8bit NULL,
crc16bit NULL,
crc32bit NULL,
...
}
H2250LogicalChannelParameters ::= SEQUENCE {
nonStandard SEQUENCE OF NonStandardParameter OPTIONAL,
sessionID INTEGER(0..255),
associatedSessionID INTEGER(1..255) OPTIONAL,
mediaChannel TransportAddress OPTIONAL,
mediaGuaranteedDelivery BOOLEAN OPTIONAL,
mediaControlChannel TransportAddress OPTIONAL, -- reverse
-- RTCP channel
mediaControlGuaranteedDelivery BOOLEAN OPTIONAL,
silenceSuppression BOOLEAN OPTIONAL,
destination TerminalLabel OPTIONAL,
dynamicRTPPayloadType INTEGER(96..127) OPTIONAL,
mediaPacketization
CHOICE {h261aVideoPacketization NULL,
...,
rtpPayloadType RTPPayloadType} OPTIONAL,
...,
transportCapability TransportCapability OPTIONAL,
redundancyEncoding RedundancyEncoding OPTIONAL,
source TerminalLabel OPTIONAL
}
RTPPayloadType ::= SEQUENCE {
payloadDescriptor
CHOICE {nonStandardIdentifier NonStandardParameter,
rfc-number INTEGER(1..32768, ...),
oid OBJECT IDENTIFIER,
...},
payloadType INTEGER(0..127) OPTIONAL,
...
}
RedundancyEncoding ::= SEQUENCE {
redundancyEncodingMethod RedundancyEncodingMethod,
secondaryEncoding DataType OPTIONAL, -- depends on method
...,
-- The sequence below may be used in place of the above secondaryEncoding field
rtpRedundancyEncoding
SEQUENCE {primary RedundancyEncodingElement OPTIONAL,
-- Present when redundancyEncoding
-- is selected as the dataType
-- in an OpenLogicalChannel or
-- as part of a MultiplePayloadSteam
secondary SEQUENCE OF RedundancyEncodingElement OPTIONAL,
...} OPTIONAL
}
RedundancyEncodingElement ::= SEQUENCE {
dataType DataType,
payloadType INTEGER(0..127) OPTIONAL,
...
}
MultiplePayloadStream ::= SEQUENCE {
elements SEQUENCE OF MultiplePayloadStreamElement,
...
}
MultiplePayloadStreamElement ::= SEQUENCE {
dataType DataType,
payloadType INTEGER(0..127) OPTIONAL,
...
}
DepFECData ::= CHOICE -- Deprecated, do not use
{
rfc2733
SEQUENCE {mode
CHOICE {redundancyEncoding NULL,
separateStream
CHOICE {differentPort
SEQUENCE {protectedSessionID
INTEGER(1..255),
protectedPayloadType
INTEGER(0..127) OPTIONAL,
...},
samePort
SEQUENCE {protectedPayloadType
INTEGER(0..127),
...},
...},
...},
...}
}
FECData ::= CHOICE {
rfc2733
SEQUENCE {protectedPayloadType INTEGER(0..127),
fecScheme OBJECT IDENTIFIER OPTIONAL,
pktMode
CHOICE {rfc2198coding NULL,
rfc2733sameport SEQUENCE {...},
rfc2733diffport
SEQUENCE {protectedChannel LogicalChannelNumber,
...},
...},
...},
...
}
TransportAddress ::= CHOICE {
unicastAddress UnicastAddress,
multicastAddress MulticastAddress,
...
}
UnicastAddress ::= CHOICE {
iPAddress
SEQUENCE {network OCTET STRING(SIZE (4)),
tsapIdentifier INTEGER(0..65535),
...},
iPXAddress
SEQUENCE {node OCTET STRING(SIZE (6)),
netnum OCTET STRING(SIZE (4)),
tsapIdentifier OCTET STRING(SIZE (2)),
...},
iP6Address
SEQUENCE {network OCTET STRING(SIZE (16)),
tsapIdentifier INTEGER(0..65535),
...},
netBios OCTET STRING(SIZE (16)),
iPSourceRouteAddress
SEQUENCE {routing CHOICE {strict NULL,
loose NULL},
network OCTET STRING(SIZE (4)),
tsapIdentifier INTEGER(0..65535),
route SEQUENCE OF OCTET STRING(SIZE (4)),
...},
...,
nsap OCTET STRING(SIZE (1..20)),
nonStandardAddress NonStandardParameter
}
MulticastAddress ::= CHOICE {
iPAddress
SEQUENCE {network OCTET STRING(SIZE (4)),
tsapIdentifier INTEGER(0..65535),
...},
iP6Address
SEQUENCE {network OCTET STRING(SIZE (16)),
tsapIdentifier INTEGER(0..65535),
...},
...,
nsap OCTET STRING(SIZE (1..20)),
nonStandardAddress NonStandardParameter
}
EncryptionSync ::=
SEQUENCE
-- used to supply new key and synchronization point
{
nonStandard NonStandardParameter OPTIONAL,
synchFlag INTEGER(0..255), -- may need to be larger
-- for H.324, etc.
-- shall be the Dynamic
-- Payload# for H.323
h235Key OCTET STRING(SIZE (1..65535)), -- H.235.0
-- encoded value
escrowentry SEQUENCE SIZE (1..256) OF EscrowData OPTIONAL,
...,
genericParameter GenericParameter OPTIONAL
}
EscrowData ::= SEQUENCE {
escrowID OBJECT IDENTIFIER,
escrowValue BIT STRING(SIZE (1..65535)),
...
}
OpenLogicalChannelAck ::= SEQUENCE {
forwardLogicalChannelNumber LogicalChannelNumber,
reverseLogicalChannelParameters
SEQUENCE {reverseLogicalChannelNumber LogicalChannelNumber,
portNumber INTEGER(0..65535) OPTIONAL,
multiplexParameters
CHOICE {h222LogicalChannelParameters
H222LogicalChannelParameters,
-- H.223 parameters are never present in reverse direction
...,
h2250LogicalChannelParameters
H2250LogicalChannelParameters} OPTIONAL, -- not present for H.223--
...,
replacementFor LogicalChannelNumber OPTIONAL
} OPTIONAL, -- not present for unidirectional channel
-- request
...,
separateStack NetworkAccessParameters OPTIONAL,
-- for Open requester to establish
-- the stack
forwardMultiplexAckParameters
CHOICE {-- H.222 parameters are never present in the Ack
-- H.223 parameters are never present in the Ack
-- V.76 parameters are never present in the Ack
h2250LogicalChannelAckParameters H2250LogicalChannelAckParameters,
...} OPTIONAL,
encryptionSync EncryptionSync OPTIONAL, -- used only by Master
genericInformation SEQUENCE OF GenericInformation OPTIONAL
}
-- generic information associated
-- with the message
OpenLogicalChannelReject ::= SEQUENCE {
forwardLogicalChannelNumber LogicalChannelNumber,
cause
CHOICE {unspecified NULL,
unsuitableReverseParameters NULL,
dataTypeNotSupported NULL,
dataTypeNotAvailable NULL,
unknownDataType NULL,
dataTypeALCombinationNotSupported NULL,
...,
multicastChannelNotAllowed NULL,
insufficientBandwidth NULL,
separateStackEstablishmentFailed NULL,
invalidSessionID NULL,
masterSlaveConflict NULL,
waitForCommunicationMode NULL,
invalidDependentChannel NULL,
replacementForRejected NULL,
securityDenied NULL,
qoSControlNotSupported NULL}, -- added for callee to indicate
-- that requested QoS support cannot be
-- supported.
...,
genericInformation SEQUENCE OF GenericInformation OPTIONAL
}
-- generic information associated
-- with the message
OpenLogicalChannelConfirm ::= SEQUENCE {
forwardLogicalChannelNumber LogicalChannelNumber,
...,
genericInformation SEQUENCE OF GenericInformation OPTIONAL
}
-- generic information associated
-- with the message
H2250LogicalChannelAckParameters ::= SEQUENCE {
nonStandard SEQUENCE OF NonStandardParameter OPTIONAL,
sessionID INTEGER(1..255) OPTIONAL,
mediaChannel TransportAddress OPTIONAL,
mediaControlChannel TransportAddress OPTIONAL, -- forward RTCP
-- channel
dynamicRTPPayloadType INTEGER(96..127) OPTIONAL, -- used only by
-- the master or
-- MC
...,
flowControlToZero BOOLEAN,
portNumber INTEGER(0..65535) OPTIONAL
}
CloseLogicalChannel ::= SEQUENCE {
forwardLogicalChannelNumber LogicalChannelNumber,
source CHOICE {user NULL,
lcse NULL},
...,
reason
CHOICE {unknown NULL,
reopen NULL,
reservationFailure NULL,
...,
networkErrorCode INTEGER(0..255)}
} -- Indicates the error
-- code received from network
CloseLogicalChannelAck ::= SEQUENCE {
forwardLogicalChannelNumber LogicalChannelNumber,
...
}
RequestChannelClose ::= SEQUENCE {
forwardLogicalChannelNumber LogicalChannelNumber,
...,
qosCapability QOSCapability OPTIONAL,
reason
CHOICE {unknown NULL,
normal NULL,
reopen NULL,
reservationFailure NULL,
...,
networkErrorCode INTEGER(0..255)}
} -- Indicates the error
-- code received from network
RequestChannelCloseAck ::= SEQUENCE {
forwardLogicalChannelNumber LogicalChannelNumber,
...
}
RequestChannelCloseReject ::= SEQUENCE {
forwardLogicalChannelNumber LogicalChannelNumber,
cause CHOICE {unspecified NULL,
...},
...
}
RequestChannelCloseRelease ::= SEQUENCE {
forwardLogicalChannelNumber LogicalChannelNumber,
...
}
-- =============================================================================
-- H.223 multiplex table definitions
-- =============================================================================
MultiplexEntrySend ::= SEQUENCE {
sequenceNumber SequenceNumber,
multiplexEntryDescriptors SET SIZE (1..15) OF MultiplexEntryDescriptor,
...
}
MultiplexEntryDescriptor ::= SEQUENCE {
multiplexTableEntryNumber MultiplexTableEntryNumber,
elementList
SEQUENCE SIZE (1..256) OF MultiplexElement OPTIONAL
}
MultiplexElement ::= SEQUENCE {
type
CHOICE {logicalChannelNumber INTEGER(0..65535),
subElementList SEQUENCE SIZE (2..255) OF MultiplexElement
},
repeatCount
CHOICE {finite -- repeats of type -- INTEGER(1..65535),
untilClosingFlag -- used for last element -- NULL}
}
MultiplexTableEntryNumber ::= INTEGER(1..15)
MultiplexEntrySendAck ::= SEQUENCE {
sequenceNumber SequenceNumber,
multiplexTableEntryNumber SET SIZE (1..15) OF MultiplexTableEntryNumber,
...
}
MultiplexEntrySendReject ::= SEQUENCE {
sequenceNumber SequenceNumber,
rejectionDescriptions
SET SIZE (1..15) OF MultiplexEntryRejectionDescriptions,
...
}
MultiplexEntryRejectionDescriptions ::= SEQUENCE {
multiplexTableEntryNumber MultiplexTableEntryNumber,
cause
CHOICE {unspecifiedCause NULL,
descriptorTooComplex NULL,
...},
...
}
MultiplexEntrySendRelease ::= SEQUENCE {
multiplexTableEntryNumber SET SIZE (1..15) OF MultiplexTableEntryNumber,
...
}
RequestMultiplexEntry ::= SEQUENCE {
entryNumbers SET SIZE (1..15) OF MultiplexTableEntryNumber,
...
}
RequestMultiplexEntryAck ::= SEQUENCE {
entryNumbers SET SIZE (1..15) OF MultiplexTableEntryNumber,
...
}
RequestMultiplexEntryReject ::= SEQUENCE {
entryNumbers SET SIZE (1..15) OF MultiplexTableEntryNumber,
rejectionDescriptions
SET SIZE (1..15) OF RequestMultiplexEntryRejectionDescriptions,
...
}
RequestMultiplexEntryRejectionDescriptions ::= SEQUENCE {
multiplexTableEntryNumber MultiplexTableEntryNumber,
cause CHOICE {unspecifiedCause NULL,
...},
...
}
RequestMultiplexEntryRelease ::= SEQUENCE {
entryNumbers SET SIZE (1..15) OF MultiplexTableEntryNumber,
...
}
-- =============================================================================
-- Request mode definitions
-- =============================================================================
-- RequestMode is a list, in order or preference, of modes that a terminal would
-- like to have transmitted to it.
RequestMode ::= SEQUENCE {
sequenceNumber SequenceNumber,
requestedModes SEQUENCE SIZE (1..256) OF ModeDescription,
...
}
RequestModeAck ::= SEQUENCE {
sequenceNumber SequenceNumber,
response
CHOICE {willTransmitMostPreferredMode NULL,
willTransmitLessPreferredMode NULL,
...},
...
}
RequestModeReject ::= SEQUENCE {
sequenceNumber SequenceNumber,
cause
CHOICE {modeUnavailable NULL,
multipointConstraint NULL,
requestDenied NULL,
...},
...
}
RequestModeRelease ::= SEQUENCE {...
}
-- =============================================================================
-- Request mode definitions: Mode description
-- =============================================================================
ModeDescription ::= SET SIZE (1..256) OF ModeElement
ModeElementType ::= CHOICE {
nonStandard NonStandardParameter,
videoMode VideoMode,
audioMode AudioMode,
dataMode DataMode,
encryptionMode EncryptionMode,
...,
h235Mode H235Mode,
multiplexedStreamMode MultiplexedStreamParameter,
redundancyEncodingDTMode RedundancyEncodingDTMode,
multiplePayloadStreamMode MultiplePayloadStreamMode,
depFecMode DepFECMode, -- deprecated, do not use
fecMode FECMode
}
ModeElement ::= SEQUENCE {
type ModeElementType,
h223ModeParameters H223ModeParameters OPTIONAL,
...,
v76ModeParameters V76ModeParameters OPTIONAL,
h2250ModeParameters H2250ModeParameters OPTIONAL,
genericModeParameters GenericCapability OPTIONAL,
multiplexedStreamModeParameters MultiplexedStreamModeParameters OPTIONAL,
logicalChannelNumber LogicalChannelNumber OPTIONAL
}
H235Mode ::= SEQUENCE {
encryptionAuthenticationAndIntegrity EncryptionAuthenticationAndIntegrity,
mediaMode
CHOICE {nonStandard NonStandardParameter,
videoMode VideoMode,
audioMode AudioMode,
dataMode DataMode,
...},
...
}
MultiplexedStreamModeParameters ::= SEQUENCE {
logicalChannelNumber LogicalChannelNumber,
...
}
RedundancyEncodingDTMode ::= SEQUENCE {
redundancyEncodingMethod RedundancyEncodingMethod,
primary RedundancyEncodingDTModeElement,
secondary SEQUENCE OF RedundancyEncodingDTModeElement,
...
}
RedundancyEncodingDTModeElement ::= SEQUENCE {
type
CHOICE {nonStandard NonStandardParameter,
videoMode VideoMode,
audioMode AudioMode,
dataMode DataMode,
encryptionMode EncryptionMode,
h235Mode H235Mode,
...,
fecMode FECMode},
...
}
MultiplePayloadStreamMode ::= SEQUENCE {
elements SEQUENCE OF MultiplePayloadStreamElementMode,
...
}
MultiplePayloadStreamElementMode ::= SEQUENCE {type ModeElementType,
...
}
DepFECMode ::= CHOICE -- deprecated, do not use
{
rfc2733Mode
SEQUENCE {mode
CHOICE {redundancyEncoding NULL,
separateStream
CHOICE {differentPort
SEQUENCE {protectedSessionID
INTEGER(1..255),
protectedPayloadType
INTEGER(0..127) OPTIONAL,
...},
samePort
SEQUENCE {protectedType ModeElementType,
...},
...},
...},
...},
...
}
FECMode ::= SEQUENCE {
protectedElement ModeElementType,
fecScheme -- identifies encoding scheme -- OBJECT IDENTIFIER OPTIONAL,
rfc2733Format
CHOICE {rfc2733rfc2198 -- RFC 2198 redundancy -- MaxRedundancy,
rfc2733sameport -- separate packet, same port -- MaxRedundancy,
rfc2733diffport -- separate packet and port -- MaxRedundancy
} OPTIONAL,
...
}
H223ModeParameters ::= SEQUENCE {
adaptationLayerType
CHOICE {nonStandard NonStandardParameter,
al1Framed NULL,
al1NotFramed NULL,
al2WithoutSequenceNumbers NULL,
al2WithSequenceNumbers NULL,
al3
SEQUENCE {controlFieldOctets INTEGER(0..2),
sendBufferSize
-- units octets -- INTEGER(0..16777215)},
...,
al1M H223AL1MParameters,
al2M H223AL2MParameters,
al3M H223AL3MParameters},
segmentableFlag BOOLEAN,
...
}
V76ModeParameters ::= CHOICE {
suspendResumewAddress NULL,
suspendResumewoAddress NULL,
...
}
H2250ModeParameters ::= SEQUENCE {
redundancyEncodingMode RedundancyEncodingMode OPTIONAL,
...
}
RedundancyEncodingMode ::= SEQUENCE {
redundancyEncodingMethod RedundancyEncodingMethod,
secondaryEncoding
CHOICE {nonStandard NonStandardParameter,
audioData AudioMode,
...} OPTIONAL,
...
}
-- =============================================================================
-- Request mode definitions: Video modes
-- =============================================================================
VideoMode ::= CHOICE {
nonStandard NonStandardParameter,
h261VideoMode H261VideoMode,
h262VideoMode H262VideoMode,
h263VideoMode H263VideoMode,
is11172VideoMode IS11172VideoMode,
...,
genericVideoMode GenericCapability
}
H261VideoMode ::= SEQUENCE {
resolution CHOICE {qcif NULL,
cif NULL},
bitRate INTEGER(1..19200), -- units 100 bit/s
stillImageTransmission BOOLEAN,
...
}
H262VideoMode ::= SEQUENCE {
profileAndLevel
CHOICE {profileAndLevel-SPatML NULL,
profileAndLevel-MPatLL NULL,
profileAndLevel-MPatML NULL,
profileAndLevel-MPatH-14 NULL,
profileAndLevel-MPatHL NULL,
profileAndLevel-SNRatLL NULL,
profileAndLevel-SNRatML NULL,
profileAndLevel-SpatialatH-14 NULL,
profileAndLevel-HPatML NULL,
profileAndLevel-HPatH-14 NULL,
profileAndLevel-HPatHL NULL,
...},
videoBitRate INTEGER(0..1073741823) OPTIONAL, -- units 400 bit/s
vbvBufferSize INTEGER(0..262143) OPTIONAL, -- units 16 384 bits
samplesPerLine INTEGER(0..16383) OPTIONAL, -- units samples/line
linesPerFrame INTEGER(0..16383) OPTIONAL, -- units lines/frame
framesPerSecond INTEGER(0..15) OPTIONAL, -- frame_rate_code
luminanceSampleRate INTEGER(0..4294967295) OPTIONAL, -- units samples/s
...
}
H263VideoMode ::= SEQUENCE {
resolution
CHOICE {sqcif NULL,
qcif NULL,
cif NULL,
cif4 NULL,
cif16 NULL,
...,
custom NULL},
bitRate INTEGER(1..19200), -- units 100 bit/s
unrestrictedVector BOOLEAN,
arithmeticCoding BOOLEAN,
advancedPrediction BOOLEAN,
pbFrames BOOLEAN,
...,
errorCompensation BOOLEAN,
enhancementLayerInfo EnhancementLayerInfo OPTIONAL,
h263Options H263Options OPTIONAL
}
IS11172VideoMode ::= SEQUENCE {
constrainedBitstream BOOLEAN,
videoBitRate INTEGER(0..1073741823) OPTIONAL, -- units
-- 400 bit/s
vbvBufferSize INTEGER(0..262143) OPTIONAL, -- units
-- 16 384 bits
samplesPerLine INTEGER(0..16383) OPTIONAL, -- units
-- samples/line
linesPerFrame INTEGER(0..16383) OPTIONAL, -- units
-- lines/frame
pictureRate INTEGER(0..15) OPTIONAL,
luminanceSampleRate INTEGER(0..4294967295) OPTIONAL, -- units
-- samples/s
...
}
-- =============================================================================
-- Request mode definitions: Audio modes
-- =============================================================================
AudioMode ::= CHOICE {
nonStandard NonStandardParameter,
g711Alaw64k NULL,
g711Alaw56k NULL,
g711Ulaw64k NULL,
g711Ulaw56k NULL,
g722-64k NULL,
g722-56k NULL,
g722-48k NULL,
g728 NULL,
g729 NULL,
g729AnnexA NULL,
g7231
CHOICE {noSilenceSuppressionLowRate NULL,
noSilenceSuppressionHighRate NULL,
silenceSuppressionLowRate NULL,
silenceSuppressionHighRate NULL},
is11172AudioMode IS11172AudioMode,
is13818AudioMode IS13818AudioMode,
...,
g729wAnnexB INTEGER(1..256),
g729AnnexAwAnnexB INTEGER(1..256),
g7231AnnexCMode G7231AnnexCMode,
gsmFullRate GSMAudioCapability,
gsmHalfRate GSMAudioCapability,
gsmEnhancedFullRate GSMAudioCapability,
genericAudioMode GenericCapability,
g729Extensions G729Extensions,
vbd VBDMode
}
IS11172AudioMode ::= SEQUENCE {
audioLayer
CHOICE {audioLayer1 NULL,
audioLayer2 NULL,
audioLayer3 NULL},
audioSampling
CHOICE {audioSampling32k NULL,
audioSampling44k1 NULL,
audioSampling48k NULL},
multichannelType
CHOICE {singleChannel NULL,
twoChannelStereo NULL,
twoChannelDual NULL},
bitRate INTEGER(1..448), -- units kbit/s
...
}
IS13818AudioMode ::= SEQUENCE {
audioLayer
CHOICE {audioLayer1 NULL,
audioLayer2 NULL,
audioLayer3 NULL},
audioSampling
CHOICE {audioSampling16k NULL,
audioSampling22k05 NULL,
audioSampling24k NULL,
audioSampling32k NULL,
audioSampling44k1 NULL,
audioSampling48k NULL},
multichannelType
CHOICE {singleChannel NULL,
twoChannelStereo NULL,
twoChannelDual NULL,
threeChannels2-1 NULL,
threeChannels3-0 NULL,
fourChannels2-0-2-0 NULL,
fourChannels2-2 NULL,
fourChannels3-1 NULL,
fiveChannels3-0-2-0 NULL,
fiveChannels3-2 NULL},
lowFrequencyEnhancement BOOLEAN,
multilingual BOOLEAN,
bitRate INTEGER(1..1130), -- units kbit/s
...
}
G7231AnnexCMode ::= SEQUENCE {
maxAl-sduAudioFrames INTEGER(1..256),
silenceSuppression BOOLEAN,
g723AnnexCAudioMode
SEQUENCE {highRateMode0 INTEGER(27..78), -- units octets--
highRateMode1 INTEGER(27..78), -- units octets--
lowRateMode0 INTEGER(23..66), -- units octets--
lowRateMode1 INTEGER(23..66), -- units octets--
sidMode0 INTEGER(6..17), -- units octets--
sidMode1 INTEGER(6..17), -- units octets--
...},
...
}
VBDMode ::= SEQUENCE {type AudioMode, -- shall not be "vbd"
...
}
-- =============================================================================
-- Request mode definitions: Data modes
-- =============================================================================
DataMode ::= SEQUENCE {
application
CHOICE {nonStandard NonStandardParameter,
t120 DataProtocolCapability,
dsm-cc DataProtocolCapability,
userData DataProtocolCapability,
t84 DataProtocolCapability,
t434 DataProtocolCapability,
h224 DataProtocolCapability,
nlpid
SEQUENCE {nlpidProtocol DataProtocolCapability,
nlpidData OCTET STRING},
dsvdControl NULL,
h222DataPartitioning DataProtocolCapability,
...,
t30fax DataProtocolCapability,
t140 DataProtocolCapability,
t38fax
SEQUENCE {t38FaxProtocol DataProtocolCapability,
t38FaxProfile T38FaxProfile},
genericDataMode GenericCapability},
bitRate INTEGER(0..4294967295), -- units 100 bit/s
...
}
-- =============================================================================
-- Request mode definitions: Encryption modes
-- =============================================================================
EncryptionMode ::= CHOICE {
nonStandard NonStandardParameter,
h233Encryption NULL,
...
}
-- =============================================================================
-- Round Trip Delay definitions
-- =============================================================================
RoundTripDelayRequest ::= SEQUENCE {sequenceNumber SequenceNumber,
...
}
RoundTripDelayResponse ::= SEQUENCE {sequenceNumber SequenceNumber,
...
}
-- =============================================================================
-- Maintenance Loop definitions
-- =============================================================================
MaintenanceLoopRequest ::= SEQUENCE {
type
CHOICE {systemLoop NULL,
mediaLoop LogicalChannelNumber,
logicalChannelLoop LogicalChannelNumber,
...},
...
}
MaintenanceLoopAck ::= SEQUENCE {
type
CHOICE {systemLoop NULL,
mediaLoop LogicalChannelNumber,
logicalChannelLoop LogicalChannelNumber,
...},
...
}
MaintenanceLoopReject ::= SEQUENCE {
type
CHOICE {systemLoop NULL,
mediaLoop LogicalChannelNumber,
logicalChannelLoop LogicalChannelNumber,
...},
cause CHOICE {canNotPerformLoop NULL,
...},
...
}
MaintenanceLoopOffCommand ::= SEQUENCE {...
}
-- =============================================================================
-- Communication Mode definitions
-- =============================================================================
CommunicationModeCommand ::= SEQUENCE {
communicationModeTable SET SIZE (1..256) OF CommunicationModeTableEntry,
...
}
CommunicationModeRequest ::= SEQUENCE {...
}
CommunicationModeResponse ::= CHOICE {
communicationModeTable SET SIZE (1..256) OF CommunicationModeTableEntry,
...
}
CommunicationModeTableEntry ::= SEQUENCE {
nonStandard SEQUENCE OF NonStandardParameter OPTIONAL,
sessionID INTEGER(1..255),
associatedSessionID INTEGER(1..255) OPTIONAL,
terminalLabel TerminalLabel OPTIONAL, -- if not present,
-- it refers to
-- all
-- participants in
-- the conference
sessionDescription BMPString(SIZE (1..128)),
-- Basic ISO/IEC 10646 (Unicode)
dataType
CHOICE {videoData VideoCapability,
audioData AudioCapability,
data DataApplicationCapability,
...},
mediaChannel TransportAddress OPTIONAL,
mediaGuaranteedDelivery BOOLEAN OPTIONAL,
mediaControlChannel TransportAddress OPTIONAL,
-- reverse RTCP channel
mediaControlGuaranteedDelivery BOOLEAN OPTIONAL,
...,
redundancyEncoding RedundancyEncoding OPTIONAL,
sessionDependency INTEGER(1..255) OPTIONAL,
destination TerminalLabel OPTIONAL
}
-- =============================================================================
-- Conference Request definitions
-- =============================================================================
ConferenceRequest ::= CHOICE {
terminalListRequest NULL, -- same as H.230 TCU (term->MC)
makeMeChair NULL, -- same as H.230 CCA (term->MC)
cancelMakeMeChair NULL, -- same as H.230 CIS (term->MC)
dropTerminal TerminalLabel, -- same as H.230 CCD(term->MC)
requestTerminalID TerminalLabel, -- same as TCP (term->MC)
enterH243Password NULL, -- same as H.230 TCS1(MC->term)
enterH243TerminalID NULL, -- same as H.230 TCS2/TCI
-- (MC->term)
enterH243ConferenceID NULL, -- same as H.230 TCS3 (MC->term)
...,
enterExtensionAddress NULL, -- same as H.230 TCS4 (GW->term)
requestChairTokenOwner NULL, -- same as H.230 TCA (term->MC)
requestTerminalCertificate
SEQUENCE {terminalLabel TerminalLabel OPTIONAL,
certSelectionCriteria CertSelectionCriteria OPTIONAL,
sRandom INTEGER(1..4294967295) OPTIONAL,
-- this is the requester's challenge
...},
broadcastMyLogicalChannel LogicalChannelNumber, -- similar to H.230 MCV
makeTerminalBroadcaster TerminalLabel, -- similar to H.230 VCB
sendThisSource TerminalLabel, -- similar to H.230 VCS
requestAllTerminalIDs NULL,
remoteMCRequest RemoteMCRequest
}
CertSelectionCriteria ::= SEQUENCE SIZE (1..16) OF Criteria
Criteria ::= SEQUENCE {
field OBJECT IDENTIFIER, -- may include
-- certificate type
value OCTET STRING(SIZE (1..65535)),
...
}
TerminalLabel ::= SEQUENCE {
mcuNumber McuNumber,
terminalNumber TerminalNumber,
...
}
McuNumber ::= INTEGER(0..192)
TerminalNumber ::= INTEGER(0..192)
-- =============================================================================
-- Conference Response definitions
-- =============================================================================
ConferenceResponse ::= CHOICE {
mCTerminalIDResponse
SEQUENCE-- response to TCP --
-- (same as TIP)
{-- sent by MC only--terminalLabel TerminalLabel,
terminalID TerminalID,
...},
terminalIDResponse
SEQUENCE-- response to TCS2 or TCI-- {-- same as IIS--terminalLabel
TerminalLabel, -- (term->MC)--
terminalID
TerminalID,
...},
conferenceIDResponse
SEQUENCE-- response to TCS3-- {-- same as IIS--terminalLabel TerminalLabel, -- (term->MC)--
conferenceID ConferenceID,
...},
passwordResponse
SEQUENCE-- response to TCS1-- {-- same as IIS--terminalLabel TerminalLabel, -- (term->MC)--
password Password,
...},
terminalListResponse SET SIZE (1..256) OF TerminalLabel,
videoCommandReject NULL, -- same as H.230 VCR
terminalDropReject NULL, -- same as H.230 CIR
makeMeChairResponse
CHOICE-- same as H.230 CCR-- {grantedChairToken NULL, -- same as H.230 CIT--
deniedChairToken NULL, -- same as H.230 CCR--
...},
...,
extensionAddressResponse
SEQUENCE-- response to TCS4-- {extensionAddress TerminalID, -- same as IIS (term->GW)--
...},
chairTokenOwnerResponse
SEQUENCE-- response to TCA (same as TIR) --
-- sent by MC only
{terminalLabel TerminalLabel,
terminalID TerminalID,
...},
terminalCertificateResponse
SEQUENCE {terminalLabel TerminalLabel OPTIONAL,
certificateResponse OCTET STRING(SIZE (1..65535)) OPTIONAL,
...},
broadcastMyLogicalChannelResponse
CHOICE {grantedBroadcastMyLogicalChannel NULL, -- similar to H.230 MVA--
deniedBroadcastMyLogicalChannel NULL, -- similar to H.230 MVR--
...},
makeTerminalBroadcasterResponse
CHOICE {grantedMakeTerminalBroadcaster NULL,
deniedMakeTerminalBroadcaster NULL,
...},
sendThisSourceResponse
CHOICE {grantedSendThisSource NULL,
deniedSendThisSource NULL,
...},
requestAllTerminalIDsResponse RequestAllTerminalIDsResponse,
remoteMCResponse RemoteMCResponse
}
TerminalID ::= OCTET STRING(SIZE (1..128)) -- as per H.230
ConferenceID ::= OCTET STRING(SIZE (1..32))
Password ::= OCTET STRING(SIZE (1..32))
RequestAllTerminalIDsResponse ::= SEQUENCE {
terminalInformation SEQUENCE OF TerminalInformation,
...
}
TerminalInformation ::= SEQUENCE {
terminalLabel TerminalLabel,
terminalID TerminalID,
...
}
-- =============================================================================
-- Remote MC Request definitions
-- =============================================================================
RemoteMCRequest ::= CHOICE {
masterActivate NULL,
slaveActivate NULL,
deActivate NULL,
...
}
RemoteMCResponse ::= CHOICE {
accept NULL,
reject CHOICE {unspecified NULL,
functionNotSupported NULL,
...},
...
}
-- =============================================================================
-- Multilink definitions
-- =============================================================================
MultilinkRequest ::= CHOICE {
nonStandard NonStandardMessage,
callInformation
SEQUENCE {maxNumberOfAdditionalConnections INTEGER(1..65535),
...},
addConnection
SEQUENCE {sequenceNumber SequenceNumber, -- Unique ID of request--
dialingInformation DialingInformation,
...},
removeConnection
SEQUENCE {connectionIdentifier ConnectionIdentifier,
...},
maximumHeaderInterval
SEQUENCE {requestType
CHOICE {currentIntervalInformation NULL,
requestedInterval INTEGER(0..65535), -- Max Header --
-- Interval,
-- milliseconds
...},
...},
...
}
MultilinkResponse ::= CHOICE {
nonStandard NonStandardMessage,
callInformation
SEQUENCE {dialingInformation DialingInformation,
callAssociationNumber INTEGER(0..4294967295),
...},
addConnection
SEQUENCE {sequenceNumber SequenceNumber, -- Equal to value in request--
responseCode
CHOICE {accepted NULL,
rejected
CHOICE {connectionsNotAvailable NULL, -- due to any technical reason--
userRejected NULL,
...},
...},
...},
removeConnection
SEQUENCE {connectionIdentifier ConnectionIdentifier,
...},
maximumHeaderInterval
SEQUENCE {currentInterval INTEGER(0..65535), -- Max Header --
-- Interval,
-- milliseconds
...},
...
}
MultilinkIndication ::= CHOICE {
nonStandard NonStandardMessage,
crcDesired SEQUENCE {...},
excessiveError SEQUENCE {connectionIdentifier ConnectionIdentifier,
...},
...
}
DialingInformation ::= CHOICE {
nonStandard NonStandardMessage,
differential SET SIZE (1..65535) OF DialingInformationNumber,
-- list of numbers for all additional
-- channels; only least significant digits
-- different from initial channel's number
infoNotAvailable INTEGER(1..65535), -- maximum No. of
-- additional channels
...
}
DialingInformationNumber ::= SEQUENCE {
networkAddress NumericString(SIZE (0..40)),
subAddress IA5String(SIZE (1..40)) OPTIONAL,
networkType SET SIZE (1..255) OF DialingInformationNetworkType,
...
}
DialingInformationNetworkType ::= CHOICE {
nonStandard NonStandardMessage,
n-isdn NULL,
gstn NULL,
...,
mobile NULL
}
ConnectionIdentifier ::= SEQUENCE {
channelTag INTEGER(0..4294967295), -- from H.226
sequenceNumber INTEGER(0..4294967295), -- from H.226
...
}
-- =============================================================================
-- Logical channel bit-rate change definitions
-- =============================================================================
MaximumBitRate ::= INTEGER(0..4294967295) -- units of 100 bit/s
LogicalChannelRateRequest ::= SEQUENCE {
sequenceNumber SequenceNumber,
logicalChannelNumber LogicalChannelNumber,
maximumBitRate MaximumBitRate,
...
}
LogicalChannelRateAcknowledge ::= SEQUENCE {
sequenceNumber SequenceNumber,
logicalChannelNumber LogicalChannelNumber,
maximumBitRate MaximumBitRate,
...
}
LogicalChannelRateReject ::= SEQUENCE {
sequenceNumber SequenceNumber,
logicalChannelNumber LogicalChannelNumber,
rejectReason LogicalChannelRateRejectReason,
currentMaximumBitRate MaximumBitRate OPTIONAL,
...
}
LogicalChannelRateRejectReason ::= CHOICE {
undefinedReason NULL,
insufficientResources NULL,
...
}
LogicalChannelRateRelease ::= SEQUENCE {...
}
-- =============================================================================
-- Command Message definitions
-- =============================================================================
-- =============================================================================
-- Command Message: Send Terminal Capability Set
-- =============================================================================
SendTerminalCapabilitySet ::= CHOICE {
specificRequest
SEQUENCE {multiplexCapability BOOLEAN,
capabilityTableEntryNumbers
SET SIZE (1..65535) OF CapabilityTableEntryNumber OPTIONAL,
capabilityDescriptorNumbers
SET SIZE (1..256) OF CapabilityDescriptorNumber OPTIONAL,
...},
genericRequest NULL,
...
}
-- =============================================================================
-- Command Message: Encryption
-- =============================================================================
EncryptionCommand ::= CHOICE {
encryptionSE OCTET STRING, -- per H.233, but no
-- error protection
encryptionIVRequest NULL, -- requests new IV
encryptionAlgorithmID
SEQUENCE {h233AlgorithmIdentifier SequenceNumber,
associatedAlgorithm NonStandardParameter},
...
}
-- =============================================================================
-- Command Message: Flow Control
-- =============================================================================
FlowControlCommand ::= SEQUENCE {
scope
CHOICE {logicalChannelNumber LogicalChannelNumber,
resourceID INTEGER(0..65535),
wholeMultiplex NULL},
restriction
CHOICE {maximumBitRate INTEGER(0..16777215), -- units 100 bit/s --
noRestriction NULL},
...
}
-- =============================================================================
-- Command Message: Change or End Session
-- =============================================================================
EndSessionCommand ::= CHOICE {
nonStandard NonStandardParameter,
disconnect NULL,
gstnOptions
CHOICE {telephonyMode NULL,
v8bis NULL,
v34DSVD NULL,
v34DuplexFAX NULL,
v34H324 NULL,
...},
...,
isdnOptions
CHOICE {telephonyMode NULL,
v140 NULL,
terminalOnHold NULL,
...},
genericInformation SEQUENCE OF GenericInformation
}
-- generic information associated
-- with the message
-- =============================================================================
-- Command Message: Conference Commands
-- =============================================================================
ConferenceCommand ::= CHOICE {
broadcastMyLogicalChannel LogicalChannelNumber, -- similar to H.230 MCV
cancelBroadcastMyLogicalChannel LogicalChannelNumber, -- similar to
-- H.230 Cancel-MCV
makeTerminalBroadcaster TerminalLabel, -- same as H.230 VCB
cancelMakeTerminalBroadcaster NULL, -- same as H.230
-- Cancel-VCB
sendThisSource TerminalLabel, -- same as H.230 VCS
cancelSendThisSource NULL, -- same as H.230
-- cancel VCS
dropConference NULL, -- same as H.230 CCK
...,
substituteConferenceIDCommand SubstituteConferenceIDCommand
}
SubstituteConferenceIDCommand ::= SEQUENCE {
conferenceIdentifier OCTET STRING(SIZE (16)),
...
}
-- =============================================================================
-- Command Message: Miscellaneous H.230-like commands
-- =============================================================================
EncryptionUpdateDirection ::= CHOICE {
masterToSlave NULL,
slaveToMaster NULL,
...
}
MiscellaneousCommand ::= SEQUENCE {
logicalChannelNumber LogicalChannelNumber,
type
CHOICE {equaliseDelay NULL, -- same as H.230 ACE--
zeroDelay NULL, -- same as H.230 ACZ--
multipointModeCommand NULL,
cancelMultipointModeCommand NULL,
videoFreezePicture NULL,
videoFastUpdatePicture NULL,
videoFastUpdateGOB
SEQUENCE {firstGOB INTEGER(0..17),
numberOfGOBs INTEGER(1..18)},
videoTemporalSpatialTradeOff INTEGER(0..31), -- commands a trade-off value--
videoSendSyncEveryGOB NULL,
videoSendSyncEveryGOBCancel NULL,
...,
videoFastUpdateMB
SEQUENCE {firstGOB INTEGER(0..255) OPTIONAL,
firstMB INTEGER(1..8192) OPTIONAL,
numberOfMBs INTEGER(1..8192),
...},
maxH223MUXPDUsize INTEGER(1..65535), -- units octets--
encryptionUpdate EncryptionSync,
encryptionUpdateRequest EncryptionUpdateRequest,
switchReceiveMediaOff NULL,
switchReceiveMediaOn NULL,
progressiveRefinementStart
SEQUENCE {repeatCount
CHOICE {doOneProgression NULL,
doContinuousProgressions NULL,
doOneIndependentProgression NULL,
doContinuousIndependentProgressions NULL,
...},
...},
progressiveRefinementAbortOne NULL,
progressiveRefinementAbortContinuous NULL,
videoBadMBs
SEQUENCE {firstMB INTEGER(1..9216),
numberOfMBs INTEGER(1..9216),
temporalReference INTEGER(0..1023),
...},
lostPicture SEQUENCE OF PictureReference,
lostPartialPicture
SEQUENCE {pictureReference PictureReference,
firstMB INTEGER(1..9216),
numberOfMBs INTEGER(1..9216),
...},
recoveryReferencePicture SEQUENCE OF PictureReference,
encryptionUpdateCommand
SEQUENCE-- for ack'ed key update in H.235V3-- {encryptionSync
EncryptionSync,
multiplePayloadStream
MultiplePayloadStream
OPTIONAL,
...},
encryptionUpdateAck
SEQUENCE {synchFlag INTEGER(0..255),
...}},
...,
direction EncryptionUpdateDirection OPTIONAL
}
KeyProtectionMethod ::=
SEQUENCE -- specify how the new
-- key is to be protected
{
secureChannel BOOLEAN,
sharedSecret BOOLEAN,
certProtectedKey BOOLEAN,
...
}
EncryptionUpdateRequest ::= SEQUENCE {
keyProtectionMethod KeyProtectionMethod OPTIONAL,
...,
synchFlag INTEGER(0..255) OPTIONAL
}
PictureReference ::= CHOICE {
pictureNumber INTEGER(0..1023),
longTermPictureIndex INTEGER(0..255),
...
}
-- =============================================================================
-- Command Message: H.223 Multiplex Reconfiguration
-- =============================================================================
H223MultiplexReconfiguration ::= CHOICE {
h223ModeChange
CHOICE {toLevel0 NULL,
toLevel1 NULL,
toLevel2 NULL,
toLevel2withOptionalHeader NULL,
...},
h223AnnexADoubleFlag CHOICE {start NULL,
stop NULL,
...},
...
}
-- =============================================================================
-- Command Message: New ATM virtual channel command
-- =============================================================================
NewATMVCCommand ::= SEQUENCE {
resourceID INTEGER(0..65535),
bitRate INTEGER(1..65535), -- units 64 kbit/s
bitRateLockedToPCRClock BOOLEAN,
bitRateLockedToNetworkClock BOOLEAN,
aal
CHOICE {aal1
SEQUENCE {clockRecovery
CHOICE {nullClockRecovery NULL,
srtsClockRecovery NULL,
adaptiveClockRecovery NULL,
...},
errorCorrection
CHOICE {nullErrorCorrection NULL,
longInterleaver NULL,
shortInterleaver NULL,
errorCorrectionOnly NULL,
...},
structuredDataTransfer BOOLEAN,
partiallyFilledCells BOOLEAN,
...},
aal5
SEQUENCE {forwardMaximumSDUSize INTEGER(0..65535), -- units octets--
backwardMaximumSDUSize INTEGER(0..65535), -- units octets--
...},
...},
multiplex
CHOICE {noMultiplex NULL,
transportStream NULL,
programStream NULL,
...},
reverseParameters
SEQUENCE {bitRate INTEGER(1..65535), -- units 64 kbit/s--
bitRateLockedToPCRClock BOOLEAN,
bitRateLockedToNetworkClock BOOLEAN,
multiplex
CHOICE {noMultiplex NULL,
transportStream NULL,
programStream NULL,
...},
...},
...
}
-- =============================================================================
-- Command Message: Mobile Multilink Reconfiguration command
-- =============================================================================
MobileMultilinkReconfigurationCommand ::= SEQUENCE {
sampleSize INTEGER(1..255),
samplesPerFrame INTEGER(1..255),
status CHOICE {synchronized NULL,
reconfiguration NULL,
...},
...
}
-- =============================================================================
-- Indication Message definitions
-- =============================================================================
-- =============================================================================
-- Indication Message: Function not understood
-- =============================================================================
-- This is used to return a request, response or command that is not understood
FunctionNotUnderstood ::= CHOICE {
request RequestMessage,
response ResponseMessage,
command CommandMessage
}
-- =============================================================================
-- Indication Message: Function not Supported
-- =============================================================================
-- This is used to return a complete request, response or command that is not
-- recognized
FunctionNotSupported ::= SEQUENCE {
cause
CHOICE {syntaxError NULL,
semanticError NULL,
unknownFunction NULL,
...},
returnedFunction OCTET STRING OPTIONAL,
...
}
-- =============================================================================
-- Indication Message: Conference
-- =============================================================================
ConferenceIndication ::= CHOICE {
sbeNumber INTEGER(0..9), -- same as H.230 SBE Number
terminalNumberAssign TerminalLabel, -- same as H.230 TIA
terminalJoinedConference TerminalLabel, -- same as H.230 TIN
terminalLeftConference TerminalLabel, -- same as H.230 TID
seenByAtLeastOneOther NULL, -- same as H.230 MIV
cancelSeenByAtLeastOneOther NULL, -- same as H.230 cancel MIV
seenByAll NULL, -- like H.230 MIV
cancelSeenByAll NULL, -- like H.230 MIV
terminalYouAreSeeing TerminalLabel, -- same as H.230 VIN
requestForFloor NULL, -- same as H.230 TIF
...,
withdrawChairToken NULL, -- same as H.230 CCR MC-> chair
floorRequested TerminalLabel, -- same as H.230 TIF MC-> chair
terminalYouAreSeeingInSubPictureNumber
TerminalYouAreSeeingInSubPictureNumber,
videoIndicateCompose VideoIndicateCompose,
masterMCU NULL, -- same as H.230 MIM
cancelMasterMCU -- same as H.230 cancel MIM -- NULL
}
TerminalYouAreSeeingInSubPictureNumber ::= SEQUENCE {
terminalNumber TerminalNumber,
subPictureNumber INTEGER(0..255),
...,
mcuNumber McuNumber
}
VideoIndicateCompose ::= SEQUENCE {compositionNumber INTEGER(0..255),
...
}
-- =============================================================================
-- Indication Message: Miscellaneous H.230-like indication
-- =============================================================================
MiscellaneousIndication ::= SEQUENCE {
logicalChannelNumber LogicalChannelNumber,
type
CHOICE {logicalChannelActive NULL, -- same as H.230 AIA and VIA--
logicalChannelInactive NULL, -- same as H.230 AIM and VIS--
multipointConference NULL,
cancelMultipointConference NULL,
multipointZeroComm NULL, -- same as H.230 MIZ--
cancelMultipointZeroComm NULL, -- same as H.230 cancel MIZ--
multipointSecondaryStatus NULL, -- same as H.230 MIS--
cancelMultipointSecondaryStatus NULL, -- same as H.230 cancel MIS--
videoIndicateReadyToActivate NULL, -- same as H.230 VIR--
videoTemporalSpatialTradeOff INTEGER(0..31), -- indicates current --
-- trade-off
...,
videoNotDecodedMBs
SEQUENCE {firstMB INTEGER(1..8192),
numberOfMBs INTEGER(1..8192),
temporalReference INTEGER(0..255),
...},
transportCapability TransportCapability},
...
}
-- =============================================================================
-- Indication Message: Jitter Indication
-- =============================================================================
JitterIndication ::= SEQUENCE {
scope
CHOICE {logicalChannelNumber LogicalChannelNumber,
resourceID INTEGER(0..65535),
wholeMultiplex NULL},
estimatedReceivedJitterMantissa INTEGER(0..3),
estimatedReceivedJitterExponent INTEGER(0..7),
skippedFrameCount INTEGER(0..15) OPTIONAL,
additionalDecoderBuffer INTEGER(0..262143) OPTIONAL,
-- 262143 is 2^18 - 1
...
}
-- =============================================================================
-- Indication Message: H.223 logical channel skew
-- =============================================================================
H223SkewIndication ::= SEQUENCE {
logicalChannelNumber1 LogicalChannelNumber,
logicalChannelNumber2 LogicalChannelNumber,
skew INTEGER(0..4095), -- units milliseconds
...
}
-- =============================================================================
-- Indication Message: H.225.0 maximum logical channel skew
-- =============================================================================
H2250MaximumSkewIndication ::= SEQUENCE {
logicalChannelNumber1 LogicalChannelNumber,
logicalChannelNumber2 LogicalChannelNumber,
maximumSkew INTEGER(0..4095), -- units milliseconds
...
}
-- =============================================================================
-- Indication Message: MC Location Indication
-- =============================================================================
MCLocationIndication ::= SEQUENCE {
signalAddress TransportAddress, -- this is the
-- H.323 Call Signalling
-- address of the entity
-- which contains the MC
...
}
-- =============================================================================
-- Indication Message: Vendor Identification
-- =============================================================================
VendorIdentification ::= SEQUENCE {
vendor NonStandardIdentifier,
productNumber OCTET STRING(SIZE (1..256)) OPTIONAL,
-- per vendor
versionNumber OCTET STRING(SIZE (1..256)) OPTIONAL,
-- per productNumber
...
}
-- =============================================================================
-- Indication Message: New ATM virtual channel indication
-- =============================================================================
NewATMVCIndication ::= SEQUENCE {
resourceID INTEGER(0..65535),
bitRate INTEGER(1..65535), -- units 64 kbit/s
bitRateLockedToPCRClock BOOLEAN,
bitRateLockedToNetworkClock BOOLEAN,
aal
CHOICE {aal1
SEQUENCE {clockRecovery
CHOICE {nullClockRecovery NULL,
srtsClockRecovery NULL,
adaptiveClockRecovery NULL,
...},
errorCorrection
CHOICE {nullErrorCorrection NULL,
longInterleaver NULL,
shortInterleaver NULL,
errorCorrectionOnly NULL,
...},
structuredDataTransfer BOOLEAN,
partiallyFilledCells BOOLEAN,
...},
aal5
SEQUENCE {forwardMaximumSDUSize INTEGER(0..65535), -- units octets--
backwardMaximumSDUSize INTEGER(0..65535), -- units octets--
...},
...},
multiplex
CHOICE {noMultiplex NULL,
transportStream NULL,
programStream NULL,
...},
...,
reverseParameters
SEQUENCE {bitRate INTEGER(1..65535), -- units 64 kbit/s--
bitRateLockedToPCRClock BOOLEAN,
bitRateLockedToNetworkClock BOOLEAN,
multiplex
CHOICE {noMultiplex NULL,
transportStream NULL,
programStream NULL,
...},
...}
}
-- =============================================================================
-- Indication Message: User input
-- =============================================================================
IV8 ::= OCTET STRING(SIZE (8))
-- initial value for
-- 64-bit block ciphers
IV16 ::= OCTET STRING(SIZE (16))
-- initial value for
-- 128-bit block ciphers
Params ::= SEQUENCE {
iv8 IV8 OPTIONAL, -- 8-octet initialization vector
iv16 IV16 OPTIONAL, -- 16-octet initialization vector
iv OCTET STRING OPTIONAL, -- arbitrary length
-- initialization vector
...
}
UserInputIndication ::= CHOICE {
nonStandard NonStandardParameter,
alphanumeric GeneralString,
...,
userInputSupportIndication
CHOICE {nonStandard NonStandardParameter,
basicString NULL, -- indicates unsecured basic string--
iA5String NULL, -- indicates unsecured IA5 string--
generalString NULL, -- indicates unsecured general string--
...,
encryptedBasicString NULL, -- indicates encrypted Basic string--
encryptedIA5String NULL, -- indicates encrypted IA5 string--
encryptedGeneralString NULL -- indicates encrypted general string
},
signal
SEQUENCE {signalType
IA5String(SIZE (1) ^ FROM ("0123456789#*ABCD!")),
-- holds dummy "!" if encryptedSignalType
-- is being used
duration INTEGER(1..65535) OPTIONAL,
-- milliseconds
rtp
SEQUENCE {timestamp INTEGER(0..4294967295) OPTIONAL,
expirationTime INTEGER(0..4294967295) OPTIONAL,
logicalChannelNumber LogicalChannelNumber,
...} OPTIONAL,
...,
rtpPayloadIndication NULL OPTIONAL,
paramS Params OPTIONAL, -- any "runtime" parameters--
encryptedSignalType OCTET STRING(SIZE (1)) OPTIONAL,
-- encrypted signalType
algorithmOID OBJECT IDENTIFIER OPTIONAL},
signalUpdate
SEQUENCE {duration INTEGER(1..65535), -- milliseconds--
rtp
SEQUENCE {logicalChannelNumber LogicalChannelNumber,
...} OPTIONAL,
...},
extendedAlphanumeric
SEQUENCE {alphanumeric GeneralString, -- holds empty string if--
-- encryptedAlphanumeric is
-- being used
rtpPayloadIndication NULL OPTIONAL,
...,
encryptedAlphanumeric
SEQUENCE {algorithmOID OBJECT IDENTIFIER,
paramS Params OPTIONAL, -- any "runtime" parameters--
encrypted OCTET STRING, -- general string encrypted--
...} OPTIONAL},
encryptedAlphanumeric
SEQUENCE {algorithmOID OBJECT IDENTIFIER,
paramS Params OPTIONAL, -- any "runtime" parameters--
encrypted OCTET STRING, -- basic string encrypted--
...},
genericInformation SEQUENCE OF GenericInformation
}
-- generic information associated
-- with the message
-- =============================================================================
-- Indication Message: Flow Control
-- =============================================================================
FlowControlIndication ::= SEQUENCE {
scope
CHOICE {logicalChannelNumber LogicalChannelNumber,
resourceID INTEGER(0..65535),
wholeMultiplex NULL},
restriction
CHOICE {maximumBitRate INTEGER(0..16777215), -- units 100 bit/s--
noRestriction NULL},
...
}
-- =============================================================================
-- Indication Message: Mobile Multilink Reconfiguration indication
-- =============================================================================
MobileMultilinkReconfigurationIndication ::= SEQUENCE {
sampleSize INTEGER(1..255),
samplesPerFrame INTEGER(1..255),
...
}
END
-- Generated by Asnp, the ASN.1 pretty-printer of France Telecom R&D