Skip to content

No live stream on persistent license implementation #9432

@Franck-I-Wiz

Description

@Franck-I-Wiz

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?

no FairPlay

What version of Shaka Player are you using?
v4.16.9

What browser and OS are you using?
Hisense TV 2022 using vidaa U06.20 with chrome v88

Please ask your question

Hello,

We are using version 4.16.9, and our client has asked us to test the implementation of a persistent license.

Documentation link:
https://shaka-player-demo.appspot.com/docs/api/tutorial-drm-config.html - § Re-use persistent license DRM for online playback

We are using DASH streams with PlayReady DRM.
Device: Hisense TV 2022 with Chrome v88

In the Shaka configuration, we have correctly added sessionType: "persistent-license".

    config: {
        streaming: {
            rebufferingGoal: 1,
            bufferingGoal: 6,
            bufferBehind: 4,
            retryParameters: {
                timeout: 5000,
                connectionTimeout: 5000
            }
        },
        manifest: {
            dash: {
                ignoreMinBufferTime: true
            },
            retryParameters: {
                maxAttempts: 4,
                timeout: 5000
            }
        },
        abr: {
            defaultBandwidthEstimate: 500000
        },
        drm: {
            advanced: {
                "com.microsoft.playready": {sessionType: "persistent-license"}
            }
        }
    }

When the application launches, the player attempts to start the live stream but encounters error 6001.
As the documentation indicates, I'm checking the metadata of the current sessions.

`
const activeDrmSessions = currentScreen.player.player.player.shakaPlayer.getActiveSessionsMetadata();

activeDrmSessions
▼ (1)
▼ {…}
▼ 0:
initData: Uint8Array(796) [0, 0, 3, 28, 112, 115, 115, 104, 0, 0, 0, 0, 154, 4, 240, 121, 152, 64, 66, 134, 171, 146, 230, 91, 224, 136, 95, 149, 0, 0, 2, 252, 252, 2, 0, 0, 1, 0, 1, 0, 242, 2, 60, 0, 87, 0, 82, 0, 77, 0, 72, 0, 69, 0, 65, 0, 68, 0, 69, 0, 82, 0, 32, 0, 120, 0, 109, 0, 188, 0, 110, 0, 115, 0, 61, 0, 34, 0, 104…
initDataType: "cenc"
sessionId: "1"
sessionType: "temporary"
proto: Object
length: 1
proto: Array(0)

const persistentDrmSessions = activeDrmSessions.filter(
({ sessionType }) => sessionType === 'persistent-license'
);

persistentDrmSessions
▼ []
`

We've noticed that the permanent license array is empty because we're only receiving one temporary license.
The client assures us they've activated the permanent license on the PlayReady DRM server.

Is there another way to verify the license type (in DrmEngine, for example)?
We welcome any information or feedback regarding persistent licenses with DASH streams.

Thanks!

Metadata

Metadata

Assignees

No one assigned

    Labels

    status: waiting on responseWaiting on a response from the reporter(s) of the issuetype: questionA question from the community

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions