• java音频播放器


    java音频播放器备份,支持wav,mp3

    都是摘抄于网络,wav播放mp3播放

    播放wav版本

    • 包:
      • 不需要其他jar包
    • 代码:
    package com;
    
    import javax.sound.sampled.*;
    import java.io.File;
    
    /*
    wav播放器,不支持mp3
     */
    public class AePlayWave extends Thread {
        private String name;
    
        public AePlayWave(String name) {
            this.name = name;
        }
    
        @Override
        public void run() {
            File file = new File(name);
            AudioInputStream audioInputStream = null;
            try {
                audioInputStream = AudioSystem.getAudioInputStream(file);
            } catch (Exception e) {
                e.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[] abbytes = new byte[512];
            try {
                while ((nBytesRead = audioInputStream.read(abbytes, 0, abbytes.length)) != -1) {
                    if (nBytesRead >= 0) {
                        auline.write(abbytes, 0, nBytesRead);
                    }
                }
    
            } catch (Exception e) {
                e.printStackTrace();
                return;
            } finally {
                auline.drain();
                auline.close();
            }
    
    
        }
    }
    

    MP3播放

    package com;
    
    import javazoom.jl.decoder.JavaLayerException;
    import javazoom.jl.player.Player;
    
    import java.io.BufferedInputStream;
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileNotFoundException;
    /*
    mp3播放器
     */
    public class AudioPlayer extends Thread {
        Player player;
        File music;
        //构造方法
        public AudioPlayer(String fileName) {
            this.music = new File(fileName);
        }
        //重写run方法
        @Override
        public void run() {
            super.run();
            try {
                play();
            } catch (FileNotFoundException | JavaLayerException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
        //播放方法
        public void play() throws FileNotFoundException, JavaLayerException {
    
            BufferedInputStream buffer =
                    new BufferedInputStream(new FileInputStream(music));
            player = new Player(buffer);
            player.play();
        }
    }
    
    
  • 相关阅读:
    Silverlight 学习笔记(二)silverligth 界面布局
    (C#)WinForm窗体间传值
    软件开发所需要的十三个文档
    XP下安装SQL2000企业版本(转载)
    .net 框架下快速Web开发(一)——纠结的里程
    .net MVC 框架调试过程中,产生大量的临时文件
    认识NHitenate
    如何循序渐进向.Net架构师发展[转载]
    核桃煲鸡汤
    .NET获取客户端信息 (C#)
  • 原文地址:https://www.cnblogs.com/birdofparadise/p/9272677.html
Copyright © 2020-2023  润新知