DRM Providers

FairPlay

Registra un DRM provider con soporte FairPlay en C21 Live Control y asócialo a un Destination.

FairPlay en C21 Live Control

FairPlay es el DRM de Apple. Alcanza Safari, iOS, iPadOS, tvOS y macOS — el ecosistema de dispositivos Apple. En Live Control aparece como uno de los tres sistemas expuestos por DrmProvider.supported_systems y como uno de los valores que drm.systems[] puede llevar.

Esta página cubre lo que va en el registro del proveedor cuando el servicio multi-DRM upstream soporta FairPlay. Para el flujo de extremo a extremo, consulta DRM workflow. Para el catálogo de proveedores y el CRUD, consulta Providers.

De dónde viene la configuración

Las integraciones FairPlay las emite Apple a los content owners. El vendor multi-DRM upstream (por ejemplo AXINOM o EZDRM) gestiona el handshake FairPlay Streaming (FPS) en nombre del cliente: maneja el certificado FairPlay, deriva las content keys y sirve la respuesta Content Key Context (CKC) cuando un reproductor emite una Server Playback Context (SPC) request.

El vendor entrega el mismo endpoint SPEKE y las mismas credenciales usadas para Widevine y PlayReady — no hay un formulario FairPlay separado en Live Control. El supported_systems del registro de proveedor declara si el soporte FairPlay del vendor está habilitado para esta cuenta.

Requisito de empaquetado: CBCS

FairPlay solo consume contenido cifrado en modo cbcs (AES-CBC con cifrado por patrón basado en subsamples). Un Destination con systems = [FairPlay] requiere encryption_mode = cbcs. Para alcanzar clientes Widevine + PlayReady junto a FairPlay, registra un Destination separado con systems = [Widevine, PlayReady] apuntando al mismo empaquetado cbcs — la API rechaza combinar FairPlay con Widevine o PlayReady en un único Destination.

Asociar FairPlay a un Destination

El DRM se aplica a un Destination mediante su bloque drm (consulta Destinations):

  • active = true.
  • provider_id apuntando al proveedor compatible con FairPlay.
  • systems = ['FairPlay']. La combinación habitual es solo-Apple. Si el deploy necesita también Widevine + PlayReady, crea un Destination separado con esos dos systems — la API no admite FairPlay junto a otros en una sola fila.
  • encryption_mode = cbcs (lo deriva el servidor cuando systems incluye FairPlay).
  • contentid con el identificador de contenido que el vendor upstream espera.

FAQ

Copyright © 2026