controlMidrow_(b2) {
    // Clear all pre-existing midrow style attributes.
    this.curBuf_.setUnderline(false);
    this.curBuf_.setItalics(false);
    this.curBuf_.setTextColor(shaka.cea.CeaUtils.DEFAULT_TXT_COLOR);

    // Mid-row attrs use a space.
    this.curBuf_.addChar(
        shaka.cea.Cea608Memory.CharSet.BASIC_NORTH_AMERICAN, ' '.charCodeAt(0));

    let textColor = shaka.cea.CeaUtils.DEFAULT_TXT_COLOR;
    let italics = false;

    // Midrow codes set underline on last (LSB) bit.
    const underline = (b2 & 0x01) === 0x01;

    // b2 has the form |P|0|1|0|STYLE|U|
    textColor = shaka.cea.Cea608DataChannel.TEXT_COLORS[(b2 & 0xe) >> 1];
    if (textColor === 'white_italics') {
      textColor = 'white';
      italics = true;
    }

    this.curBuf_.setUnderline(underline);
    this.curBuf_.setItalics(italics);
    this.curBuf_.setTextColor(textColor);
  }
Mid-Row control code handler.
@param {number} b2 Byte #2.
@private