code: public void setCode(String timecode) throws Timecode.TimecodeException {
      clear();
      setHours(getToken(timecode, 0));
      setMinutes(getToken(timecode, 1));
      setSeconds(getToken(timecode, 2));
      setFrames(getToken(timecode, 3));
      if (useSamples()) {
        try {
          setSamples(getToken(timecode, 4));
          // If we got here, we're parsing a AES31-formatted string... Set our
          // frames per sec to 30 instead of 75
          setFramesPerSecond(30);
        } catch (Timecode.TimecodeException ignored) {
        } // If this fails, it just means the code didn't have samples appended
      }
      // fix badly formed values : 00:00:60:00 will become 00:01:00:00, etc.
      normalize();
    }
docs: Sets the object based on a string in the form HH:MM:SS:FF