Update MediaPlayer Startposition bei Pause

8

Ich streame Live-Audio und möchte die Funktion haben, den Mediaplayer anzuhalten und dann von der aktuellen Live-Position aus zu starten. Die Standardwerte Pause () und Start () beginnen genau dort, wo sie gestoppt wurde. Irgendwelche Ideen, wie man die aktuelle Position aktualisiert, so dass Start () sofort ist?

    
Brianjs 26.03.2012, 01:04
quelle

2 Antworten

6

Haben Sie versucht, seekTo () aufzurufen?

Sie könnten es ständig aktualisiert halten, indem Sie alle halbe Sekunde seekTo () aufrufen. TimerTask

BEARBEITEN: Wenn Sie seekTo () alle 500 Millisekunden aufrufen, würden Sie es mit der currentPosition + -Zeit aufrufen, die seit dem letzten Aufruf vergangen ist (500 Millisekunden in diesem Fall). Aber ich weiß nicht, ob das der beste Ansatz ist. Eine andere Möglichkeit besteht darin, einen OnSeekCompleteListener zu erstellen, der ein neues seekTo (currentPosition + timeEllapsed) vorformatiert. In diesem Fall müssen Sie timeEllapsed wie folgt berechnen: currentSystemTime - systemTimeOnLastCall

Von Ссылка :

Die Wiedergabeposition kann mit einem Aufruf von seekTo (int).

eingestellt werden

Obwohl der asynchrone seekTo (int) -Ruf den richtigen Weg zurückgibt, kann der eigentliche Suchvorgang eine Weile dauern, insbesondere für das Streaming von Audio / Video. Wenn die eigentliche Suchoperation abgeschlossen ist, ruft die interne Spieler-Engine einen Benutzer auf OnSeekComplete.onSeekComplete () wenn ein OnSeekCompleteListener zuvor über setOnSeekCompleteListener (OnSeekCompleteListener) registriert wurde.

Bitte beachten Sie, dass seekTo (int) auch in den anderen Zuständen wie Prepared, Paused und PlaybackCompleted aufgerufen werden kann.

Außerdem kann die aktuelle Wiedergabeposition mit einem Aufruf von getCurrentPosition () abgerufen werden, was für Anwendungen wie einen Musik-Player hilfreich ist, die den Wiedergabefortschritt verfolgen müssen.

    
bughi 26.03.2012, 01:16
quelle
1

Sie rufen MediaPlayer.getCurrentPosition auf, wenn Sie Ihren MediaPlayer pausieren, und rufe MediaPlayer.seekTo auf, um die Position für den MediaPlayer zurückzusetzen Sie starten es neu.

    
neevek 26.03.2012 01:14
quelle

Tags und Links