UNPKG

rx-player

Version:
44 lines (43 loc) 1.67 kB
"use strict"; /** * Copyright 2015 CANAL+ Group * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ Object.defineProperty(exports, "__esModule", { value: true }); exports.default = resetMediaElement; var log_1 = require("../log"); var clear_element_src_1 = require("./clear_element_src"); /** * Dispose of ressources taken by the MediaSource: * - Clear the MediaSource' SourceBuffers * - Clear the mediaElement's src (stop the mediaElement) * - Revoke MediaSource' URL * @param {HTMLMediaElement} mediaElement * @param {string|null} mediaSourceURL */ function resetMediaElement(mediaElement, mediaSourceURL) { if (mediaSourceURL !== null && mediaElement.src === mediaSourceURL) { log_1.default.info("media", "Clearing HTMLMediaElement's src"); (0, clear_element_src_1.default)(mediaElement); } if (mediaSourceURL !== null) { try { log_1.default.debug("media", "Revoking previous URL"); URL.revokeObjectURL(mediaSourceURL); } catch (e) { log_1.default.warn("media", "Error while revoking the media source URL", e instanceof Error ? e : ""); } } }