prepareMessage prepareContentId functions are not invoked

Product

Player

Question

Hi Team,

I am passing SourceConfirm with custom prepareMessage prepareContentId function for Fairplay DRM in my application. I have added console.log statements to these funtion for debug. But when I load the player in Safari browser I don’t see these functions getting invoked. And because of this I am seeing error as “DRM_NO_KEY_SYSTEM”.

Here is how my SourceConfig looks like…

{
hls: “url”,
dash: “url”,
drm: {
widevine: {
LA_URL: “url”,
},
fairplay: {
LA_URL: “url”,
certificateURL: “url”,
headers: {
‘Content-Type’: ‘application/json’,
},
prepareMessage: (event: any, session: any) => {
console.log(‘Test 01’, event, session)
return JSON.stringify()
},
prepareCertificate: (cert) => {
console.log(‘Test 02’, cert)
return
},
prepareContentId: (contentId) => {
contentId = contentId.slice(2)
console.log(‘Test 03’, contentId)
return ‘’
},
},
},
}

Please let me know if there is any additional configuration that I shoujld add to these functions are invoked by sdk.

Thanks.

Hi Community,

Please share your inputs as I am strugling to make this work. Please let me know if this is something which is currently not supported in Bitmovin so we can figure out another approach to handle this use case.

Thanks.