Server Version#: 1.25.9.5721
Player Version#: 4.76.1
I am trying to play any Plex “Movies & Shows” title via Plex Web on my server on FIREFOX 103 on macOS 12.4 on an M1 mac. It does not show any video, and only plays the movie audio.
Hypothesis: something about the DRM decryption leads me to believe it’s a Firefox DRM and/or certificates issue.
I have tested playback of several titles from my server on Safari, and they playback fine. Additionally, don’t know if this is relevant, Safari uses mpegts, h264, aac when playing the title.
I noticed in the console on Safari, there are these lines:
Log] [MDE] Finished analysis of: 1080 (mpegts, h264, aac, , ) { (9-9-9349db070b509fd0177e-plex-4.76.1.22469-3117cd9.js, line 2)
"canPlay": true,
"canDirectPlay": true,
"canDirectStreamVideo": true,
"canDirectStreamAudio": true,
"bitrate": 3649,
"videoResolution": 1080
}
[Log] [PDE] DRM content decryption module: fairplay (9-9-9349db070b509fd0177e-plex-4.76.1.22469-3117cd9.js, line 2)
[Log] [PDE] DRM certificate: https://manifest.prod.boltdns.net/license/v1/fairplay_app_cert/6058083015001 (9-9-9349db070b509fd0177e-plex-4.76.1.22469-3117cd9.js, line 2)
[Log] [PDE] Player decision: { (9-9-9349db070b509fd0177e-plex-4.76.1.22469-3117cd9.js, line 2)
"playerType": "html",
"protocol": "hls",
"canDirectPlay": true
}
[Log] [PDE] Resolving DRM license /library/parts/6308108499112-hls/license (9-9-9349db070b509fd0177e-plex-4.76.1.22469-3117cd9.js, line 2)
[Log] [PDE] Unnecessary for server to resolve decision (9-9-9349db070b509fd0177e-plex-4.76.1.22469-3117cd9.js, line 2)
[Log] [MediaElement] Found existing media element to use. type: video (9-9-9349db070b509fd0177e-plex-4.76.1.22469-3117cd9.js, line 2)
[Warning] [Player] Server certificate request succeeded: https://manifest.prod.boltdns.net/license/v1/fairplay_app_cert/6058083015001 (9-9-9349db070b509fd0177e-plex-4.76.1.22469-3117cd9.js, line 2)
where on Firefox, it is this in the console log:
[MDE] Finished analysis of: 1080 (mp4, aac, , ) {
"canPlay": true,
"canDirectPlay": true,
"canDirectStreamVideo": true,
"canDirectStreamAudio": true,
"bitrate": 3649,
"videoResolution": 1080
} 9-9-9349db070b509fd0177e-plex-4.76.1.22469-3117cd9.js:2:400835
[PDE] DRM content decryption module: widevine 9-9-9349db070b509fd0177e-plex-4.76.1.22469-3117cd9.js:2:400835
[PDE] DRM certificate: undefined 9-9-9349db070b509fd0177e-plex-4.76.1.22469-3117cd9.js:2:400835
[PDE] Player decision: {
"playerType": "html",
"protocol": "dash",
"canDirectPlay": true
} 9-9-9349db070b509fd0177e-plex-4.76.1.22469-3117cd9.js:2:400835
[PDE] Resolving DRM license /library/parts/6308108499112-dash/license 9-9-9349db070b509fd0177e-plex-4.76.1.22469-3117cd9.js:2:400835
[PDE] Unnecessary for server to resolve decision 9-9-9349db070b509fd0177e-plex-4.76.1.22469-3117cd9.js:2:400835
EmeEncryptionSchemePolyfill: Waiting to detect encryptionScheme support. 9-9-9349db070b509fd0177e-plex-4.76.1.22469-3117cd9.js:2:400835
McEncryptionSchemePolyfill: Waiting to detect encryptionScheme support. 9-9-9349db070b509fd0177e-plex-4.76.1.22469-3117cd9.js:2:400835
[MediaElement] Found existing media element to use. type: video 9-9-9349db070b509fd0177e-plex-4.76.1.22469-3117cd9.js:2:400835
EmeEncryptionSchemePolyfill: No native encryptionScheme support found. Patching encryptionScheme support.
Two things I notice:
Line [PDE] DRM certificate: undefined
and I never get a similar “Certificate request succeeded” on Firefox.
Interestingly, playing the same title from plex.tv on Firefox works fine. No issues there. I don’t see any difference in the log:
[MDE] Finished analysis of: 1080 (mp4, aac, , ) {
"canPlay": true,
"canDirectPlay": true,
"canDirectStreamVideo": true,
"canDirectStreamAudio": true,
"bitrate": 3649,
"videoResolution": 1080
} 118-118-da6ea8ee74b344533647-plex-4.89.1.26138-c3730cd.js:2:575122
[PDE] DRM content decryption module: widevine 118-118-da6ea8ee74b344533647-plex-4.89.1.26138-c3730cd.js:2:575122
[PDE] DRM certificate: undefined 118-118-da6ea8ee74b344533647-plex-4.89.1.26138-c3730cd.js:2:575122
[PDE] Player decision: {
"playerType": "html",
"protocol": "dash",
"canDirectPlay": true
} 118-118-da6ea8ee74b344533647-plex-4.89.1.26138-c3730cd.js:2:575122
[PDE] Resolving DRM license /library/parts/6308108499112-dash/license 118-118-da6ea8ee74b344533647-plex-4.89.1.26138-c3730cd.js:2:575122
[PDE] Unnecessary for server to resolve decision 118-118-da6ea8ee74b344533647-plex-4.89.1.26138-c3730cd.js:2:575122
EmeEncryptionSchemePolyfill: Waiting to detect encryptionScheme support. 118-118-da6ea8ee74b344533647-plex-4.89.1.26138-c3730cd.js:2:575122
McEncryptionSchemePolyfill: Waiting to detect encryptionScheme support. 118-118-da6ea8ee74b344533647-plex-4.89.1.26138-c3730cd.js:2:575122
[MediaElement] Creating new media element. type: video 118-118-da6ea8ee74b344533647-plex-4.89.1.26138-c3730cd.js:2:575122
[MediaElement] Releasing media element to pool. type: video 118-118-da6ea8ee74b344533647-plex-4.89.1.26138-c3730cd.js:2:575122
McEncryptionSchemePolyfill: No native encryptionScheme support found. Patching encryptionScheme support. 48 118-118-da6ea8ee74b344533647-plex-4.89.1.26138-c3730cd.js:2:575122
EmeEncryptionSchemePolyfill: No native encryptionScheme support found. Patching encryptionScheme support.
So what is going on?