wireshark/asn1/h245/h245.asn
Tomas Kukosa ec979a97fb - dissect_per_restricted_character_string() returns value in tvbbuff_t instead of char
- asn2eth:
  fixed CHOICE tag handling
  #.FN_PARS support for BIT STRING and all string types
  intersection of SIZE and FROM constraints for string is handled
- new asn2eth features used in h225 and h245
- PER dissectors regeneration

svn path=/trunk/; revision=15408
2005-08-18 14:32:49 +00:00

3093 lines
116 KiB
Groff

-- Module MULTIMEDIA-SYSTEM-CONTROL (H.245:07/2003)
MULTIMEDIA-SYSTEM-CONTROL 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 request Message
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,
subMessageIdentifer INTEGER(0..127) OPTIONAL,
messageContent SEQUENCE OF GenericParameter OPTIONAL,
...
}
-- ===================================================================================
-- 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 T.35 Annex A--
t35Extension INTEGER(0..255),
-- assigned nationally unless t35CountryCode is binary
-- 1111 1111, in which case it shall contain the country code
-- according to T.35 Annex B
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) 10}
multiplexCapability MultiplexCapability OPTIONAL,
capabilityTable SET SIZE (1..256) OF CapabilityTableEntry OPTIONAL,
capabilityDescriptors SET SIZE (1..256) OF CapabilityDescriptor OPTIONAL,
...
}
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,
...
}
TerminalCapabilitySetReject ::= SEQUENCE {
sequenceNumber SequenceNumber,
cause
CHOICE {unspecified NULL,
undefinedTableEntryUsed NULL,
descriptorCapacityExceeded NULL,
tableEntryCapacityExceeded
CHOICE {highestEntryNumberProcessed CapabilityTableEntryNumber,
noneProcessed NULL},
...},
...
}
TerminalCapabilitySetRelease ::= SEQUENCE {...
}
-- ===================================================================================
-- 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,
fecCapability FECCapability,
multiplePayloadStreamCapability
MultiplePayloadStreamCapability
}
H235SecurityCapability ::= SEQUENCE {
encryptionAuthenticationAndIntegrity EncryptionAuthenticationAndIntegrity,
mediaCapability CapabilityTableEntryNumber,
-- Note: the mediaCapability shall refer to Capability Table Entries that do contain a transmit,
-- receive, or receiveAndTransmit AudioCapability, VideoCapability,
-- DataApplicationCapability, or similar capability indicated by a NonStandardParameter 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,
...,
rtpPayloadType2 SEQUENCE SIZE (1..256) OF RTPPayloadType OPTIONAL
}
RSVPParameters ::= SEQUENCE {
qosMode QOSMode OPTIONAL,
tokenRate INTEGER(1..4294967295) OPTIONAL,
-- rate in bytes/sec
bucketSize INTEGER(1..4294967295) OPTIONAL, -- size in bytes
peakRate INTEGER(1..4294967295) OPTIONAL,
-- peak bandwidth bytes/sec
minPoliced INTEGER(1..4294967295) OPTIONAL, --
maxPktSize INTEGER(1..4294967295) OPTIONAL, -- size in bytes
...
}
QOSMode ::= CHOICE {guaranteedQOS NULL,
controlledLoad NULL,
...
}
-- Ed. Replace with ITU-T ATM Transfer Capability Types
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
...
}
QOSCapability ::= SEQUENCE {
nonStandardData NonStandardParameter OPTIONAL,
rsvpParameters RSVPParameters OPTIONAL,
atmParameters ATMParameters 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,
secondaryEncoding2
SEQUENCE SIZE (1..256) OF CapabilityTableEntryNumber OPTIONAL,
...
}
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 H.323
centralizedAudio BOOLEAN,
distributedAudio BOOLEAN,
centralizedVideo BOOLEAN,
distributedVideo BOOLEAN,
centralizedData SEQUENCE OF DataApplicationCapability OPTIONAL,
distributedData SEQUENCE OF DataApplicationCapability OPTIONAL,
-- for further study in 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 of 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 16384 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/sec
...,
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 16384 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/sec
...,
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 G723AnnexCAudioMode OPTIONAL,
...
}
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--
...}
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 Application,
maxBitRate INTEGER(0..4294967295), -- units 100 bit/s
...
}
Application ::= CHOICE {nonStandard NonStandardParameter,
t120 DataProtocolCapability,
dsm-cc DataProtocolCapability,
userData DataProtocolCapability,
t84
SEQUENCE {t84Protocol DataProtocolCapability,
t84Profile T84Profile},
t434 DataProtocolCapability,
h224 DataProtocolCapability,
nlpid Nlpid,
dsvdControl NULL,
h222DataPartitioning DataProtocolCapability,
...,
t30fax DataProtocolCapability,
t140 DataProtocolCapability,
t38fax
SEQUENCE {t38FaxProtocol DataProtocolCapability,
t38FaxProfile T38FaxProfile},
genericDataCapability GenericCapability}
DataProtocolCapability ::= CHOICE {
nonStandard NonStandardParameter,
v14buffered NULL,
v42lapm NULL, -- may negotiate to V.42bis
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 (1998)
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,
...
}
Nlpid ::= SEQUENCE {nlpidProtocol DataProtocolCapability,
nlpidData OCTET STRING}
-- ===================================================================================
-- Encryption Capability Definitions:
-- ===================================================================================
EncryptionAuthenticationAndIntegrity ::= SEQUENCE {
encryptionCapability EncryptionCapability OPTIONAL,
authenticationCapability AuthenticationCapability OPTIONAL,
integrityCapability IntegrityCapability 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
}
-- ===================================================================================
-- 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 3.9/RFC2833
...
}
AudioToneCapability ::= SEQUENCE {dynamicRTPPayloadType INTEGER(96..127),
...
}
-- The following defintions are as above but without a Payload Type field
NoPTAudioTelephonyEventCapability ::= SEQUENCE {
audioTelephoneEvent GeneralString, -- As per <list of values> in 3.9/RFC2833
...
}
NoPTAudioToneCapability ::= SEQUENCE {...
}
-- ===================================================================================
-- Capability Exchange Definitions: MultiplePayloadStreamCapability
-- ===================================================================================
MultiplePayloadStreamCapability ::= SEQUENCE {
capabilities SET SIZE (1..256) OF AlternativeCapabilitySet,
...
}
-- ===================================================================================
-- Capability Exchange Definitions: FECCapability
-- ===================================================================================
FECCapability ::= CHOICE {
rfc2733
SEQUENCE {redundancyEncoding BOOLEAN,
separateStream
SEQUENCE {separatePort BOOLEAN,
samePort BOOLEAN,
...},
...},
...
}
-- ===================================================================================
-- 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 bi-directional 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 bi-directional 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 uni-directional channel request
...,
separateStack NetworkAccessParameters OPTIONAL, -- for Open responder to establish the stack
encryptionSync EncryptionSync OPTIONAL
} -- used only by Master
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,
fec FECData
}
H235Media ::= SEQUENCE {
encryptionAuthenticationAndIntegrity EncryptionAuthenticationAndIntegrity,
mediaType
CHOICE {nonStandard NonStandardParameter,
videoData VideoCapability,
audioData AudioCapability,
data DataApplicationCapability,
...,
redundancyEncoding RedundancyEncoding,
multiplePayloadStream MultiplePayloadStream,
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 Al3,
...,
al1M H223AL1MParameters,
al2M H223AL2MParameters,
al3M H223AL3MParameters},
segmentableFlag BOOLEAN,
...
}
Al3 ::= SEQUENCE {controlFieldOctets INTEGER(0..2),
sendBufferSize INTEGER(0..16777215) -- units octets
}
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 ArqType,
alpduInterleaving BOOLEAN,
alsduSplitting BOOLEAN,
...,
rsCodeCorrection INTEGER(0..127) OPTIONAL
}
ArqType ::= CHOICE {noArq NULL,
typeIArq H223AnnexCArqParameters,
typeIIArq H223AnnexCArqParameters,
...}
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 ArqType,
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,
secondaryEncoding3 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,
...
}
FECData ::= CHOICE {
rfc2733
SEQUENCE {mode CHOICE {redundancyEncoding NULL,
separateStream SeparateStream,
...},
...}
}
Moderfc2733 ::= CHOICE {redundancyEncoding NULL,
separateStream SeparateStream,
...}
SeparateStream ::= CHOICE {differentPort
SEQUENCE {protectedSessionID
INTEGER(1..255),
protectedPayloadType
INTEGER(0..127) OPTIONAL,
...},
samePort
SEQUENCE {protectedPayloadType
INTEGER(0..127),
...},
...}
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 encoded value
escrowentry SEQUENCE SIZE (1..256) OF EscrowData 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 uni-directional 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
}
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},
...
}
OpenLogicalChannelConfirm ::= SEQUENCE {
forwardLogicalChannelNumber LogicalChannelNumber,
...
}
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,
...}
}
CloseLogicalChannelAck ::= SEQUENCE {
forwardLogicalChannelNumber LogicalChannelNumber,
...
}
RequestChannelClose ::= SEQUENCE {
forwardLogicalChannelNumber LogicalChannelNumber,
...,
qosCapability QOSCapability OPTIONAL,
reason
CHOICE {unknown NULL,
normal NULL,
reopen NULL,
reservationFailure NULL,
...}
}
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 {-- repeats of type
finite INTEGER(1..65535),
-- used for last element
untilClosingFlag NULL}
}
MultiplexTableEntryNumber ::= INTEGER(1..15)
MultiplexEntrySendAck ::= SEQUENCE {
sequenceNumber SequenceNumber,
multiplexTableEntryNumber SET SIZE (1..15) OF MultiplexTableEntryNumber,
...
}
MultiplexEntrySendReject ::= SEQUENCE {
sequenceNumber SequenceNumber,
rejectionDescriptions1
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,
rejectionDescriptions2
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,
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,
secondary2 SEQUENCE OF RedundancyEncodingDTModeElement,
...
}
RedundancyEncodingDTModeElement ::= SEQUENCE {
type
CHOICE {nonStandard NonStandardParameter,
videoMode VideoMode,
audioMode AudioMode,
dataMode DataMode,
encryptionMode EncryptionMode,
h235Mode H235Mode,
...},
...
}
MultiplePayloadStreamMode ::= SEQUENCE {
mpsmElements SEQUENCE OF MultiplePayloadStreamElementMode,
...
}
MultiplePayloadStreamElementMode ::= SEQUENCE {type ModeElementType,
...
}
FECMode ::= CHOICE {
rfc2733Mode
SEQUENCE {mode CHOICE {redundancyEncoding NULL,
separateStream SeparateStream,
...},
...},
...
}
H223ModeParameters ::= SEQUENCE {
adaptationLayerType
CHOICE {nonStandard NonStandardParameter,
al1Framed NULL,
al1NotFramed NULL,
al2WithoutSequenceNumbers NULL,
al2WithSequenceNumbers NULL,
al3 Al3,
...,
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 400bit/s
vbvBufferSize INTEGER(0..262143) OPTIONAL, -- units 16384bits
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/sec
...
}
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 400bit/s
vbvBufferSize INTEGER(0..262143) OPTIONAL, -- units 16384bits
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/sec
...
}
-- ===================================================================================
-- 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 G723AnnexCAudioMode,
...
}
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 Nlpid,
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-1 (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 RemoveConnection,
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 RemoveConnection,
maximumHeaderInterval
SEQUENCE {currentInterval INTEGER(0..65535), -- Max Header Interval, milliseconds--
...},
...
}
RemoveConnection ::= SEQUENCE {connectionIdentifier ConnectionIdentifier,
...}
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.MULTILINK
sequenceNumber INTEGER(0..4294967295), -- from H.MULTILINK
...
}
-- ===================================================================================
-- 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 Scope,
restriction Restriction,
...
}
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,
...}
}
-- ===================================================================================
-- 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 RepeatCount,
...},
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
}
RepeatCount ::= CHOICE {doOneProgression NULL,
doContinuousProgressions NULL,
doOneIndependentProgression NULL,
doContinuousIndependentProgressions NULL,
...}
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
}
TerminalYouAreSeeingInSubPictureNumber ::= SEQUENCE {
terminalNumber TerminalNumber,
subPictureNumber INTEGER(0..255),
...
}
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 Scope,
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,
-- indicates unsecured basic string
basicString NULL,
-- indicates unsecured iA5 string
iA5String NULL,
-- indicates unsecured general string
generalString NULL,
...,
-- indicates encrypted Basic string
encryptedBasicString NULL,
-- indicates encrypted IA5 string
encryptedIA5String NULL,
-- indicates encrypted general string
encryptedGeneralString NULL},
signal
SEQUENCE {signalType
IA5String(SIZE (1))(FROM ("0123456789#*ABCD!")),
-- holds dummy "!" if encryptedSignalType is being used
duration INTEGER(1..65535) OPTIONAL, -- milliseconds--
rtp Rtp OPTIONAL,
...,
rtpPayloadIndication NULL OPTIONAL,
-- any "runtime" parameters
paramS Params OPTIONAL,
-- encrypted signalType
encryptedSignalType OCTET STRING(SIZE (1)) 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 EncryptedAlphanumeric OPTIONAL},
encryptedAlphanumeric EncryptedAlphanumeric
}
EncryptedAlphanumeric ::= SEQUENCE {algorithmOID OBJECT IDENTIFIER,
paramS Params OPTIONAL, -- any "runtime" parameters--
encrypted OCTET STRING, -- general string encrypted--
...}
Rtp ::= SEQUENCE {timestamp INTEGER(0..4294967295) OPTIONAL,
expirationTime INTEGER(0..4294967295) OPTIONAL,
logicalChannelNumber LogicalChannelNumber,
...}
-- ===================================================================================
-- Indication Message : Flow Control
-- ===================================================================================
FlowControlIndication ::= SEQUENCE {
scope Scope,
restriction Restriction,
...
}
-- ===================================================================================
-- 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