Hi, I've got the same problem.... did anyone answer yet? Thanx Louw Louw Jansen van Rensburg School for Electrical & Electronic Engineering Potchefstroom University for Christian Higher Education Potchefstroom South Africa Tel:+27 (0) 18 299 1961 Cel: 082 782 1373 Fax:+27 (0)18 299 1977 e-mail: [EMAIL PROTECTED] >>> [EMAIL PROTECTED] 02/08/01 06:57PM >>> Could someone tell me how to decode the extension additions in CHOICE using PER? Below is a buffer, could someone show me how they decoded it? Thanks, bing. ---- Abstract Syntax Notation 1 (ASN1) ---- ASN.1: forwardLogicalChannelParameters ASN.1: { ASN.1: dataType data : ASN.1: { ASN.1: application t120 : separateLANStack : NULL, ASN.1: maxBitRate 0 ASN.1: }, ASN.1: multiplexParameters h2250LogicalChannelParameters : ASN.1: { ASN.1: sessionID 0 ASN.1: } Hex: **10 18 30 01 00 00 00 80 03 00 00 00 ** break down these Hex in bits as follows: 0 Indicates that no extension addition in *forwardLogicalChannelParameters* 0 Indicates that optional *portNumber* is absent in *forwardLogicalChannelParameters* 0 Indicates that no extension addition in *DataType* 100 Indicates that *data* has been chosen in *DataType* 0 Indicates that no extension addition in *DataApplicationCapability* 0 Indicates that no extension addition in *application* 0001 Indicates that *t120* has been chosen in *application* 1 Indicates that extension addition is present in *DataProtocolCapability* 000 QUESTION: are these three bits padding bits???????????????????????????????? QUESTION: from rest Hex (30 01 00 00 00 ), how can I know *separateLANStack* has been chosen??????? QUESTION: how did *maxBitRate = 0* decode using PER? Here maxBitRate is INTEGER (0..4294967295) H245 specification: 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 }, DataType ::=CHOICE { nonStandard NonStandardParameter, nullData NULL, videoData VideoCapability, audioData AudioCapability, data DataApplicationCapability, encryptionData EncryptionMode, ..., h235Control NonStandardParameter, h235Media H235Media, multiplexedStream MultiplexedStreamParameter } 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.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 }