Ciclo di vita dell'oggetto MediaPlayer

Dal momento in cui viene creata l'istanza MediaPlayer al momento in cui viene terminata (riutilizzata o rimossa), questa istanza completa una serie di transizioni tra gli stati.

Alcune operazioni sono consentite solo quando il lettore si trova in uno stato particolare. Ad esempio, chiamando play in IDLE non è consentito. Puoi chiamare questo stato solo dopo che il lettore ha raggiunto lo stato READY.

Per utilizzare gli stati:

  • È possibile recuperare lo stato corrente del MediaPlayer oggetto utilizzando MediaPlayer.status proprietà.

    function get status():String;
    
  • L’elenco degli stati è definito in MediaPlayer.PlayerStatus.

Diagramma di transizione dello stato per il ciclo di vita di una MediaPlayer istanza:

La tabella seguente fornisce ulteriori dettagli:

MediaPlayerStatus Si verifica quando
INATTIVO

L'applicazione ha richiesto un nuovo lettore multimediale creando un'istanza MediaPlayer . Il lettore appena creato è in attesa di specificare un elemento del lettore multimediale.

INIZIALIZZAZIONE

Chiamata dell'applicazione MediaPlayer.replaceCurrentResource e il lettore multimediale è in fase di caricamento.

INIZIALIZZATO

TVSDK: impostazione dell'elemento del lettore multimediale completata.

PREPARAZIONE

Chiamata dell'applicazione MediaPlayer.preparationToPlay . Il lettore multimediale sta caricando l’elemento del lettore multimediale e le risorse associate.

Suggerimento: potrebbe verificarsi un buffering del file multimediale principale.

TVSDK sta preparando il flusso multimediale e sta tentando di eseguire la risoluzione e l’inserimento degli annunci (se abilitati).

Suggerimento: per impostare un valore diverso da zero come ora di inizio, invoca preparationToPlay(startTime) con il tempo in millesimi di secondo.

PREPARATO

Il contenuto viene preparato e gli annunci sono stati inseriti nella timeline, oppure la procedura dell’annuncio non è riuscita. Può iniziare il buffering o la riproduzione.

RIPRODUZIONE

L'applicazione ha chiamato play , quindi TVSDK sta tentando di riprodurre il video. Alcuni buffering potrebbero verificarsi prima dell’effettiva riproduzione del video.

IN PAUSA

Quando l’applicazione riproduce e mette in pausa il contenuto multimediale, il lettore multimediale si sposta tra questo stato e PLAY.

RICERCA

Il lettore multimediale sta cercando la posizione corretta durante la pausa o la riproduzione. Per determinare quando la ricerca è iniziata o terminata, ascolta SeekEvent.SEEK_BEGIN e SeekEvent.SEEK_END eventi.

COMPLETATO

Il lettore ha raggiunto la fine del flusso e la riproduzione si è interrotta.

RILASCIATO

L’applicazione ha rilasciato il lettore multimediale, con tutte le risorse associate. Non è più possibile utilizzare questa istanza

ERRORE

Si è verificato un errore durante il processo. Un errore può inoltre influire sulle operazioni successive dell'applicazione.

SUGGERIMENTO

È possibile utilizzare lo stato per fornire un feedback sul processo (ad esempio, uno spinner in attesa della modifica di stato successiva) o per fare il passaggio successivo nella riproduzione del supporto, ad esempio attendere lo stato appropriato prima di chiamare il metodo successivo.

In questa pagina