Failover della playlist mancante

Quando manca un'intera playlist, ad esempio, quando il file M3U8 specificato in un file manifest di livello superiore non viene scaricato, TVSDK tenta di recuperare. Se non è possibile eseguire il ripristino, l'applicazione determina il passaggio successivo.

Se manca la playlist associata al bit rate a risoluzione media, TVSDK cerca una playlist variante alla stessa risoluzione. Se trova la stessa risoluzione, inizia a scaricare la playlist della variante e i segmenti dalla posizione corrispondente. Se TVSDK non trova la stessa playlist di risoluzione, cercherà di scorrere altre playlist di bitrate e le loro varianti. Un bitrate immediatamente inferiore è la prima scelta, quindi la sua variante, e così via. Se tutte le playlist con bitrate inferiore e le loro varianti sono esaurite nel tentativo di trovare una playlist valida, TVSDK andrà al bitrate superiore e conta giù da lì. Se non è possibile trovare una playlist valida, il processo non riesce e il lettore passa allo stato ERROR.

L'applicazione può determinare come gestire questa situazione. Ad esempio, potrebbe essere utile chiudere l’attività del lettore e indirizzare l’utente all’attività del catalogo. L'evento di interesse è l'evento STATE_CHANGED e il callback corrispondente è il metodo onStateChanged . Ecco un codice che controlla se il lettore modifica il proprio stato interno in ERRORE:

case ERROR:
    getActivity().finish(); // this is where we close the current activity (the Player activity)
    break;

Per ulteriori informazioni, consulta il file PlayerFragment.java nell’SDK:

[…]/samples/PrimetimeReference/src/PrimetimeReference/src/com/adobe/primetime/reference/ui/player/

Se la rete lato client è inattiva, puoi utilizzare questo codice per verificare.

psdkutils::PSDKString
getNetworkDownVerificationUrl() const { return
_networkDownVerificationUrl; }

L’API fornirà l’URL utilizzato per verificare se la rete lato client è inattiva. Deve essere un URL valido, che restituisce il codice di risposta http 200 sulle richieste http.

psdkutils::PSDKErrorCode
 setNetworkDownVerificationUrl(psdkutils::PSDKString value) {
_networkDownVerificationUrl = value; return psdkutils::kECSuccess; }

Se setNetworkDownVerificationUrl non è impostato, per impostazione predefinita TVSDK utilizza l'URL MainManifest per configurare se la rete è inattiva.

In questa pagina