Exception when parsing Event with scte35:Binary content
Created by: fabienvallee
Environment
-
The MPD passes the DASH-IF Conformance Tool on https://conformance.dashif.org/ -
The stream has correct Access-Control-Allow-Origin headers (CORS) -
There are no network errors such as 404s in the browser console when trying to play the stream -
The issue observed is not mentioned on https://github.com/Dash-Industry-Forum/dash.js/wiki/FAQ -
The issue occurs in the latest reference client on http://reference.dashif.org/dash.js/ and not just on my page
- Link to playable MPD file: https://refplayer-dev.cloud.digitaluk.co.uk/dynamic/stl-dashads-dartest.mpd
- Dash.js version: 3.0, nightly, 2.9.3
- Browser name/version: firefox 68
- OS name/version: linux
Steps to reproduce
- Try to play the MPD using the reference player (nightly / 3.0 or 2.9.3 )
- main content playback is not starting with "TypeError: s.charAt " is exception
Observed behaviour
In the DashManifestModel::getEventsForPeriod function, decodeArray is called with the Binary as param, but Binary is an object, not a string.
BASE64.decodeArray(eventStreams[i].Event_asArray[j].Signal.Binary);
Console output
``TypeError: s.charAt is not a functionbase64.js:102:25 decodeArray base64.js:102 decodeArray base64.js:126 getEventsForPeriod DashManifestModel.js:806 getEventsFor DashAdapter.js:525 addInlineEvents Stream.js:487 initializeEventController Stream.js:482 initializeMedia Stream.js:501 activate Stream.js:152 activateStream StreamController.js:565 onMediaSourceOpen StreamController.js:538