2010-12-27 12 views
5


Mam problemy z wyszukiwaniem filmów. Moja aplikacja powinna wznowić wideo z miejsca, w którym zostało zatrzymane ostatnim razem. Więc robię to: seekTo w VideoView

videoView.seekTo(bookmark); 
videoView.start();
Jednak kiedy gra, słyszę dźwięki z początku wideo przez około 1-2 sek. I dopiero po tym wideo szuka właściwej pozycji. To zachowanie jest odtwarzalne na HTC Nexus One, HTC G1, HTC evo. Ale w zakładce Samsung galaxy wszystko gra normalnie.

Ktoś miał podobne problemy? Czy ten błąd jest specyficzny dla HTC? Z góry dziękuję.

Odpowiedz

1

myślę, że może być przyczyną:

z api doc

Chociaż asynchronuous seekTo (int) zwraca wywołanie właściwej drodze, rzeczywista operacja poszukiwania mogą potrwać do końca, szczególnie dla audio/wideo jest przesyłany strumieniowo. Kiedy operacja wyszukiwania zakończy się, wewnętrzny mechanizm odtwarzacza wywołuje dostarczoną przez użytkownika funkcję OnSeekComplete.onSeekComplete(), jeśli wcześniej zarejestrowano OnSeekCompleteListener za pomocą setOnSeekCompleteListener (OnSeekCompleteListener).

teraz Videoview nie mają OnSeekCompleteListener naświetlone i to jest do bani, ale Videoview jest tylko klasa wrapper dla Mediaplayer i SurfaceView

+0

Dzięki za odpowiedź. A także dziękuję za pomysł wdrożenia niestandardowego VideoView przez moją własną inwestycję – underwood

+0

powodzenia! – mishkin

+2

Próbowałem implementować VideoView przez własne. Nadal mam te same problemy, nawet jeśli nazywam 'start()' po wywołaniu 'onSeekComplete()'. Najpierw myślałem, że ten problem jest w 'VideoView.mSHCallback', który wywołuje' start() 'na OS 1.6 i wprowadził poprawki. Tak więc nazywam 'start()' dopiero po przygotowaniu gracza i ustawieniu pozycji szukania. Wciąż ma czkawkę przy starcie. – underwood

3

To zdecydowanie nie jest specyficzny dla telefonu. Mam taki sam problem w HTC Incredible. Funkcja seekTo działa, ale od początku klipu występuje usterka audio. Opierając się na wynikach próbujących wdrożyć niestandardowy VideoView, myślę, że nie popadnę w kłopoty. Teraz zobaczę, czy mogę wyciszyć sam początek klipu. Opowiem o tym tutaj, jeśli mi się uda.

Cóż, zrezygnowałem z tego. Jedynym sposobem na wyciszenie początku klipu jest całkowite wyciszenie telefonu, co również wyciszy muzykę w tle. Będę zakładać, że zostanie to ustalone kiedyś w przyszłości, ponieważ jest to znany problem:

http://code.google.com/p/android/issues/detail?id=9135 Issue 9135: MediaPlayer/VideoView i SeekTo przed pierwszym odtwarzanie rozpocznie się od początku do kilku millisecs

Powiązane problemy