transform method
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;
}