sS transformTimestampAccordingToCut(S ts, L segments) { try { double time = ffmpeg_parseTimestamp(ts); int idx = indexOfPred(segments, r -> r.end > time); if (idx >= 0 && idx < l(segments)) { double len = 0; for i to idx: len += l(segments.get(i)); DoubleRange seg = segments.get(idx); double ofs = time-seg.start; double result = len+ofs; S formatted = formatHoursMinutesColonSeconds(result); printVars_str("transformTimestampAccordingToCut", +ts, +idx, +seg, +ofs, +result, +formatted); ret formatted; } else ret "[cut] " + ts; } catch print e { ret ts; } }