The configuration was too rigid. The player was a locksmith showing up with only a titanium key, but the lock was made of brass. She dug into the Shaka Player configuration file, where a previous developer had hardcoded:
The next morning, Maya documented the incident for her team: The configuration was too rigid
player.configure({ drm: { servers: { 'com.widevine.alpha': 'https://license.arthouse.com/widevine' } } }); The problem? The manifest file for Cybernetic Vampire III (and several other 4K remasters) contained multiple DRM schemes. But the player was asking for Widevine. When Widevine wasn't available (or the license server was down for that key system), Shaka threw the REQUESTED_KEY_SYSTEM_CONFIG_UNAVAILABLE error because it had no fallback. The manifest file for Cybernetic Vampire III (and
Maya was a software engineer for a small but ambitious streaming startup called "ArtHouse Stream." Their specialty was rare, cult classic films. One Friday night, she got a frantic call from her boss. Maya was a software engineer for a small
player.configure({ drm: { servers: { 'com.widevine.alpha': 'https://license.arthouse.com/widevine', 'com.microsoft.playready': 'https://license.arthouse.com/playready', 'com.apple.fairplay': 'https://license.arthouse.com/fairplay' }, // Tell Shaka to try them in this order advanced: { 'com.widevine.alpha': { distinctiveIdentifierRequired: false }, 'com.microsoft.playready': { distinctiveIdentifierRequired: false } } } }); But that wasn't enough. She also realized the error happened when the browser a key system, but the license server URL was misconfigured for that specific key system. So she added a robust retryParameters and a fallback error handler: