code: function createKeyframeBlock(keyframe) {
                  var
                      bufferStream = new ArrayBufferDataStream(1 + 2 + 1);
                  
                  if (!(keyframe.trackNumber > 0 && keyframe.trackNumber < 127)) {
                      throw "TrackNumber must be > 0 and < 127";
                  }
      
                  bufferStream.writeEBMLVarInt(keyframe.trackNumber); // Always 1 byte since we limit the range of trackNumber
                  bufferStream.writeU16BE(keyframe.timecode);
                  
                  // Flags byte
                  bufferStream.writeByte(
                      1 << 7 // Keyframe
                  );
                  
                  return {
                      "id": 0xA3, // SimpleBlock
                      "data": [
                           bufferStream.getAsDataArray(),
                           keyframe.frame
                      ]
                  };
              }
docs: Create a SimpleBlock keyframe header using these fields:
  timecode    - Time of this keyframe
  trackNumber - Track number from 1 to 126 (inclusive)
  frame       - Raw frame data payload string
  
  Returns an EBML element.