Chcę odtworzyć 2 filmy z rzędu. Pierwsze wideo zawsze gra dobrze. Po zakończeniu można zobaczyć w dzienniku, że ustawia nowy adres URL wideo, ale następnie SurfaceView zgłasza błąd i VideoView po prostu zawiesza się z ostatnią klatkę pierwszego wideo. Nic więcej się nie dzieje. Jakieś myśli? Dzięki !Android VideoView nie odtwarza sekwencyjnych filmów wideo
LE: Zaskakująco, OnPreparedListener zostaje wezwany do drugiego wideo.
LE2: Czasami drugi film gra się dobrze, czasami nie ... i nie zmieniłem linii kodu pomiędzy kiedy zadziałał, a kiedy nie. To czysto przypadkowy ...
LE3: Szybkie rozwiązanie jest dodać tę linię przed ustawieniem nowego adresu URL wideo:
mVideoView.setVisibility(View.GONE);
kod z OnCompletionListener:
setCurrentPlaybackUrl(); // sets mCurrentMediaUrl to the second video URL
mVideoView.setVideoPath(mCurrentMediaUrl);
mVideoView.start();
To jest wyjście, gdy log pierwszy film zakończy odtwarzanie:
10-22 12:32:35.762: I/AwesomePlayer(126): setDataSource_l('https://xx/TestingVideo_lo.mp4')
10-22 12:32:35.762: E/BufferQueue(123): [SurfaceView] connect: already connected (cur=3, req=3)
10-22 12:32:35.762: E/MediaPlayerService(126): setVideoSurfaceTexture failed: -22
10-22 12:32:35.762: E/BufferQueue(123): [SurfaceView] connect: already connected (cur=3, req=3)
10-22 12:32:35.762: E/MediaPlayerService(126): setVideoSurfaceTexture failed: -22
Nic się nie zmieniło. –
Czasami drugi film gra się dobrze, czasami nie ... i nie zmieniłem linii kodu między kiedy zadziałał, a kiedy nie. To czysto losowe ... –
0/3 udanych prób z 2 różnymi adresami URL. 1/3 udanych prób z tym samym adresem URL. Idę zwariować ... –