dash.js

Open Source Media Player

Seamless and reliable DASH streaming on any browser-based device

View onGitHub
5317
1709

Sponsors

Trusted by the industry leaders

Latest updates from GitHub

Player is in waiting state and only video segments are requested##### Environment LG Smart TV * Dash.js version: 4.7.2 * OS name/version: WeBOS ##### Steps to reproduce While live playback player went to waiting state and never recovered Dash logs DashParser] Parsing complete: ( xml2json: 34.0ms, objectiron: 0.155ms, total: 0.0342s) [StreamController] Manifest updated... updating data system wide. [ManifestUpdater] Manifest has been refreshed at Fri Apr 11 2025 10:37:43 GMT+0530 (IST)[1744348063.629] [AbrController] [audio] switching from buffer occupancy to throughput ABR rule (buffer: 7.342). [StreamProcessor][video] Buffer is empty! Stalling! [PlaybackController] Native video element event: waiting [StreamProcessor][video] OnFragmentLoadingCompleted for stream id 156986248830902 and media type video - Url: video.m4f [AbrController] Stream ID: 156986248830902 [video] switch from 1 to 0/3 (buffer: 0.2) "InsufficientBufferRule: Buffer is empty" [StreamProcessor][video] OnFragmentLoadingCompleted for stream id 156986248830902 and media type video - Url: init.mp4 [StreamProcessor][video] [video] lastInitializedRepresentationInfo changed to 0 [StreamProcessor][video] OnFragmentLoadingCompleted for stream id 156986248830902 and media type video - Url: vidoe.m4f [Play Session] redirect URL present [DashParser] Parsing complete: ( xml2json: 34.0ms, objectiron: 0.160ms, total: 0.0341s) [StreamController] Manifest updated... updating data system wide. [ManifestUpdater] Manifest has been refreshed at Fri Apr 11 2025 10:37:48 GMT+0530 (IST)[1744348068.998] [StreamProcessor][video] OnFragmentLoadingCompleted for stream id 156986248830902 and media type video - Url: video.m4f [DashParser] Parsing complete: ( xml2json: 40.0ms, objectiron: 0.155ms, total: 0.0401s) [StreamController] Manifest updated... updating data system wide. [ManifestUpdater] Manifest has been refreshed at Fri Apr 11 2025 10:37:54 GMT+0530 (IST)[1744348074.357] [Play Session] redirect URL present [DashParser] Parsing complete: ( xml2json: 32.2ms, objectiron: 0.180ms, total: 0.0324s) [StreamController] Manifest updated... updating data system wide. [ManifestUpdater] Manifest has been refreshed at Fri Apr 11 2025 10:37:59 GMT+0530 (IST)[1744348079.676] [Play Session] redirect URL present [StreamProcessor][video] OnFragmentLoadingCompleted for stream id 156986248830902 and media type video - Url: video.m4f [DashParser] Parsing complete: ( xml2json: 39.2ms, objectiron: 0.230ms, total: 0.0394s) [StreamController] Manifest updated... updating data system wide. [ManifestUpdater] Manifest has been refreshed at Fri Apr 11 2025 10:38:04 GMT+0530 (IST)[1744348084.886] [Play Session] redirect URL present [StreamProcessor][video] OnFragmentLoadingCompleted for stream id 156986248830902 and media type video - Url: video.m4f [DashParser] Parsing complete: ( xml2json: 37.6ms, objectiron: 0.145ms, total: 0.0377s) [StreamController] Manifest updated... updating data system wide. [ManifestUpdater] Manifest has been refreshed at Fri Apr 11 2025 10:38:10 GMT+0530 (IST)[1744348090.076] [Play Session] redirect URL present [DashParser] Parsing complete: ( xml2json: 30.5ms, objectiron: 0.170ms, total: 0.0306s) [StreamController] Manifest updated... updating data system wide. [ManifestUpdater] Manifest has been refreshed at Fri Apr 11 2025 10:38:15 GMT+0530 (IST)[1744348095.47] Opened by shogtapur4 days ago
`enableManifestDurationMismatchFix` does not work for periods without `duration` field##### Environment <!-- Replace [] with [x] to check off the list --> - [x] The MPD passes the DASH-IF Conformance Tool on https://conformance.dashif.org/ - [x] The stream has correct Access-Control-Allow-Origin headers (CORS) - [x] There are no network errors such as 404s in the browser console when trying to play the stream - [x] The issue observed is not mentioned on https://github.com/Dash-Industry-Forum/dash.js/wiki/FAQ - [x] The issue occurs in the latest reference client on http://reference.dashif.org/dash.js/ and not just on my page * Dash.js version: v4.7.4 (haven't try with v5, but read the code. Issue should still exists) * Browser name/version: Chrome * OS name/version: Mac ##### Steps to reproduce Set `enableManifestDurationMismatchFix` to true and play an asset with duration mismatch issue and some periods in the MPD does not have `duration` field. ##### Observed behavior The duration is still the incorrect value from `MediaPresentationDuration` instead of the sum of all periods. ##### Root cause https://github.com/Dash-Industry-Forum/dash.js/blob/development/src/streaming/ManifestLoader.js#L218 When calculating sum of all periods, currently, we are ```const sumPeriodDurations = manifest.Period.reduce((totalDuration, period) => totalDuration + period.duration, 0);``` Therefore, if there are any periods without `duration`, `sumPeriodDuration` will be `NaN`, and it will not continue to do the duration fix. ##### Potential fix Use the `SegmentTemplate` to calculate the real duration. Opened by KimmyWFox15 days ago
We want to implement license rotation for DRM(widevine/playready) content while playback in our dash.js playerWe want to implement license rotation for DRM(widevine/playready) content while playback in our dash.js player. We want to implement that license expiry time is 10 minutes, so every 10 minutes player should call the license server and get new license and keep playing, without affecting the playback experienceOpened by krishnakumar-ViewLift17 days ago

More news on

Contributors