Субтитры JavaFX

143
07 июня 2018, 07:50

Делаю проект по javaFX. Подскажите, пожалуйста, как сделать привязку субтитров ко времени на видео?

Answer 1

Как вариант использовать маркеры:

@Override
public void start(Stage primaryStage) {
    final Label markerText = new Label();
    StackPane.setAlignment(markerText, Pos.TOP_CENTER);
    String workingDir = System.getProperty("user.dir");
    final File f = new File(workingDir, "../media/omgrobots.flv");
    final Media m = new Media(f.toURI().toString());
    final ObservableMap<String, Duration> markers = m.getMarkers();
    markers.put("Robot Finds Wall", Duration.millis(3100));
    markers.put("Then Finds the Green Line", Duration.millis(5600));
    markers.put("Robot Grabs Sled", Duration.millis(8000));
    markers.put("And Heads for Home", Duration.millis(11500));
    final MediaPlayer mp = new MediaPlayer(m);
    mp.setOnMarker(new EventHandler<MediaMarkerEvent>() {
      @Override
      public void handle(final MediaMarkerEvent event) {
        Platform.runLater(new Runnable() {
          @Override public void run() {
            markerText.setText(event.getMarker().getKey());
          }
        });
      }
    });
    final MediaView mv = new MediaView(mp);
    final StackPane root = new StackPane();
    root.getChildren().addAll(mv, markerText);
    root.setOnMouseClicked(new EventHandler<MouseEvent>() {
      @Override
      public void handle(MouseEvent event) {
        mp.seek(Duration.ZERO);
        markerText.setText("");
      }
    });
    final Scene scene = new Scene(root, 960, 540);
    final URL stylesheet = getClass().getResource("media.css");
    scene.getStylesheets().add(stylesheet.toString());
    primaryStage.setScene(scene);
    primaryStage.setTitle("Video Player 2");
    primaryStage.show();
    mp.play();
}
READ ALSO
Libgdx Объект timer срабатывает сразу

Libgdx Объект timer срабатывает сразу

В приложении есть два таймераПервый после старта работает нормально, щелкает раз в секунду, отрабатывает игровую логику

117
Exception java - почему

Exception java - почему

Есть код:

127
Вывод данных ИЗ TableView.Java

Вывод данных ИЗ TableView.Java

Как после редактирования данных пользоватилем таблицы TabbleView по нажатию на кнопку Save считать данные из таблицы TableView

158
Как скачать полученное фото в TelegramBot?

Как скачать полученное фото в TelegramBot?

Есть задача скачать фото которое было отправлено ботуПытаюсь делать и в результате появились вопросы

135