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

Playback failing on device when moving from 4.7.15 to 4.8.0 #6844

Open
MikeKav opened this issue Jun 17, 2024 · 11 comments
Open

Playback failing on device when moving from 4.7.15 to 4.8.0 #6844

MikeKav opened this issue Jun 17, 2024 · 11 comments
Labels
platform: TV/STB Issues affecting smart TV or set-top box platforms type: question A question from the community

Comments

@MikeKav
Copy link

MikeKav commented Jun 17, 2024

Have you read the Tutorials?
Yes

Have you read the FAQ and checked for duplicate open issues?
Yes

If the question is related to FairPlay, have you read the tutorial?
N/A

What version of Shaka Player are you using?
Last working: 4.7.15
Unworking: 4.8.0 and 4.9.0

What browser and OS are you using?
EE/YouView TV Box Pro Set Top Box (https://www.bt.com/help/tv/learn-about-tv/bt-tv-boxes), Sagemcom hardware running WPE browser version 2.42.5 (slightly higher versions available soon)
YouViewHTML/1.0 AppleWebKit/605.1.15 (Sagemcom; RTIW387; RTIW387.002.X; CDS/0.10.116; API/4.0.0; PS/4.1.144) (+DVR+HTML+IPCMC+UHD+DASH+DRM+MSE)

Please ask your question
We've had a issue that playback on this STB has worked from 4.2.10 until 4.7.15, but we are experiencing failure to see/hear video/audio content with DASH/PlayReady material. Clear DASH has continued to work on both 4.8.0 and 4.9.0.

The same code is playing video and audio on Edge on all three of the above versions.

Console output seems to indicate the functionality is semi-working: There is a lot of output on setup, but then the player gets stuck in a loop repeating the below constantly:
[Debug] (video:8) – "timeNeeded=10" (shaka-player.compiled.debug.js, line 143)
[Debug] (video:8) – "update_:" – "presentationTime=0" – "bufferedAhead=10" (shaka-player.compiled.debug.js, line 143)
[Debug] (video:8) – "buffering goal met" (shaka-player.compiled.debug.js, line 143)
[Debug] (video:8) – "updating in 0.5 seconds" (shaka-player.compiled.debug.js, line 143)
[Debug] (audio:2) – "timeNeeded=10.005333333333333" (shaka-player.compiled.debug.js, line 143)
[Debug] (audio:2) – "update_:" – "presentationTime=0" – "bufferedAhead=10.005333" (shaka-player.compiled.debug.js, line 143)
[Debug] (audio:2) – "buffering goal met" (shaka-player.compiled.debug.js, line 143)
[Debug] (audio:2) – "updating in 0.5 seconds" (shaka-player.compiled.debug.js, line 143)

We do have AppleWebKit in our user agent string, but have not patched in an is[Device] API as used in platform.js as we have until now been able to use configuration switches to set behavior to a working approach.

Up until 4.7.14 the only changes we've needed have been
player.configure('streaming.useNativeHlsOnSafari', false); << This was used originally in 4.2.10 to switch our devices DASH streaming from native engine to MSE/EME
and currently for audio track switching where codecs are different we now need to add:
player.configure('mediaSource.codecSwitchingStrategy', shaka.config.CodecSwitchingStrategy.RELOAD)

We'd appreciate any ideas for areas to look at to find the problem, we've done a comparison of the new fields in config between 4.7.15 and 4.8.0 and tried a few varying settings with no visible change to behaviours

Results from https://shaka-player-demo.appspot.com/support.html:

YouViewHTML/1.0 AppleWebKit/605.1.15 (Sagemcom; RTIW387; RTIW387.002.X; CDS/0.10.116; API/4.0.0; PS/4.1.144) (+DVR+HTML+IPCMC+UHD+DASH+DRM+MSE)
v4.9.5

{
"manifest": {
"application/dash+xml": true,
"video/vnd.mpeg.dash.mpd": true,
"application/x-mpegurl": true,
"application/vnd.apple.mpegurl": true,
"application/vnd.ms-sstr+xml": true,
"application/x-offline-manifest": true
},
"media": {
"video/mp4; codecs="avc1.42E01E"": true,
"video/mp4": true,
"video/mp4; codecs="avc3.42E01E"": true,
"video/mp4; codecs="hev1.1.6.L93.90"": true,
"video/mp4; codecs="hvc1.1.6.L93.90"": true,
"video/mp4; codecs="hev1.2.4.L153.B0"; eotf="smpte2084"": true,
"video/mp4; codecs="hvc1.2.4.L153.B0"; eotf="smpte2084"": true,
"video/mp4; codecs="vp9"": false,
"video/mp4; codecs="vp09.00.10.08"": true,
"video/mp4; codecs="av01.0.01M.08"": false,
"video/mp4; codecs="dvh1.20.01"": false,
"audio/mp4; codecs="mp4a.40.2"": true,
"audio/mp4": true,
"audio/mp4; codecs="ac-3"": true,
"audio/mp4; codecs="ec-3"": true,
"audio/mp4; codecs="ac-4.02.01.01"": false,
"audio/mp4; codecs="opus"": true,
"audio/mp4; codecs="flac"": false,
"audio/mp4; codecs="dtsc"": false,
"audio/mp4; codecs="dtse"": false,
"audio/mp4; codecs="dtsx"": false,
"video/webm; codecs="vp8"": false,
"video/webm": true,
"video/webm; codecs="vp9"": false,
"video/webm; codecs="vp09.00.10.08"": true,
"audio/webm; codecs="vorbis"": false,
"audio/webm": true,
"audio/webm; codecs="opus"": true,
"video/mp2t; codecs="avc1.42E01E"": true,
"video/mp2t": true,
"video/mp2t; codecs="avc3.42E01E"": true,
"video/mp2t; codecs="hvc1.1.6.L93.90"": true,
"video/mp2t; codecs="mp4a.40.2"": true,
"video/mp2t; codecs="ac-3"": true,
"video/mp2t; codecs="ec-3"": true,
"text/vtt": true,
"application/mp4; codecs="wvtt"": true,
"application/mp4": true,
"application/ttml+xml": true,
"application/mp4; codecs="stpp"": true,
"audio/aac": true,
"audio/ac3": true,
"audio/ec3": true,
"audio/mpeg": true
},
"drm": {
"org.w3.clearkey": null,
"com.widevine.alpha": null,
"com.microsoft.playready": {
"persistentState": false,
"encryptionSchemes": [
"cenc",
"cbcs"
],
"videoRobustnessLevels": [
"150",
"2000",
"3000"
],
"audioRobustnessLevels": [
"150",
"2000",
"3000"
]
},
"com.microsoft.playready.recommendation": null,
"com.chromecast.playready": null,
"com.apple.fps.1_0": null,
"com.apple.fps": null
},
"hardwareResolution": {
"width": null,
"height": null
},
"offline": true
}

@MikeKav MikeKav added the type: question A question from the community label Jun 17, 2024
@MikeKav MikeKav changed the title Playback failing on device when moving from 4.7.14 to 4.8.0 Playback failing on device when moving from 4.7.15 to 4.8.0 Jun 18, 2024
@avelad avelad added the platform: TV/STB Issues affecting smart TV or set-top box platforms label Jun 18, 2024
@avelad
Copy link
Collaborator

avelad commented Jun 18, 2024

We do not have that device, I recommend that you look at the recent commit history in DrmEngine (https://github.com/shaka-project/shaka-player/commits/main/lib/media/drm_engine.js) and if you find the commit that fails, we will be able to help you... Sorry!

@avelad avelad added the status: waiting on response Waiting on a response from the reporter(s) of the issue label Jun 18, 2024
@MikeKav
Copy link
Author

MikeKav commented Jun 18, 2024

Hi, I tried a few versions!

Using:
#5897 (feat: Add preload system to player)
git checkout -b test-branch-489b11a 489b11a
python3 build/all.py --force
PlayReady Content fails to play

#6189 (feat!: Remove com.adobe.primetime keysystem)
git checkout -b test-branch-47602c6 47602c6
python3 build/all.py --force
PlayReady Content plays

To check I didn't make an error I then:
git checkout test-branch-489b11a
python3 build/all.py --force
PlayReady Content fails to play

The version numbers reported seemed a bit broken, but I assume from this test it's something in the changes in #5897 that is causing the issue for me?

@shaka-bot shaka-bot removed the status: waiting on response Waiting on a response from the reporter(s) of the issue label Jun 18, 2024
@MikeKav
Copy link
Author

MikeKav commented Jun 18, 2024

I'll also add that I had not yet moved to using the player.attach() method, but now I have, with the same results

@avelad
Copy link
Collaborator

avelad commented Jun 19, 2024

The PR is huge, but there is no change that affects the drm.

@avelad avelad added the status: waiting on response Waiting on a response from the reporter(s) of the issue label Jun 19, 2024
@MikeKav
Copy link
Author

MikeKav commented Jun 19, 2024

I took a look and it did seem quite big. Would you have any further recommendations for narrowing down the issue or to break down the PR changes to test? It seems to be an issue that has been introduced and into new versions moving forward so preventing us from moving off the 4.7 branch

@shaka-bot shaka-bot removed the status: waiting on response Waiting on a response from the reporter(s) of the issue label Jun 19, 2024
@avelad
Copy link
Collaborator

avelad commented Jun 24, 2024

The change is very big, if you can debug more, and find where the error is, we are happy to fix it :)

@avelad avelad added the status: waiting on response Waiting on a response from the reporter(s) of the issue label Jun 24, 2024
@shaka-bot
Copy link
Collaborator

Closing due to inactivity. If this is still an issue for you or if you have further questions, the OP can ask shaka-bot to reopen it by including @shaka-bot reopen in a comment.

@shaka-bot shaka-bot removed the status: waiting on response Waiting on a response from the reporter(s) of the issue label Jul 1, 2024
@MikeKav
Copy link
Author

MikeKav commented Jul 19, 2024

@shaka-bot reopen

I've not had time to work on this until now, today I've tried the newer versions as released since I first posted.
4.17.15 (/)
4.8.0 (x), 4.8.20 (x)
4.9.0 (x), 4.9.19 (x)
4.10.0 (x), 4.10.7 (x)

@avelad
Copy link
Collaborator

avelad commented Jul 19, 2024

@MikeKav We do not have that device, we can leave the issue open, but you will have to debug the error yourself, sorry!

@MikeKav
Copy link
Author

MikeKav commented Jul 19, 2024

Hi @avelad , I do understand (as a matter of interest, do you have a UK based lab?). I've re-opened to provide some further details, hopefully someone might see something I'm doing and be able to help advise.
I have checked some different content types, and can replicate the issue on public available content and keys, which is:
"url": "https://media.axprod.net/TestVectors/v7-MultiDRM-SingleKey/Manifest_1080p.mpd",

                "drm": {
                    "servers": {
                        "com.microsoft.playready":"https://test.playready.microsoft.com/service/rightsmanager.asmx?cfg=(kid:9eb4050d-e44b-4802-932e-27d75083e266,contentkey:FmY0xnWCPCNaSpRG+tUuTQ==,sl:150)"
                    }
                }, 

@avelad
Copy link
Collaborator

avelad commented Jul 19, 2024

@theodab can you help here? Thanks!

@shaka-bot shaka-bot reopened this Jul 19, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
platform: TV/STB Issues affecting smart TV or set-top box platforms type: question A question from the community
Projects
None yet
Development

No branches or pull requests

3 participants