android android-mediaplayer subtitle

android - Cómo cambiar el subtítulo en mediaplayer



android-mediaplayer subtitle (1)

Puedo asignar subtítulos una vez, pero después de eso, si intento cambiar los subtítulos. No aceptará una nueva, muestra la anterior cada vez.

Debajo del código estoy usando para cambiar subtítulos.

MediaPlayer mediaPlayer; public void changeSubtitle() { //disable subtitle if it has if(textTrackIndex!=0){ mediaPlayer.deselectTrack(textTrackIndex); textTrackIndex=0; mediaPlayer.setOnTimedTextListener(null); } //try to asssign new subtitle mediaPlayer .addTimedTextSource( (Environment.getExternalStorageDirectory() .getPath() + "/"+"filename", MediaPlayer.MEDIA_MIMETYPE_TEXT_SUBRIP); int textTrackIndex = findTrackIndexFor(TrackInfo.MEDIA_TRACK_TYPE_TIMEDTEXT,mediaPlayer.getTrackInfo()); if (textTrackIndex >= 0) { mediaPlayer.selectTrack(textTrackIndex); } else { Log.w(TAG, "Cannot find text track!"); } mediaPlayer.setOnTimedTextListener(this); } private int findTrackIndexFor(int mediaTrackType, TrackInfo[] trackInfo) { int index = -1; for (int i = 0; i < trackInfo.length; i++) { if (trackInfo[i].getTrackType() == mediaTrackType) { return i; } } return index; }


Echa un vistazo al diagrama de estado . Intente reset() y release() su mediaPlayer antes de inicializarlo nuevamente con los recursos recién asociados.