HLS.js is a JavaScript library that plays HLS in browsers with support for MSE.
150 matches across 2 categories. Click a row to expand file-level details.
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | tests/unit/types.d.ts | 1 | // Import type descriptions for global mocha functions `describe`, `it`, `beforeEach`, etc... |
| LOW | tests/unit/controller/level-helper.ts | 341 | #EXTINF:6, |
| LOW | tests/unit/controller/level-helper.ts | 361 | #EXT-X-TARGETDURATION:6 |
| LOW | tests/unit/controller/level-helper.ts | 461 | #EXT-X-SERVER-CONTROL:CAN-SKIP-UNTIL=36 |
| LOW | tests/unit/controller/level-helper.ts | 481 | #EXTINF:6, |
| LOW | tests/unit/controller/level-helper.ts | 501 | fileSequence7.ts |
| LOW | tests/unit/controller/level-helper.ts | 521 | #EXTINF:6, |
| LOW | tests/unit/controller/level-helper.ts | 701 | #EXT-X-VERSION:9 |
| LOW | tests/unit/controller/level-helper.ts | 721 | #EXTINF:6, |
| LOW | tests/unit/controller/level-helper.ts | 741 | #EXT-X-PART:DURATION=2,URI="ll.m4s?segment=fileSequence8.1.m4s" |
| LOW | tests/unit/controller/level-helper.ts | 881 | |
| LOW | tests/unit/controller/level-helper.ts | 901 | #EXT-X-DISCONTINUITY |
| LOW | tests/unit/controller/level-helper.ts | 921 | #EXT-X-PART:DURATION=1.000000,URI="720p_10_1.m4v" |
| LOW | tests/unit/controller/level-helper.ts | 941 | #EXT-X-DATERANGE:ID="nmss-daterange",START-DATE="2025-05-22T07:59:38.809Z" |
| LOW | tests/unit/controller/level-helper.ts | 961 | #EXT-X-PART:DURATION=0.500000,URI="720p_10_2.m4v" |
| LOW | tests/unit/controller/level-helper.ts | 1041 | #EXT-X-TARGETDURATION:6 |
| LOW | tests/unit/controller/level-helper.ts | 1081 | const playlistUpdate = `#EXTM3U |
| LOW | tests/unit/controller/level-helper.ts | 1181 | video_28.m4s |
| LOW | tests/unit/controller/level-helper.ts | 1241 | #EXT-X-MAP:URI="getMP4InitFragment.mp4" |
| LOW | tests/unit/controller/level-helper.ts | 1261 | const playlist2 = `#EXTM3U |
| LOW | tests/unit/controller/level-helper.ts | 1381 | video_5430.m4s |
| LOW | tests/unit/controller/level-helper.ts | 1401 | #EXTINF:2.000, |
| LOW | tests/unit/controller/level-helper.ts | 1421 | #EXTINF:1.984, |
| LOW | tests/unit/controller/level-helper.ts | 1621 | |
| LOW | tests/unit/controller/level-helper.ts | 1661 | |
| LOW | tests/unit/controller/level-helper.ts | 1701 | |
| LOW | tests/unit/controller/level-helper.ts | 1741 | #EXT-X-VERSION:6 |
| LOW | tests/unit/controller/level-helper.ts | 1761 | #EXT-X-PROGRAM-DATE-TIME:2025-08-06T16:00:20Z |
| LOW | tests/unit/controller/level-helper.ts | 1861 | 1.m4s |
| LOW | tests/unit/controller/level-helper.ts | 1941 | #EXT-X-PROGRAM-DATE-TIME:2026-04-08T18:16:40.125Z |
| LOW | tests/unit/controller/level-helper.ts | 1961 | 20260408T181704.m4v |
| LOW | tests/unit/controller/level-helper.ts | 1981 | #EXT-X-PART:DURATION=1.00000,URI="20260408T181728.4.m4v" |
| LOW | tests/unit/controller/level-helper.ts | 2001 | #EXT-X-I-FRAMES-ONLY |
| LOW | tests/unit/controller/level-helper.ts | 2021 | #EXT-X-PART:DURATION=1.00000,URI="20260408T181728.3.m4v",INDEPENDENT=YES |
| LOW | tests/unit/controller/level-helper.ts | 2081 | #EXTINF:4.0, no desc |
| LOW | tests/unit/controller/level-helper.ts | 2101 | #EXT-X-MEDIA-SEQUENCE:5 |
| LOW | tests/unit/controller/level-helper.ts | 2121 | #EXTINF:4, no desc |
| LOW | tests/unit/controller/cmcd-controller.ts | 21 | #EXT-X-PROGRAM-DATE-TIME:2024-05-02T18:03:57.020+00:00 |
| LOW | tests/unit/controller/interstitials-controller.ts | 1441 | #EXT-X-MEDIA-SEQUENCE:1 |
| LOW | tests/unit/controller/interstitials-controller.ts | 2001 | it('request asset-list with _HLS_start_offset when joining', function () { |
| LOW | tests/unit/controller/interstitials-controller.ts | 2201 | describe('#7845 Live start folloing preroll', function () { |
| LOW | tests/unit/controller/interstitials-controller.ts | 2361 | fileSequence-10.s |
| LOW | tests/unit/controller/error-controller.ts | 521 | #EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="audio-en",NAME="English",URI="audio-en.m3u8" |
| LOW | tests/unit/controller/level-controller.ts | 641 | expect(hlsUrlParameters).to.have.property('skip').to.be.undefined; |
| LOW | tests/unit/controller/level-controller.ts | 1241 | #EXT-X-MEDIA:TYPE=AUDIO,PATHWAY-ID="Bar",STABLE-RENDITION-ID="audio_ec3",GROUP-ID="EC3-bar",LANGUAGE="en-US",NAME="Engli |
| LOW | tests/unit/controller/level-controller.ts | 1301 | http://www.baz.com/tier16.m3u8 |
| LOW | tests/unit/controller/level-controller.ts | 1321 | #EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="EC3-bar",LANGUAGE="en-US",NAME="English",DEFAULT=YES,AUTOSELECT=YES,CHANNELS="6",URI=" |
| LOW | tests/unit/controller/level-controller.ts | 1361 | ### EC3 BAR ### |
| LOW | tests/unit/loader/m3u8-parser.ts | 841 | #EXT-X-BYTERANGE:96256@943196 |
| LOW | tests/unit/loader/m3u8-parser.ts | 901 | lo007ts |
| LOW | tests/unit/loader/m3u8-parser.ts | 1261 | http://dummy.url.com/hls/live/segment/segment_022916_164500865_719926.ts |
| LOW | tests/unit/loader/m3u8-parser.ts | 1701 | #EXTINF:4.00000, |
| LOW | tests/unit/loader/m3u8-parser.ts | 1901 | #EXT-X-SERVER-CONTROL:CAN-BLOCK-RELOAD=YES,CAN-SKIP-UNTIL=24,PART-HOLD-BACK=3.012 |
| LOW | tests/unit/loader/m3u8-parser.ts | 2101 | #EXTINF:6, |
| LOW | tests/unit/loader/m3u8-parser.ts | 2381 | ); |
| LOW | tests/unit/loader/m3u8-parser.ts | 2401 | #EXTINF:5.005, |
| LOW | tests/unit/loader/m3u8-parser.ts | 2421 | 3.mp4 |
| LOW | tests/unit/loader/m3u8-parser.ts | 2461 | }); |
| LOW | tests/unit/loader/m3u8-parser.ts | 2481 | 4.mp4 |
| LOW | tests/unit/loader/m3u8-parser.ts | 2741 | 'EXT-X-DEFINE duplicate Variable Name declarations: "foo"', |
| 27 more matches not shown… | |||
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | demo/metrics.js | 49 | function timeRangeCanvasonMouseDown(evt) { |
| LOW | demo/metrics.js | 71 | function timeRangeCanvasonMouseMove(evt) { |
| LOW | demo/metrics.js | 105 | function timeRangeCanvasonMouseOut(evt) { |
| LOW | demo/main.js | 1478 | function getDemoConfigPropOrDefault(propName, defaultVal) { |
| LOW | demo/main.js | 1532 | function onConfigPersistenceChanged(event) { |
| LOW | demo/canvas.js | 294 | function canvasBufferTimeRangeUpdate( |
| LOW | demo/chart/chartjs-horizontal-bar.ts | 217 | export function applyChartInstanceOverrides(chart) { |
| LOW | tests/test-streams.js | 31 | function createTestStreamWithConfig(target, config) { |
| LOW | tests/unit/events.js | 4 | function getAllCapsSnakeCaseToCamelCase(eventType) { |
| LOW | tests/unit/controller/abr-controller.ts | 395 | function getMultiChannelAudioLevels(): { |
| LOW | tests/unit/controller/base-stream-controller.ts | 103 | function levelDetailsWithEndSequenceVodOrLive( |
| LOW | tests/unit/controller/base-stream-controller.ts | 883 | function createMediaFragWithInitSegment(encrypted: boolean = false) { |
| LOW | tests/unit/controller/buffer-controller-operations.ts | 56 | function setSourceBufferBufferedRange( |
| LOW | tests/unit/controller/level-helper.ts | 2230 | function expectPlaylistParsingError(object: any, message: string) { |
| LOW | tests/unit/controller/stream-controller.ts | 842 | function attachMediaAndStubTracker( |
| LOW | tests/unit/controller/interstitials-controller.ts | 78 | function expectItemToHaveProperties( |
| LOW | tests/unit/controller/fragment-tracker.ts | 594 | function triggerFragLoadedAndFragBuffered(hls: Hls, fragment: Fragment) { |
| LOW | tests/unit/controller/error-controller.ts | 1167 | function expectFatalErrorEventToStopPlayer( |
| LOW | tests/unit/loader/m3u8-parser.ts | 3377 | function expectPlaylistParsingError(object: any, message: string) { |
| LOW | tests/functional/auto/testbench.js | 8 | function setupConsoleLogRedirection() { |
| LOW | docs/API.md | 2226 | function createHlsIframesOnlyIfNeeded() { |
| LOW | src/utils/mediacapabilities-helper.ts | 53 | export function requiresMediaCapabilitiesDecodingInfo( |
| LOW | src/utils/mediacapabilities-helper.ts | 116 | export function getMediaDecodingInfoPromise( |
| LOW | src/utils/mediacapabilities-helper.ts | 280 | function getVariantDecodingBitrate(level: Level): number { |
| LOW | src/utils/mp4-tools.ts | 561 | function parseSupplementalDoViCodec( |
| LOW | src/utils/discontinuities.ts | 18 | export function shouldAlignOnDiscontinuities( |
| LOW | src/utils/rendition-helper.ts | 216 | function logStartCodecCandidateIgnored(codeSet: string, reason: string) { |
| LOW | src/utils/rendition-helper.ts | 420 | export function findClosestLevelWithAudioGroup( |
| LOW | src/utils/level-helper.ts | 603 | export function reassignFragmentLevelIndexes(levels: Level[]) { |
| LOW | src/utils/level-helper.ts | 614 | function notEqualAfterStrippingQueries( |
| LOW | src/utils/error-helper.ts | 50 | export function getLoaderConfigWithoutReties( |
| LOW | src/utils/user-agent.ts | 41 | export function userAgentHevcSupportIsInaccurate() { |
| LOW | src/utils/imsc1-ttml-parser.ts | 233 | function parseHoursMinutesSecondsFrames(timeAttributeValue, rateInfo): number { |
| LOW | src/utils/mediakeys-helper.ts | 24 | export function keySystemFormatToKeySystemDomain( |
| LOW | src/utils/mediakeys-helper.ts | 48 | export function keySystemIdToKeySystemDomain( |
| LOW | src/utils/mediakeys-helper.ts | 63 | export function keySystemDomainToKeySystemFormat( |
| LOW | src/utils/mediakeys-helper.ts | 112 | export function getSupportedMediaKeySystemConfigurations( |
| LOW | src/utils/mediakeys-helper.ts | 141 | function createMediaKeySystemConfigurations( |
| LOW | src/utils/keysystem-util.ts | 24 | export function convertDataUriToArrayBytes( |
| LOW | src/utils/codecs.ts | 93 | export function areCodecsMediaSourceSupported( |
| LOW | src/utils/codecs.ts | 106 | function isCodecMediaSourceSupported( |
| LOW | src/utils/codecs.ts | 119 | export function videoCodecPreferenceValue( |
| LOW | src/utils/codecs.ts | 129 | export function codecsSetSelectionPreferenceValue(codecSet: string): number { |
| LOW | src/utils/codecs.ts | 152 | function getCodecCompatibleNameLower( |
| LOW | src/utils/codecs.ts | 224 | export function pickMostCompleteCodecName( |
| LOW | src/utils/encryption-methods-util.ts | 9 | export function getAesModeFromFullSegmentMethod( |
| LOW | src/utils/timescale-conversion.ts | 36 | export function toMpegTsClockFromTimescale( |
| LOW | src/controller/iframe-controller.ts | 348 | function createHlsImageIFramesOnly(Base: typeof HlsIFramesOnlyClass) { |
| LOW | src/controller/buffer-controller.ts | 2236 | function mediaErrorRecoveryMessage( |
| LOW | src/controller/eme-controller.ts | 1949 | function getRequestToKeyUsablePromise(requestEmitter: LicenseAndKeysRequest) { |
| LOW | src/controller/fragment-finders.ts | 110 | function fragmentWithinFastStartSwitch( |
| LOW | src/controller/fragment-finders.ts | 138 | export function fragmentWithinToleranceTest( |
| LOW | src/controller/error-controller.ts | 625 | export function createDoNothingErrorAction(resolved?: boolean): IErrorAction { |
| LOW | src/controller/level-controller.ts | 792 | function setTrackCodecsAndReturnSupported( |
| LOW | src/loader/m3u8-parser.ts | 884 | function findFragmentWithStartDate( |
| LOW | src/loader/m3u8-parser.ts | 1070 | function assignMultipleMediaPlaylistTagOccuranceError( |
| LOW | src/loader/m3u8-parser.ts | 1080 | function assignMustAppearBeforeSegmentsError( |
| LOW | src/loader/fragment.ts | 484 | function getOwnPropertyDescriptorFromPrototypeChain( |
| LOW | src/loader/level-key.ts | 262 | function createInitializationVector(segmentNumber: number) { |
| LOW | src/loader/fragment-loader.ts | 416 | function isMethodFullSegmentAesCbc(method) { |
| 3 more matches not shown… | |||