[java] 音视频

Java Media API

  • Java Advanced Imaging(JAI)
  • Java 3D
  • Java Media Framework(JMF)

使用JMF

  • 示例
  • 重点:
    URL url = file.toURI().toURL();
    player = Manager.createRealizedPlayer(playFile.toURI().toURL());
    player.addControllerListener(this);//添加监听
    player.prefetch();//预取
    

    监听器函数(ControllerListener里的具体函数):

    public void controllerUpdate(ControllerEvent e){
    if(e instanceof EndOfMediaEvent){
      idx++;
      if(idx < this.mp3List.size()){
        this.start();
      }
      return;
    }
    if(e instanceof PrefetchCompleteEvent){
      player.start();
      return;
    }
    }
    

使用第三方库

  • 如javalayer的mp3播放库
    import javazoom.jl.player.Player;
    BufferedInputStream buffer = new BufferedInputStream(new FileInputStream(filename))
    player = new Player(buffer);
    player.play();
    
Written on December 26, 2022