@remotion/renderer
Version:
Render Remotion videos using Node.js or Bun
38 lines (37 loc) • 1 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.getPerf = exports.stopPerfMeasure = exports.startPerfMeasure = void 0;
const perf = {
capture: [],
'extract-frame': [],
piping: [],
};
const map = {};
const startPerfMeasure = (marker) => {
const id = Math.random();
map[id] = {
id,
marker,
start: Date.now(),
};
return id;
};
exports.startPerfMeasure = startPerfMeasure;
const stopPerfMeasure = (id) => {
const now = Date.now();
const diff = now - map[id].start;
perf[map[id].marker].push(diff);
delete map[id];
};
exports.stopPerfMeasure = stopPerfMeasure;
const getPerf = () => {
return [
'Render performance:',
...Object.keys(perf)
.filter((p) => perf[p].length)
.map((p) => {
return ` ${p} => ${Math.round(perf[p].reduce((a, b) => a + b, 0) / perf[p].length)}ms (n = ${perf[p].length})`;
}),
];
};
exports.getPerf = getPerf;