/**
* @archivo búfer.js
* búfer @módulo
* /
importar { createTimeRange } desde './time-ranges.js';
/ **
* Calcule el porcentaje de los medios que se han almacenado en el búfer.
*
* @param {TimeRange} almacenado en búfer
* El objeto `TimeRange` actual que representa rangos de tiempo almacenados en búfer
*
* @param {número} duración
* Duración total de los medios
*
* @return {número}
* Porcentaje amortiguado de la duración total en forma decimal.
* /
función de exportación bufferedPercent(buffered, duration) {
let bufferedDuration = 0;
vamos a empezar;
dejar terminar;
si (! duración) {
devolver 0;
}
if (!buffered || !buffered.length) {
almacenado en búfer = createTimeRange(0, 0);
}
para (sea i = 0; i < buffered.length; i++) {
inicio = almacenado en búfer. inicio (i);
final = almacenado en búfer. final (i);
// el final almacenado en el búfer puede ser mayor que la duración en una fracción muy pequeña
si (fin > duración) {
fin = duración;
}
bufferedDuration += final - inicio;
}
return bufferedDuration / duración;
}