transform method

  1. @override
Future<void> transform(
  1. MediaPipeline pipeline
)
override

Implementation

@override
Future<void> transform(MediaPipeline pipeline) {
  jobs.sort((a, b) => b.priority - a.priority);
  Future<void> work = Future.value();

  int completed = 0;
  int ind = pipeline.memory["ind"];
  pipeline.memory["ind"] = ind + 1;

  for (IPipelineJob job in jobs) {
    work = work.then((_) async {
      PrecisionStopwatch psw = PrecisionStopwatch.start();
      await job.transform(pipeline);
      double ms = psw.getMilliseconds();
      completed++;
      pipeline.memory["completed"] = completed;
      print(
          "${"  " * ind}#$job in ${ms.format()} (${pipeline.memory["completed"]} of ${pipeline.memory["total"]})");
    });
  }

  pipeline.memory["ind"] = ind - 1;

  return work;
}