videojs-contrib-eme
Version:
Supports Encrypted Media Extensions for playback of encrypted content in Video.js
61 lines (48 loc) • 1.61 kB
JavaScript
;
Object.defineProperty(exports, '__esModule', {
value: true
});
var stringToUint16Array = function stringToUint16Array(string) {
// 2 bytes for each char
var buffer = new ArrayBuffer(string.length * 2);
var array = new Uint16Array(buffer);
for (var i = 0; i < string.length; i++) {
array[i] = string.charCodeAt(i);
}
return array;
};
exports.stringToUint16Array = stringToUint16Array;
var uint8ArrayToString = function uint8ArrayToString(array) {
return String.fromCharCode.apply(null, new Uint16Array(array.buffer));
};
exports.uint8ArrayToString = uint8ArrayToString;
var getHostnameFromUri = function getHostnameFromUri(uri) {
var link = document.createElement('a');
link.href = uri;
return link.hostname;
};
exports.getHostnameFromUri = getHostnameFromUri;
var arrayBuffersEqual = function arrayBuffersEqual(arrayBuffer1, arrayBuffer2) {
if (arrayBuffer1 === arrayBuffer2) {
return true;
}
if (arrayBuffer1.byteLength !== arrayBuffer2.byteLength) {
return false;
}
var dataView1 = new DataView(arrayBuffer1);
var dataView2 = new DataView(arrayBuffer2);
for (var i = 0; i < dataView1.byteLength; i++) {
if (dataView1.getUint8(i) !== dataView2.getUint8(i)) {
return false;
}
}
return true;
};
exports.arrayBuffersEqual = arrayBuffersEqual;
var arrayBufferFrom = function arrayBufferFrom(bufferOrTypedArray) {
if (bufferOrTypedArray instanceof Uint8Array || bufferOrTypedArray instanceof Uint16Array) {
return bufferOrTypedArray.buffer;
}
return bufferOrTypedArray;
};
exports.arrayBufferFrom = arrayBufferFrom;