zoukankan      html  css  js  c++  java
  • Java中音乐背景的播放

    package music;
    import java.io.*;
    
    import javax.sound.sampled.*;
    
    public class Music {
     public static void main(String[] args) {
    //  创建一个AePlayWave对象实例
      AePlayWave wav=new AePlayWave("D:/111.wav");
    //  启动该线程播放
      wav.start();
     }
    }
    //播放声音的类
    class AePlayWave extends Thread {
     private String filename;
     public AePlayWave(String wavfile) {
      filename = wavfile;
    
     }
     public void run() {
      File soundFile = new File(filename);
      AudioInputStream audioInputStream = null;
      try {
       audioInputStream = AudioSystem.getAudioInputStream(soundFile);
      } catch (Exception e1) {
       e1.printStackTrace();
       return;
      }
      AudioFormat format = audioInputStream.getFormat();
      SourceDataLine auline = null;
      DataLine.Info info = new DataLine.Info(SourceDataLine.class, format);
      try {
       auline = (SourceDataLine) AudioSystem.getLine(info);
       auline.open(format);
      } catch (Exception e) {
       e.printStackTrace();
       return;
      }
      auline.start();
      int nBytesRead = 0;
      //这是缓冲
      byte[] abData = new byte[512];
    
      try {
       while (nBytesRead != -1) {
        nBytesRead = audioInputStream.read(abData, 0, abData.length);
        if (nBytesRead >= 0)
         auline.write(abData, 0, nBytesRead);
       }
      } catch (IOException e) {
       e.printStackTrace();
       return;
      } finally {
       auline.drain();
       auline.close();
      }
     }
    }
  • 相关阅读:
    artZoom 图片可放大旋转
    Node.js究竟是什么?
    图片上传 纯js编码
    图片上传jQuery插件(兼容IE8)
    nodejs API(二)
    zuul网关
    Hystrix集群及集群监控turbine
    熔断器Hystrix及服务监控Dashboard
    Ribbon负载均衡及Feign消费者调用服务
    Eureka集群
  • 原文地址:https://www.cnblogs.com/mingforyou/p/2237744.html
Copyright © 2011-2022 走看看