Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Video doesn't play, None of the chunks increased buffer #1473

Open
1 task done
SijmenHuizenga opened this issue Jan 15, 2024 · 1 comment
Open
1 task done

Video doesn't play, None of the chunks increased buffer #1473

SijmenHuizenga opened this issue Jan 15, 2024 · 1 comment

Comments

@SijmenHuizenga
Copy link

Description

A playlist, with .ts chunks recorded by mediamtx is not playable.

This is the playlist that doesn't work: https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8

The ui shows: Playback cannot continue. No available working or supported playlists.

Tested with:

I've tried to find the cause for the last two days, without any result. I've read the iso specs on video .ts packets, looked the code of mux.js and video.js, added debug statements everywhere, compared it to the encoding code of mediamtx. Used tsanalyze on these broken chunks and compared it to working chunks. But I can't find it 😢

Results

Expected

I would expect it to play like any video. Or, if the video segments are corrupt (i doubt it since hls.js works fine) then a more descriptive error message.

Error output

Logs of `video.js` ``` VIDEOJS: DEBUG: VHS: PlaybackWatcher > dispose video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > READY -> DISPOSED video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[audio] > INIT -> DISPOSED video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[vtt] > READY -> DISPOSED video.core.js:202:47 VIDEOJS: WARN: videojs.mergeOptions is deprecated and will be removed in 9.0; please use videojs.obj.merge instead. video.core.js:202:47 videojs-http-source-selector initialized! videojs-http-source-selector.js:209:13 player.techName_:Html5 videojs-http-source-selector.js:210:13 VIDEOJS: DEBUG: VHS: PlaybackWatcher > initialize video.core.js:202:47 VIDEOJS: DEBUG: VHS: PlaylistLoader > m3u8-parser info for https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8: defaulting media sequence to zero video.core.js:202:47 VIDEOJS: DEBUG: VHS: PlaylistLoader > m3u8-parser info for https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8: defaulting discontinuity sequence to zero video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > playlist update [null => 0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SyncController > MediaSequence sync for main segment loader. Received media sequence: 0. base time is 0 Current map: undefined video.core.js:202:47 VIDEOJS: DEBUG: VHS: SyncController > syncPoint for [segmentIndex: 0] chosen with strategy [VOD]: [time:0, segmentIndex:0] video.core.js:202:47 VIDEOJS: DEBUG: VHS: pc > seekable updated [0 => 27.979000000000003] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SourceUpdater > Setting mediaSource duration to 27.979000000000003 video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > playlist update [0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8 => 0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SyncController > MediaSequence sync for main segment loader. Received media sequence: 0. base time is 0 Current map: Map(4) { 0 → {…}, 1 → {…}, 2 → {…}, 3 → {…} } video.core.js:202:47 VIDEOJS: DEBUG: VHS: SyncController > syncPoint for [segmentIndex: 0] chosen with strategy [VOD]: [time:0, segmentIndex:0] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > live window shift [0] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > INIT -> READY video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > skipping remove because no source updater or starting media info video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > choose next request. Playlist switched and we have a sync point. Media Index: 0 video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > choose next request. Force timestamp offset after loader resync video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > READY -> WAITING video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > Requesting segment [0/3] segment start/end [undefined => undefined] startOfSegment [0] duration [7.989] timeline [0] selected by [getMediaInfoForTime (currentTime 0)] playlist [0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > trackinfo update Object { hasAudio: false, hasVideo: true, isMuxed: false } video.core.js:202:47 VIDEOJS: DEBUG: VHS: SourceUpdater > Adding videoBuffer with codec avc1.4d400d to mediaSource video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > WAITING -> APPENDING video.core.js:202:47 VIDEOJS: DEBUG: VHS: PlaybackWatcher > found #1 main appends that did not increase buffer (possible stalled download) Object { playlistId: "0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8", buffered: [] } video.core.js:202:47 VIDEOJS: DEBUG: VHS: SyncController > time mapping for timeline 0: [time: 0] [mapping: 0] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > APPENDING -> READY video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > Appended segment [0/3] segment start/end [0 => NaN] startOfSegment [0] duration [7.989] timeline [0] selected by [getMediaInfoForTime (currentTime 0)] playlist [0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SyncController > syncPoint for [segmentIndex: 0] chosen with strategy [VOD]: [time:0, segmentIndex:0] video.core.js:202:47 VIDEOJS: DEBUG: VHS: pc > seekable updated [0 => NaN] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > READY -> WAITING video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > Requesting segment [1/3] segment start/end [undefined => undefined] startOfSegment [0] duration [6.003] timeline [0] selected by [mediaIndex/partIndex increment] playlist [0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > WAITING -> APPENDING video.core.js:202:47 VIDEOJS: DEBUG: VHS: PlaybackWatcher > found #2 main appends that did not increase buffer (possible stalled download) Object { playlistId: "0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8", buffered: [] } video.core.js:202:47 VIDEOJS: DEBUG: VHS: SyncController > time mapping for timeline 0: [time: 0] [mapping: 0] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > APPENDING -> READY video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > Appended segment [1/3] segment start/end [0 => NaN] startOfSegment [0] duration [6.003] timeline [0] selected by [mediaIndex/partIndex increment] playlist [0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SyncController > syncPoint for [segmentIndex: 0] chosen with strategy [VOD]: [time:0, segmentIndex:0] video.core.js:202:47 VIDEOJS: DEBUG: VHS: pc > seekable updated [0 => NaN] video.core.js:202:47 VIDEOJS: DEBUG: VHS: PlaylistSelector > choosing {"id":"0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8","bandwidth":1.7976931348623157e+308,"codecs":""} using enabledPlaylistReps with options Object { bandwidth: 73803361, width: 640, height: 264, limitRenditionByPlayerDimensions: true } video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > READY -> WAITING video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > Requesting segment [2/3] segment start/end [undefined => undefined] startOfSegment [0] duration [5.992] timeline [0] selected by [mediaIndex/partIndex increment] playlist [0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > WAITING -> APPENDING video.core.js:202:47 VIDEOJS: DEBUG: VHS: PlaybackWatcher > found #3 main appends that did not increase buffer (possible stalled download) Object { playlistId: "0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8", buffered: [] } video.core.js:202:47 VIDEOJS: DEBUG: VHS: SyncController > time mapping for timeline 0: [time: 0] [mapping: 0] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > APPENDING -> READY video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > Appended segment [2/3] segment start/end [0 => NaN] startOfSegment [0] duration [5.992] timeline [0] selected by [mediaIndex/partIndex increment] playlist [0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SyncController > syncPoint for [segmentIndex: 0] chosen with strategy [VOD]: [time:0, segmentIndex:0] video.core.js:202:47 VIDEOJS: DEBUG: VHS: pc > seekable updated [0 => NaN] video.core.js:202:47 VIDEOJS: DEBUG: VHS: PlaylistSelector > choosing {"id":"0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8","bandwidth":1.7976931348623157e+308,"codecs":""} using enabledPlaylistReps with options Object { bandwidth: 65142179, width: 640, height: 264, limitRenditionByPlayerDimensions: true } video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > READY -> WAITING video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > Requesting segment [3/3] segment start/end [undefined => undefined] startOfSegment [0] duration [7.995] timeline [0] selected by [mediaIndex/partIndex increment] playlist [0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > received endedtimeline callback video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > WAITING -> APPENDING video.core.js:202:47 VIDEOJS: DEBUG: VHS: PlaybackWatcher > found #4 main appends that did not increase buffer (possible stalled download) Object { playlistId: "0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8", buffered: [] } video.core.js:202:47 VIDEOJS: DEBUG: VHS: SyncController > time mapping for timeline 0: [time: 0] [mapping: 0] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > APPENDING -> READY video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > Appended segment [3/3] segment start/end [0 => NaN] startOfSegment [0] duration [7.995] timeline [0] selected by [mediaIndex/partIndex increment] playlist [0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SyncController > syncPoint for [segmentIndex: 0] chosen with strategy [VOD]: [time:0, segmentIndex:0] video.core.js:202:47 VIDEOJS: DEBUG: VHS: pc > seekable updated [0 => NaN] video.core.js:202:47 VIDEOJS: DEBUG: VHS: PlaylistSelector > choosing {"id":"0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8","bandwidth":1.7976931348623157e+308,"codecs":""} using enabledPlaylistReps with options Object { bandwidth: 72435894, width: 640, height: 264, limitRenditionByPlayerDimensions: true } video.core.js:202:47 VIDEOJS: DEBUG: VHS: pc > main segment loader ended video.core.js:202:47 VIDEOJS: DEBUG: VHS: SourceUpdater > Calling mediaSource endOfStream() video.core.js:202:47 MouseEvent.mozPressure is deprecated. Use PointerEvent.pressure instead. video.core.js:2022:12 MouseEvent.mozInputSource is deprecated. Use PointerEvent.pointerType instead. video.core.js:2022:12 VIDEOJS: DEBUG: VHS: PlaybackWatcher > dispose video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > READY -> DISPOSED video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[audio] > INIT -> DISPOSED video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[vtt] > INIT -> DISPOSED video.core.js:202:47 VIDEOJS: WARN: videojs.mergeOptions is deprecated and will be removed in 9.0; please use videojs.obj.merge instead. video.core.js:202:47 videojs-http-source-selector initialized! videojs-http-source-selector.js:209:13 player.techName_:Html5 videojs-http-source-selector.js:210:13 VIDEOJS: DEBUG: VHS: PlaybackWatcher > initialize video.core.js:202:47 VIDEOJS: DEBUG: VHS: PlaylistLoader > m3u8-parser info for https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8: defaulting media sequence to zero video.core.js:202:47 VIDEOJS: DEBUG: VHS: PlaylistLoader > m3u8-parser info for https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8: defaulting discontinuity sequence to zero video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > playlist update [null => 0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SyncController > MediaSequence sync for main segment loader. Received media sequence: 0. base time is 0 Current map: undefined video.core.js:202:47 VIDEOJS: DEBUG: VHS: SyncController > syncPoint for [segmentIndex: 0] chosen with strategy [VOD]: [time:0, segmentIndex:0] video.core.js:202:47 VIDEOJS: DEBUG: VHS: pc > seekable updated [0 => 27.979000000000003] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SourceUpdater > Setting mediaSource duration to 27.979000000000003 video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > playlist update [0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8 => 0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SyncController > MediaSequence sync for main segment loader. Received media sequence: 0. base time is 0 Current map: Map(4) { 0 → {…}, 1 → {…}, 2 → {…}, 3 → {…} } video.core.js:202:47 VIDEOJS: DEBUG: VHS: SyncController > syncPoint for [segmentIndex: 0] chosen with strategy [VOD]: [time:0, segmentIndex:0] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > live window shift [0] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > INIT -> READY video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > skipping remove because no source updater or starting media info video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > choose next request. Playlist switched and we have a sync point. Media Index: 0 video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > choose next request. Force timestamp offset after loader resync video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > READY -> WAITING video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > Requesting segment [0/3] segment start/end [undefined => undefined] startOfSegment [0] duration [7.989] timeline [0] selected by [getMediaInfoForTime (currentTime 0)] playlist [0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > trackinfo update Object { hasAudio: false, hasVideo: true, isMuxed: false } video.core.js:202:47 VIDEOJS: DEBUG: VHS: SourceUpdater > Adding videoBuffer with codec avc1.4d400d to mediaSource video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > WAITING -> APPENDING video.core.js:202:47 VIDEOJS: DEBUG: VHS: PlaybackWatcher > found #1 main appends that did not increase buffer (possible stalled download) Object { playlistId: "0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8", buffered: [] } video.core.js:202:47 VIDEOJS: DEBUG: VHS: SyncController > time mapping for timeline 0: [time: 0] [mapping: 0] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > APPENDING -> READY video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > Appended segment [0/3] segment start/end [0 => NaN] startOfSegment [0] duration [7.989] timeline [0] selected by [getMediaInfoForTime (currentTime 0)] playlist [0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SyncController > syncPoint for [segmentIndex: 0] chosen with strategy [VOD]: [time:0, segmentIndex:0] video.core.js:202:47 VIDEOJS: DEBUG: VHS: pc > seekable updated [0 => NaN] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > READY -> WAITING video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > Requesting segment [1/3] segment start/end [undefined => undefined] startOfSegment [0] duration [6.003] timeline [0] selected by [mediaIndex/partIndex increment] playlist [0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > WAITING -> APPENDING video.core.js:202:47 VIDEOJS: DEBUG: VHS: PlaybackWatcher > found #2 main appends that did not increase buffer (possible stalled download) Object { playlistId: "0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8", buffered: [] } video.core.js:202:47 VIDEOJS: DEBUG: VHS: SyncController > time mapping for timeline 0: [time: 0] [mapping: 0] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > APPENDING -> READY video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > Appended segment [1/3] segment start/end [0 => NaN] startOfSegment [0] duration [6.003] timeline [0] selected by [mediaIndex/partIndex increment] playlist [0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SyncController > syncPoint for [segmentIndex: 0] chosen with strategy [VOD]: [time:0, segmentIndex:0] video.core.js:202:47 VIDEOJS: DEBUG: VHS: pc > seekable updated [0 => NaN] video.core.js:202:47 VIDEOJS: DEBUG: VHS: PlaylistSelector > choosing {"id":"0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8","bandwidth":1.7976931348623157e+308,"codecs":""} using enabledPlaylistReps with options Object { bandwidth: 75157026, width: 640, height: 264, limitRenditionByPlayerDimensions: true } video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > READY -> WAITING video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > Requesting segment [2/3] segment start/end [undefined => undefined] startOfSegment [0] duration [5.992] timeline [0] selected by [mediaIndex/partIndex increment] playlist [0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > WAITING -> APPENDING video.core.js:202:47 VIDEOJS: DEBUG: VHS: PlaybackWatcher > found #3 main appends that did not increase buffer (possible stalled download) Object { playlistId: "0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8", buffered: [] } video.core.js:202:47 VIDEOJS: DEBUG: VHS: SyncController > time mapping for timeline 0: [time: 0] [mapping: 0] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > APPENDING -> READY video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > Appended segment [2/3] segment start/end [0 => NaN] startOfSegment [0] duration [5.992] timeline [0] selected by [mediaIndex/partIndex increment] playlist [0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SyncController > syncPoint for [segmentIndex: 0] chosen with strategy [VOD]: [time:0, segmentIndex:0] video.core.js:202:47 VIDEOJS: DEBUG: VHS: pc > seekable updated [0 => NaN] video.core.js:202:47 VIDEOJS: DEBUG: VHS: PlaylistSelector > choosing {"id":"0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8","bandwidth":1.7976931348623157e+308,"codecs":""} using enabledPlaylistReps with options Object { bandwidth: 68430535, width: 640, height: 264, limitRenditionByPlayerDimensions: true } video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > READY -> WAITING video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > Requesting segment [3/3] segment start/end [undefined => undefined] startOfSegment [0] duration [7.995] timeline [0] selected by [mediaIndex/partIndex increment] playlist [0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > received endedtimeline callback video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > WAITING -> APPENDING video.core.js:202:47 VIDEOJS: DEBUG: VHS: PlaybackWatcher > found #4 main appends that did not increase buffer (possible stalled download) Object { playlistId: "0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8", buffered: [] } video.core.js:202:47 VIDEOJS: DEBUG: VHS: SyncController > time mapping for timeline 0: [time: 0] [mapping: 0] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > APPENDING -> READY video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > Appended segment [3/3] segment start/end [0 => NaN] startOfSegment [0] duration [7.995] timeline [0] selected by [mediaIndex/partIndex increment] playlist [0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SyncController > syncPoint for [segmentIndex: 0] chosen with strategy [VOD]: [time:0, segmentIndex:0] video.core.js:202:47 VIDEOJS: DEBUG: VHS: pc > seekable updated [0 => NaN] video.core.js:202:47 VIDEOJS: DEBUG: VHS: PlaylistSelector > choosing {"id":"0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8","bandwidth":1.7976931348623157e+308,"codecs":""} using enabledPlaylistReps with options Object { bandwidth: 65876956, width: 640, height: 264, limitRenditionByPlayerDimensions: true } video.core.js:202:47 VIDEOJS: DEBUG: VHS: pc > main segment loader ended video.core.js:202:47 VIDEOJS: DEBUG: VHS: SourceUpdater > Calling mediaSource endOfStream() video.core.js:202:47 VIDEOJS: DEBUG: VHS: PlaybackWatcher > dispose video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > READY -> DISPOSED video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[audio] > INIT -> DISPOSED video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[vtt] > INIT -> DISPOSED video.core.js:202:47 VIDEOJS: WARN: videojs.mergeOptions is deprecated and will be removed in 9.0; please use videojs.obj.merge instead. video.core.js:202:47 videojs-http-source-selector initialized! videojs-http-source-selector.js:209:13 player.techName_:Html5 videojs-http-source-selector.js:210:13 VIDEOJS: DEBUG: VHS: PlaybackWatcher > initialize video.core.js:202:47 VIDEOJS: DEBUG: VHS: PlaylistLoader > m3u8-parser info for https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8: defaulting media sequence to zero video.core.js:202:47 VIDEOJS: DEBUG: VHS: PlaylistLoader > m3u8-parser info for https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8: defaulting discontinuity sequence to zero video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > playlist update [null => 0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SyncController > MediaSequence sync for main segment loader. Received media sequence: 0. base time is 0 Current map: undefined video.core.js:202:47 VIDEOJS: DEBUG: VHS: SyncController > syncPoint for [segmentIndex: 0] chosen with strategy [VOD]: [time:0, segmentIndex:0] video.core.js:202:47 VIDEOJS: DEBUG: VHS: pc > seekable updated [0 => 27.979000000000003] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SourceUpdater > Setting mediaSource duration to 27.979000000000003 video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > playlist update [0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8 => 0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SyncController > MediaSequence sync for main segment loader. Received media sequence: 0. base time is 0 Current map: Map(4) { 0 → {…}, 1 → {…}, 2 → {…}, 3 → {…} } video.core.js:202:47 VIDEOJS: DEBUG: VHS: SyncController > syncPoint for [segmentIndex: 0] chosen with strategy [VOD]: [time:0, segmentIndex:0] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > live window shift [0] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > INIT -> READY video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > skipping remove because no source updater or starting media info video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > choose next request. Playlist switched and we have a sync point. Media Index: 0 video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > choose next request. Force timestamp offset after loader resync video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > READY -> WAITING video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > Requesting segment [0/3] segment start/end [undefined => undefined] startOfSegment [0] duration [7.989] timeline [0] selected by [getMediaInfoForTime (currentTime 0)] playlist [0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > trackinfo update Object { hasAudio: false, hasVideo: true, isMuxed: false } video.core.js:202:47 VIDEOJS: DEBUG: VHS: SourceUpdater > Adding videoBuffer with codec avc1.4d400d to mediaSource video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > WAITING -> APPENDING video.core.js:202:47 VIDEOJS: DEBUG: VHS: PlaybackWatcher > found #1 main appends that did not increase buffer (possible stalled download) Object { playlistId: "0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8", buffered: [] } video.core.js:202:47 VIDEOJS: DEBUG: VHS: SyncController > time mapping for timeline 0: [time: 0] [mapping: 0] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > APPENDING -> READY video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > Appended segment [0/3] segment start/end [0 => NaN] startOfSegment [0] duration [7.989] timeline [0] selected by [getMediaInfoForTime (currentTime 0)] playlist [0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SyncController > syncPoint for [segmentIndex: 0] chosen with strategy [VOD]: [time:0, segmentIndex:0] video.core.js:202:47 VIDEOJS: DEBUG: VHS: pc > seekable updated [0 => NaN] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > READY -> WAITING video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > Requesting segment [1/3] segment start/end [undefined => undefined] startOfSegment [0] duration [6.003] timeline [0] selected by [mediaIndex/partIndex increment] playlist [0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > WAITING -> APPENDING video.core.js:202:47 VIDEOJS: DEBUG: VHS: PlaybackWatcher > found #2 main appends that did not increase buffer (possible stalled download) Object { playlistId: "0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8", buffered: [] } video.core.js:202:47 VIDEOJS: DEBUG: VHS: SyncController > time mapping for timeline 0: [time: 0] [mapping: 0] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > APPENDING -> READY video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > Appended segment [1/3] segment start/end [0 => NaN] startOfSegment [0] duration [6.003] timeline [0] selected by [mediaIndex/partIndex increment] playlist [0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SyncController > syncPoint for [segmentIndex: 0] chosen with strategy [VOD]: [time:0, segmentIndex:0] video.core.js:202:47 VIDEOJS: DEBUG: VHS: pc > seekable updated [0 => NaN] video.core.js:202:47 VIDEOJS: DEBUG: VHS: PlaylistSelector > choosing {"id":"0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8","bandwidth":1.7976931348623157e+308,"codecs":""} using enabledPlaylistReps with options Object { bandwidth: 67264646, width: 640, height: 264, limitRenditionByPlayerDimensions: true } video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > READY -> WAITING video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > Requesting segment [2/3] segment start/end [undefined => undefined] startOfSegment [0] duration [5.992] timeline [0] selected by [mediaIndex/partIndex increment] playlist [0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > WAITING -> APPENDING video.core.js:202:47 VIDEOJS: DEBUG: VHS: PlaybackWatcher > found #3 main appends that did not increase buffer (possible stalled download) Object { playlistId: "0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8", buffered: [] } video.core.js:202:47 VIDEOJS: DEBUG: VHS: SyncController > time mapping for timeline 0: [time: 0] [mapping: 0] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > APPENDING -> READY video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > Appended segment [2/3] segment start/end [0 => NaN] startOfSegment [0] duration [5.992] timeline [0] selected by [mediaIndex/partIndex increment] playlist [0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SyncController > syncPoint for [segmentIndex: 0] chosen with strategy [VOD]: [time:0, segmentIndex:0] video.core.js:202:47 VIDEOJS: DEBUG: VHS: pc > seekable updated [0 => NaN] video.core.js:202:47 VIDEOJS: DEBUG: VHS: PlaylistSelector > choosing {"id":"0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8","bandwidth":1.7976931348623157e+308,"codecs":""} using enabledPlaylistReps with options Object { bandwidth: 69351207, width: 640, height: 264, limitRenditionByPlayerDimensions: true } video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > READY -> WAITING video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > Requesting segment [3/3] segment start/end [undefined => undefined] startOfSegment [0] duration [7.995] timeline [0] selected by [mediaIndex/partIndex increment] playlist [0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > received endedtimeline callback video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > WAITING -> APPENDING video.core.js:202:47 VIDEOJS: DEBUG: VHS: PlaybackWatcher > found #4 main appends that did not increase buffer (possible stalled download) Object { playlistId: "0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8", buffered: [] } video.core.js:202:47 VIDEOJS: DEBUG: VHS: SyncController > time mapping for timeline 0: [time: 0] [mapping: 0] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > APPENDING -> READY video.core.js:202:47 VIDEOJS: DEBUG: VHS: SegmentLoader[main] > Appended segment [3/3] segment start/end [0 => NaN] startOfSegment [0] duration [7.995] timeline [0] selected by [mediaIndex/partIndex increment] playlist [0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8] video.core.js:202:47 VIDEOJS: DEBUG: VHS: SyncController > syncPoint for [segmentIndex: 0] chosen with strategy [VOD]: [time:0, segmentIndex:0] video.core.js:202:47 VIDEOJS: DEBUG: VHS: pc > seekable updated [0 => NaN] video.core.js:202:47 VIDEOJS: DEBUG: VHS: PlaylistSelector > choosing {"id":"0-https://videojs-repro.s3.eu-central-1.amazonaws.com/mediamtx-not-playable-videojs.m3u8","bandwidth":1.7976931348623157e+308,"codecs":""} using enabledPlaylistReps with options Object { bandwidth: 64898303, width: 640, height: 264, limitRenditionByPlayerDimensions: true } video.core.js:202:47 VIDEOJS: DEBUG: VHS: pc > main segment loader ended video.core.js:202:47 VIDEOJS: DEBUG: VHS: SourceUpdater > Calling mediaSource endOfStream() video.core.js:202:47 ```

videojs-http-streaming version

what version of videojs-http-streaming does this occur with?
videojs-http-streaming x.y.z

videojs version

video.js 3.9.1

Browsers

Tested on

  • Chrome
  • Firefox

Platforms

Tested on Linux

Other Plugins

Tested without plugins.

Copy link

welcome bot commented Jan 15, 2024

👋 Thanks for opening your first issue here! 👋

If you're reporting a 🐞 bug, please make sure you include steps to reproduce it. We get a lot of issues on this repo, so please be patient and we will get back to you as soon as we can.
To help make it easier for us to investigate your issue, please follow the contributing guidelines.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant