docs: protected boolean parseLine(String line) {
      line = checkNotNull(line).trim();
      if (line.isEmpty()) {
        return false; // Skip empty lines
      }
  
      final String[] args = line.split("=", 2);
      if (args.length != 2) {
        // invalid argument, so skip
        return false;
      }
  
      final String key = checkNotNull(args[0]);
      final String value = checkNotNull(args[1]);
  
      switch (key) {
        case "frame":
          frame = Long.parseLong(value);
          return false;
  
        case "fps":
          fps = Fraction.getFraction(value);
          return false;
  
        case "bitrate":
          if (value.equals("N/A")) {
            bitrate = -1;
          } else {
            bitrate = FFmpegUtils.parseBitrate(value);
          }
          return false;
  
        case "total_size":
          if (value.equals("N/A")) {
            total_size = -1;
          } else {
            total_size = Long.parseLong(value);
          }
          return false;
  
        case "out_time_ms":
          // This is a duplicate of the "out_time" field, but expressed as a int instead of string.
          // Note this value is in microseconds, not milliseconds, and is based on AV_TIME_BASE which
          // could change.
          // out_time_ns = Long.parseLong(value) * 1000;
          return false;
  
        case "out_time":
          out_time_ns = fromTimecode(value);
          return false;
  
        case "dup_frames":
          dup_frames = Long.parseLong(value);
          return false;
  
        case "drop_frames":
          drop_frames = Long.parseLong(value);
          return false;
  
        case "speed":
          if (value.equals("N/A")) {
            speed = -1;
          } else {
            speed = Float.parseFloat(value.replace("x", ""));
          }
          return false;
  
        case "progress":
          // TODO After "end" stream is closed
          status = Status.of(value);
          return true; // The status field is always last in the record
  
        default:
          if (key.startsWith("stream_")) {
            // TODO handle stream_0_0_q=0.0:
            // stream_%d_%d_q= file_index, index, quality
            // stream_%d_%d_psnr_%c=%2.2f, file_index, index, type{Y, U, V}, quality // Enable with
            // AV_CODEC_FLAG_PSNR
            // stream_%d_%d_psnr_all
          } else {
            LOG.warn("skipping unhandled key: {} = {}", key, value);
          }
  
          return false; // Either way, not supported
      }
    }