Skip to content

[DASH] MEDIA_ERR_DECODE when manifest transitions from dynamic to static (live-to-VOD) #9156

@rakeshLogituit

Description

@rakeshLogituit

Description

When a DASH manifest transitions from type="dynamic" (live) to type="static" (VOD),
VHS detects excessive audio segment downloading and blacklists all available playlists,
resulting in a fatal MEDIA_ERR_DECODE with no recovery path.


Steps to Reproduce

  1. Load a DASH stream with type="dynamic" (live stream)
  2. Wait for the manifest to transition to type="static" (VOD/live-to-VOD)
  3. VHS continues fetching segments based on old live timeline
  4. Audio segments are repeatedly re-downloaded
  5. Player throws fatal error

Expected Behavior

  • VHS should detect the type change in the MPD
  • Automatically re-parse manifest as VOD
  • Resume playback without fatal error

Actual Behavior

VIDEOJS: WARN: Problem encountered with playlist 1-placeholder-uri-1.
Excessive audio segment downloading detected.
Switching to playlist 0-placeholder-uri-0.

VIDEOJS: ERROR: (CODE:3 MEDIA_ERR_DECODE)
Playback cannot continue. No available working or supported playlists.
MediaError { code: 3, message: 'Playback cannot continue...' }


Environment

  • video.js version: 8.23.7
  • @videojs/http-streaming version: 3.17.4
  • Browser: Chrome / Firefox / Safari / smasungTv / Lg
  • OS: Windows / Mac / Linux
  • Manifest type: DASH (MPD)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions