public override void decode(MP4InputStream inStream)
        {
            configurationVersion = inStream.read();
            profile = inStream.read();
            profileCompatibility = (byte)inStream.read();
            level = inStream.read();
            //6 bits reserved, 2 bits 'length size minus one'
            lengthSize = (inStream.read() & 3) + 1;

            int len;
            //3 bits reserved, 5 bits number of sequence parameter sets
            int sequenceParameterSets = inStream.read() & 31;

            sequenceParameterSetNALUnit = new byte[sequenceParameterSets][];
            for (int i = 0; i < sequenceParameterSets; i++)
            {
                len = (int)inStream.readBytes(2);
                sequenceParameterSetNALUnit[i] = inStream.readByteArray(len);
            }

            int pictureParameterSets = inStream.read();

            pictureParameterSetNALUnit = new byte[pictureParameterSets][];
            for (int i = 0; i < pictureParameterSets; i++)
            {
                len = (int)inStream.readBytes(2);
                pictureParameterSetNALUnit[i] = inStream.readByteArray(len);
            }
        }