2016-04-29 30 views
2

Ich habe eine ExoPlayer-Instanz mit 4 Tracks initialisiert. 2 davon sind MediaCodecVideoTrackRenderer-Instanzen, jede mit ihrer eigenen ExtractorSampleSource.ExoPlayer: Wie suche ich nach einem der aktuell spielenden Tracks?

Ich möchte die Wiedergabe eines dieser Tracks von der Mitte aus starten.

Ich warte, bis ich die Nachricht MSG_PLAYER_STATE_READY bekommen, um die Dauer der Tracks zu erhalten und dann sceettoUs auf der Sample-Quelle aufrufen (auch versucht, seekTo auf dem Renderer aufrufen), aber beide ergeben unvorhersehbare Ergebnisse.

Was ist der richtige Weg, um in eine einzelne Spur zu suchen, während der Rest der Titel von Anfang an gespielt wird?

+0

Kumpel, wo Sie gelernt haben, wie man Exo-Player benutzt, können Sie mir einen Link geben, die Dokumentation ist so vage –

+0

@prathamkesarkar Begann mit dem Demo-Player und meist durch das Lesen des Quellcodes. – Lior

Antwort

0

Verwaltet, um das Problem zu lösen, indem ich die doSomeWork-Methode des benutzerdefinierten TrackRenderer überschreibt und super.doSomeWork mit einer benutzerdefinierten positionUs aufruft, die auf der von mir benötigten Logik basiert.