-
Notifications
You must be signed in to change notification settings - Fork 1.4k
Description
What version of Shaka Player are you using?
4.15.9 - note earlier versions will not work with the streams I shared as the streams have Akamai tokenisation. There was an issue with url encoding these params which was resolved here #8713
Can you reproduce the issue with our latest release version?
Yes
Can you reproduce the issue with the latest code from main
?
Not tested
Are you using the demo app or your own custom app?
Demo app and custom CAF receiver
If custom app, can you reproduce the issue using our demo app?
Yes
What browser and OS are you using?
Chrome Version 138.0.7204.184 (Official Build) (arm64)
For embedded devices (smart TVs, etc.), what model and firmware version are you using?
We are trying to get our HLS streams working with Shaka on CAF. However the issue is reproducible using the demo app in a browser. For CAF we're using latest firmware (tested multiple devices such as Google Streamer, Google Chromecast with Google TV and Google Nest Hub). As for libraries we're using:
<script src="//www.gstatic.com/cast/sdk/libs/caf_receiver/v3/cast_receiver_framework.js"></script>
<script src="//imasdk.googleapis.com/js/sdkloader/cast_dai.js"></script>
What are the manifest and license server URIs?
The issue is only observed when coming out of slate and back into content with streams delivered and conditioned by Google DAI. I have setup two streams for testing.
- HLS Muxed, Asset Key
X7YLDVV3RsWd0-31x3nPgw
- this asset does not have any text track and a short DVR window (60sec) - HLS Demuxed, Asset Key
k7m3kY2bQm-tx9upVP5YTw
- this asset will contain a text track and a 30min DVR window
You will need to use these keys in the demo player to get the player to request a LIVE stream from the DAI API and play it back.
What configuration are you using? What is the output of player.getNonDefaultConfiguration()
?
The default config in the demo app. Literally the only settings that are added to the "custom content" option is:
- Name
- Ads Asset Key (as above)
What did you do?
Play content. Wait for ads. Wait for slate. Observe error in console.
What did you expect to happen?
The player is able to play slate and then content when the ad break is over
What actually happened?
The two live streams referenced above will have ads inserted into them roughly every 15mins. The player will transition from content to ad without issue and play the ads. If the player encounters slate (no ads when an ad break should be playing) the player will throw Error 3018 when it starts to download playlists and segments of the content after downloading / playing playlists / segments of slate.
Are you planning to send a PR to fix it?
No, I'm not sure what's causing the issue. I had wondered if it's to do with a lack of text track in the slate (Google DAI behaviour). Hence trying the muxed stream. I also tried playing with ignoreTextStreamFailures
and alwaysStreamText
however this was just a wild guess and it didn't help.
