Al momento, quando si utilizzano le Estensioni di origine media (MSE) in Chrome, non è possibile passare dagli stream criptati a quelli non criptati e viceversa. In realtà, questo non è vietato dalla specifica MSE. Questa limitazione riguarda principalmente la configurazione della pipeline multimediale per supportare le Encrypted Media Extensions (EME).
MSE richiede che gli stream multimediali inizino con un segmento di inizializzazione che include informazioni come i dati di inizializzazione del codec e le informazioni sulla crittografia. In genere, il segmento di inizializzazione si trova all'inizio di un file multimediale. Di conseguenza, quando i contenuti multimediali vengono allegati a un elemento multimediale tramite download o MSE, "funzionano e basta".
Il problema si verifica quando si tenta di modificare le caratteristiche dei contenuti multimediali durante lo streaming. La modifica delle caratteristiche dei contenuti multimediali richiede il passaggio di un nuovo segmento di inizializzazione. Per la maggior parte delle caratteristiche, questo metodo funziona. La riproduzione continua. Fanno eccezione le impostazioni di crittografia. Le impostazioni di crittografia del primo segmento di inizializzazione indicano solo se i segmenti dello stream possono essere criptati, il che significa che è possibile inserire nello stream segmenti multimediali non criptati. Ne consegue che uno stream non criptato con anche un solo segmento criptato richiede che le informazioni sulla crittografia siano incluse nel segmento di inizializzazione. Per questo motivo, l'inserimento di annunci richiede soluzioni alternative che non si applicano ad altre piattaforme.
A partire da Chrome 58, tutto cambia. Ora puoi passare da contenuti criptati a non criptati nello stesso stream. In questo modo, la compatibilità viene migliorata abbinando il comportamento esistente in Firefox ed Edge.
Ci sono alcune avvertenze di cui tenere conto. Innanzitutto, se prevedi segmenti criptati negli stream multimediali, devi impostare in anticipo i MediaKeys. Come in precedenza, non puoi combinare HTTP e HTTPS nella stessa origine.