UNPKG

organism-react-video

Version:
31 lines 971 B
// @ts-check import callfunc from "call-func"; var defaultSourceType = 'video/mp4; codecs="avc1.42E01E,mp4a.40.2"'; var getMediaSource = function getMediaSource(_ref) { var { url, onUpdate, sourceType = defaultSourceType } = _ref; var mediaSource = new MediaSource(); mediaSource.addEventListener("sourceopen", function () { var sourceBuffer = mediaSource.addSourceBuffer(sourceType); sourceBuffer.addEventListener("updateend", function () { if (!sourceBuffer.updating && mediaSource.readyState === "open") { mediaSource.endOfStream(); } callfunc(onUpdate); }); fetch(url).then(function (response) { return response.arrayBuffer(); }).then(function (data) { // Append the data into the new sourceBuffer. sourceBuffer.appendBuffer(data); }).catch(function () {}); }, { once: true }); var src = URL.createObjectURL(mediaSource); return src; }; export default getMediaSource;