download
raw
1.15 kB
import type { BaseTrackSet } from '../types/buffer';
export function getMediaSource(
preferManagedMediaSource = true,
): typeof MediaSource | undefined {
if (typeof self === 'undefined') return undefined;
const mms =
(preferManagedMediaSource || !self.MediaSource) &&
((self as any).ManagedMediaSource as undefined | typeof MediaSource);
return (
mms ||
self.MediaSource ||
((self as any).WebKitMediaSource as typeof MediaSource)
);
}
export function isManagedMediaSource(source: typeof MediaSource | undefined) {
return (
typeof self !== 'undefined' && source === (self as any).ManagedMediaSource
);
}
export function isCompatibleTrackChange(
currentTracks: BaseTrackSet,
requiredTracks: BaseTrackSet,
): boolean {
const trackNames = Object.keys(currentTracks);
const requiredTrackNames = Object.keys(requiredTracks);
const trackCount = trackNames.length;
const requiredTrackCount = requiredTrackNames.length;
return (
!trackCount ||
!requiredTrackCount ||
(trackCount === requiredTrackCount &&
!trackNames.some((name) => requiredTrackNames.indexOf(name) === -1))
);
}

Xet Storage Details

Size:
1.15 kB
·
Xet hash:
d5752c64d01d24f937d32aad9c7742d9294208814b98090906fa25d4e74b9ea6

Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.