您的位置:首页 - 教程 - Java - 正文

java midi音乐文件播放器

java midi音乐文件播放器

import javax.swing.*;

import javax.sound.midi.*;

import java.awt.GridLayout;

import java.io.File;

public class MidiPlayer extends JFrame {

@SuppressWarnings("deprecation")

MidiPlayer(String song) {

super(song);

setSize(300, 150);

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

MidiPanel midi = new MidiPanel(song);

JPanel pane = new JPanel();

pane.add(midi);

setContentPane(pane);

show();

}

public static void main(String[] arguments) {

MidiPlayer pm = new MidiPlayer("c:\\1.midi"); // midi文件

}

}

class MidiPanel extends JPanel implements Runnable {

Thread runner;

JProgressBar progress = new JProgressBar();

Sequence currentSound;// 音序

Sequencer player;// 默认音序器

String songFile;// 歌曲

MidiPanel(String song) {

super();

songFile = song;

JLabel label = new JLabel("Playing file...");

setLayout(new GridLayout(2, 1));

add(label);

add(progress);

if (runner == null) {

runner = new Thread(this);

runner.start();

}

}

public void run() {

try {

System.out.println(songFile);

File file = new File(songFile);

currentSound = MidiSystem.getSequence(file);// 获取音序文件

player = MidiSystem.getSequencer();// 获取音序器

player.open();

player.setSequence(currentSound);// 设置音序器播放指定音乐文件

progress.setMinimum(0);

progress.setMaximum((int) player.getMicrosecondLength());// 设置最大位歌曲时间

player.start();

while (player.isRunning()) {

progress.setValue((int) player.getMicrosecondPosition());// 设置播放文件显示当前播放进度

try {

Thread.sleep(1000);

} catch (Exception e) {

// TODO: handle exception

}

}

player.close();

} catch (Exception e) {

// TODO: handle exception

}

}

}

评论:

java mp3转midi_java midi音乐文件播放器相关推荐

  1. midi java_java midi音乐文件播放器

    [java]代码库import javax.swing.*; import javax.sound.midi.*; import java.awt.GridLayout; import java.io ...

  2. MIDI应用: 播放midi音乐文件的方法 [Win32版本+ C语言版本]

    播放midi音乐文件的方法 背景说明: 在游戏编程中,给程序增加音效几乎是必须的;在普通程序中增加音效也会给使用者带来更好的体验;而mid格式的音效文件体积最小(大约1k到数十k),效果却不亚于MP3 ...

  3. java wav音频文件播放器demo

    java 简易wav音频文件播放器 测试文件 源码 相关资料 测试文件 csdn下载 : https://download.csdn.net/download/qq_41054313/18704149 ...

  4. 《电脑音乐制作实战指南:伴奏、录歌、MTV全攻略》——1.7 将多个MIDI音乐文件合成为一个文件...

    本节书摘来自异步社区<电脑音乐制作实战指南:伴奏.录歌.MTV全攻略>一书中的第1章,第1.7节,作者 健逗,更多章节内容可以访问云栖社区"异步社区"公众号查看. 1. ...

  5. 【Python】音乐可视化播放器(PyQt5 + matplotlib.animation)

    前言 最近同学有个作业,做音乐可视化播放器,为了学习PyQt,我就尝试做了做.该设计主要分为音乐播放器和可视化两部分.两部分单独做相对于结合在一起容易很多,结合的过程遇到了很多麻烦. 音乐播放器: 采 ...

  6. C语言里的out函数,c语言 vc 用waveout函数写wave文件播放器

    用WaveOut函数写wave文件播放器 要炒菜的话,就得先准备工具,如锅.铲子.炉灶等.对程序来说,就是各种函数的应用.WaveOut函数在windowsAPI中属于低阶接口,用来播放的话需要用到下 ...

  7. html在线音频播放器实训总结,HTML5音乐列表播放器SMusic开发总结

    前段时间写过一篇介绍简单音乐播放器效果开发的博文<为你的博客添加简单的CSS3音乐播放器>,实现了单曲循环播放效果,这个效果也是我的博客首页一直有的效果,同时文中也介绍了一些简单的HTML ...

  8. 利用DirectShow开发C#版的音频文件播放器(三)

    前面曾经讲到了利用利用DirectShow开发C#版的MP3播放器,这篇文章是对前面两篇文章的补充与升华. 首先,大家不难发现,这篇文章的标题已经修改为音频文件播放器,而不仅仅是针对MP3一种格式,支 ...

  9. kplay - 一款可实时调音的免费开源的wav文件播放器

    介绍 kplay是一款可实时调音的免费开源的wav文件播放器.虽然没有GUI,然而其命令行的操作方式却更简洁明了.它把键盘当做调音按钮,简单地触碰键盘按键就能实时改变音乐播放的音调和节拍,给人带来别样 ...

最新文章

  1. 数据分析 python 用途-利用Python数据分析可以实现些什么功能呢?
  2. 为什么在Python里推荐使用多进程而不是多线程?(为什么python多线程无法增加CPU使用率?)...
  3. 【已解决】TypeError: bind() takes exactly one argument (2 given)
  4. 全局配置_配置全局异常处理,结果没有想到,spring boot实践(3)
  5. php数据趋势曲线,数据曲线图怎么做
  6. 作者:胡晓彦(1987-),女,中国科学院国家空间科学中心助理研究员
  7. C/C++基本数据类型
  8. 从20 年程序员老兵做到上市公司合伙人,怎么少踩坑?
  9. POJ NOI MATH-7831 计算星期几
  10. 2018年python工作好找吗-2018年排名前20的数据科学Python库
  11. 鸿蒙系统正式面世,跨时代!“鸿蒙”系统正式面世!余承东:如有必要随时可替代安卓...
  12. 消息队列常见的使用场景
  13. python,文件md5校验
  14. Word VBA:MathType公式与Latex公式切换
  15. 【在线电子书制作】云展网教程 | 文本复制按钮
  16. 夯实Java基础系列8:深入理解Java内部类及其实现原理
  17. mvc:annotation-driven
  18. ios逆向笔记--越狱IOS平台简介
  19. java计算工龄_java计算工龄
  20. Python编程基础 第七章 编程练习 用户从键盘上输入一个字符串,如果该字符串的内容不是有效的数值,则输出invalid;如果是有效的数值,再判断其是否是整数,如果是整数则输出yes,否则输出no。

热门文章

  1. asmack搜索添加好友
  2. 逆水寒服务器列表文件,逆水寒目前服务器
  3. 苹果关闭自动更新_iOS终于有这个功能,可以关闭自动更新
  4. 聊聊Java系列-集合之HashMap底层结构原理
  5. nanopc-T4 开发板通过USB麦克风采集录制音频
  6. 深度学习常用的backbone有哪些
  7. android 使用手势
  8. 怎么看安装包是什么bit的_微信分付和支付分有什么区别 分付额度怎么看
  9. 链家新房性能挑战赛小结
  10. excel函数——IF、AND、OR、NOT