async function exportCaptions()

in source/lambda/batchcomplete/batchcomplete.js [172:216]


async function exportCaptions(format, captions, language) {
  if (format === "webvtt") {
    var webvtt = "WEBVTT\n\n";

    for (var i in captions) {
      var caption = captions[i];

      if (caption.text.trim() === "") {
        continue;
      }

      webvtt +=
        caption.startTime.replace(",", ".") +
        " --> " +
        caption.endTime.replace(",", ".") +
        "\n";
      var captionText = splitSentence(caption.text, language);
      webvtt += captionText + "\n";
    }

    return webvtt;
  } else if (format === "srt") {
    var srt = "";

    var index = 1;

    for (var i in captions) {
      var caption = captions[i];

      if (caption.text.trim() === "") {
        continue;
      }

      srt += index + "\n";
      srt += caption.startTime + " --> " + caption.endTime + "\n";
      var captionText = splitSentence(caption.text, language);
      srt += captionText + "\n";
      index++;
    }

    return srt;
  } else {
    throw new Error("Invalid format requested: " + format);
  }
}