UNPKG

playable

Version:

Video player based on HTML5Video

53 lines 1.94 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getNearestBufferSegmentInfo = exports.geOverallBufferLength = exports.getOverallPlayedPercent = exports.getOverallBufferedPercent = exports.getTimePercent = void 0; function getTimePercent(time, durationTime) { if (!durationTime) { return 0; } return parseFloat(((time / durationTime) * 100).toFixed(2)); } exports.getTimePercent = getTimePercent; function getOverallBufferedPercent(buffered, currentTime, duration) { if (currentTime === void 0) { currentTime = 0; } if (duration === void 0) { duration = 0; } if (!buffered || !buffered.length || !duration) { return 0; } var info = getNearestBufferSegmentInfo(buffered, currentTime); return getTimePercent(info.end, duration); } exports.getOverallBufferedPercent = getOverallBufferedPercent; function getOverallPlayedPercent(currentTime, duration) { if (currentTime === void 0) { currentTime = 0; } if (duration === void 0) { duration = 0; } return getTimePercent(currentTime, duration); } exports.getOverallPlayedPercent = getOverallPlayedPercent; function geOverallBufferLength(buffered) { var size = 0; if (!buffered || !buffered.length) { return size; } for (var i = 0; i < buffered.length; i += 1) { size += buffered.end(i) - buffered.start(i); } return size; } exports.geOverallBufferLength = geOverallBufferLength; function getNearestBufferSegmentInfo(buffered, currentTime) { var i = 0; if (!buffered || !buffered.length) { return null; } while (i < buffered.length - 1 && !(buffered.start(i) <= currentTime && currentTime <= buffered.end(i))) { i += 1; } return { start: buffered.start(i), end: buffered.end(i), }; } exports.getNearestBufferSegmentInfo = getNearestBufferSegmentInfo; //# sourceMappingURL=video-data.js.map