трепетать видео плеер добавить SubtitleView - PullRequest
1 голос
/ 29 февраля 2020

Привет, ребята, на сегодняшний день видеоплеер 10.8 не поддерживает включенные файлы srt в контейнере .mkv. Английский sh не мой родной язык, и я использую много .mkv с .srt внутри него. Exoplayer, на котором основан видеопроигрыватель android, имеет встроенную поддержку через SubtitleView.

Поэтому я решил изменить исходный видеоплеер и добавил exoplayer-ui в android / build.gradle

    dependencies {
    implementation 'com.google.android.exoplayer:exoplayer-core:2.9.6'
    implementation 'com.google.android.exoplayer:exoplayer-hls:2.9.6'
    implementation 'com.google.android.exoplayer:exoplayer-dash:2.9.6'
    implementation 'com.google.android.exoplayer:exoplayer-smoothstreaming:2.9.6'
    implementation 'com.google.android.exoplayer:exoplayer-ui:2.9.6'
}

, а затем изменил video_player-0.10.8 + 1 / android / src / main / java / io / flutter / plugins / videoplayer / VideoPlayer. java и добавил

import com.google.android.exoplayer2.ui.SimpleExoPlayerView;
import com.google.android.exoplayer2.ui.PlayerView;
import com.google.android.exoplayer2.ui.SubtitleView;

добавил мои глобальные переменные ...

  private PlayerView simpleExoPlayerView;
  private SubtitleView subs;
  private SimpleExoPlayer exoPlayer;

, а затем создали их ...

exoPlayer = ExoPlayerFactory.newSimpleInstance(context, trackSelector);
simpleExoPlayerView = new PlayerView(context);

и, наконец, установили мой плеер на exoplayer, как я бы это делал на нативном exoplayer android development

surface = new Surface(textureEntry.surfaceTexture());
exoPlayer.setVideoSurface(surface);
simpleExoPlayerView.setPlayer(exoPlayer);
subs = simpleExoPlayerView.getSubtitleView();
subs.setVisibility(View.VISIBLE);

Мой код компилируется, но я получаю аудио от mov ie, который я играю с BLACKSCREEN, поэтому файл фактически воспроизводится. Я знаю, что моя проблема зависит от поверхности, которую я создаю, и я попробовал пару вещей, которые не работали. Любые идеи, как я мог бы использовать SubtitleView для использования моего файла SRT в контейнере .mkv?

Спасибо!

...