如何知道视频开始时间小于java-vlcj播放器中的视频持续时间

时间:2017-02-10 18:33:16

标签: java video time media vlcj

我正在尝试使用java-vlcj播放器开发视频播放器应用程序。我需要为一堆视频提供随机开始时间。但是有些视频比我的随机开始时间短。我需要跳过这些视频并播放下一个视频。

这是我的代码:

for(int i=0;i<videoCount;i++){
    int delay = playTime*1000; //milliseconds
      ActionListener taskPerformer = new ActionListener() {
          public void actionPerformed(ActionEvent evt) {


                videoPath = randomvVideoPath(directory); 


               //***  times[0] is start time, times[1] is stop time***//
               String[] times = startStop();


/*** I DONT KNOW IF THE START TIME IS SMALLER THAN THE VIDEO DURATION******/
 mediaPlayerComponent.getMediaPlayer().playMedia(videoPath,":start-time="+times[0], ":stop-time="+times[1]);

          }
      };
          new Timer(delay, taskPerformer).start();
}

我该怎么检查? mediaPlayerComponent.getMediaPlayer()的getLength()和getTime()没有给出正确的时间。

提前致谢,

1 个答案:

答案 0 :(得分:0)

getLength()和getTime() do 返回正确的时间,但有时这些信息在播放媒体后才可用。这就是VLC的工作原理。

我建议改为查看本地MediaInfo命令行实用程序的Java绑定,并使用它来获取视频长度。