`

Java播放midi文件

    博客分类:
  • Java
阅读更多

如下面代码,运行后即可播放:

import java.io.File;

import javax.sound.midi.MidiSystem;
import javax.sound.midi.Sequence;
import javax.sound.midi.Sequencer;

public class PlayMidi
{
    private static File sound;
    private static Sequence seq;
    private static Sequencer midi;
    
    public static void Play(String filename)
    {
    	 try 
         {
             sound = new File(filename);
             seq = MidiSystem.getSequence(sound);
             midi= MidiSystem.getSequencer();
             midi.open();
             midi.setSequence(seq);
             
             if(!midi.isRunning())
             	midi.start();
             
         } catch (Exception ex) {
         }
    }
    
    public static void Stop()
    {
    	if(midi.isRunning())
			midi.stop();
    	
    	if(midi.isOpen())
    		midi.close();
    }
    
    public static void main(String[] args)
    {
    	PlayMidi.Play("D:\\tianhou.mid");
    	long time = midi.getMicrosecondLength()/1000;

    	try 
    	{
			Thread.sleep(time);
		} catch (InterruptedException e) {
			e.printStackTrace();
		}
		
		PlayMidi.Stop();
    }
} 

  

1
0
分享到:
评论

相关推荐

    java编程播放MIDI音乐(转)

    本文将详细解析一个简单的Java应用程序,该程序能够加载并播放MIDI文件。 #### 二、关键类与接口简介 在解析代码之前,先了解几个重要的Java类和接口: 1. **`javax.sound.midi.Sequence`**:表示MIDI序列。 2. **...

    Android解析midi文件

    本教程将深入探讨如何在Android中解析MIDI文件,通过Java编程语言实现。 首先,我们需要了解MIDI文件的基本结构。MIDI文件由一系列事件组成,包括音符开始、音符结束、控制器变化等。这些事件被组织在称为“轨道”...

    Java利用Midi播放音乐

    这段代码中,`getSequencer()`方法获取一个默认的`Sequencer`实例,`open()`方法打开它,`getSequence()`方法读取MIDI文件,`setSequence()`方法设置要播放的序列,最后`start()`方法启动播放。 MIDI系统还支持合成...

    Java Midi player

    这款播放器利用了Java 5中的MIDI API来实现对MIDI文件的解析和播放功能。MIDI是一种数字音乐标准,它允许不同设备之间交换音乐数据,而不仅仅是播放音频,还包括乐谱、演奏控制等信息。 Java MIDI API是Java平台...

    播放midi音频 源程序

    综上所述,播放MIDI音频源程序涉及对MIDI文件的理解、选择合适的库或API、与MIDI设备的交互以及音序器的实现。通过深入学习和实践,开发者可以创建出功能丰富的音乐应用,满足从简单播放到复杂音乐创作的各种需求。

    SUN_JAVA_DEMO.rar_DEMO_java midi_midi_midi piano_sun midi

    在Java中,MIDI API包含在`javax.sound.midi`包中,提供了一系列类和接口,用于读取、写入MIDI文件,发送MIDI消息,以及合成和回放MIDI音乐。 在提供的压缩包中,有两个关键的源代码文件: 1. **MidiSynth.java**...

    midi文件解析

    MIDI(Musical Instrument Digital Interface)文件是一种广泛用于电子音乐和数字音频的格式,它以...通过封装成Java应用,我们可以创建工具来分析、显示和可能播放MIDI文件,这对于音乐创作、教育或分析都极具价值。

    为Java程序中添加播放MIDI音乐功能.doc

    在上述示例中,当所有MIDI文件播放完或者程序结束时,我们调用`sequencer.close()`来释放MIDI设备,确保不会占用过多内存。 在实际应用中,可能还需要考虑其他因素,比如错误处理、线程同步、用户交互等。另外,...

    如何在Java应用程序中播放声音文件

    在Java中,可以使用`javax.sound.midi`包来播放MIDI文件。该包提供了处理MIDI数据的各种类和接口,包括播放、录制、编辑和合成等功能。 **代码示例:** ```java import javax.sound.midi.Sequence; import javax....

    java播放音频文件jar包

    Java 播放音频文件是Java编程中一个实用的功能,特别是在开发多媒体应用或者游戏时。在Java中,我们可以使用多种库来实现音频播放,而jar包通常包含了这些库的实现。下面将详细介绍如何在Java中播放音频文件以及相关...

    CreateSequence.rar_java midi_midi

    这个程序示例主要讲解了如何在Java中创建一个MIDI文件,对于理解和操作MIDI数据流非常有帮助。 首先,我们要了解Java中的MIDI API,它是Java Sound的一部分,位于`javax.sound.midi`包中。这个API提供了各种类和...

    mdid.rar_MIDI文件源代码_midi程序

    描述中提到,“这是一个简单的midi源代码,主要用于打开midi文件,播放此程序”,这意味着这个程序实现了读取MIDI文件并将其转化为可听的音频输出的功能。对于初学者而言,通过阅读和理解这样的源代码,可以了解如何...

    java写的MID播放器

    开发MID播放器时,我们需要通过Java Sound API来读取和播放MIDI文件。 2. **MidiSystem类**:是Java Sound API中的核心类之一,用于与MIDI设备交互。我们可以通过MidiSystem的getSequence()方法加载MIDI文件,然后...

    mid文件解析成曲谱

    在这个过程中,我们需要理解MIDI文件的结构,以及如何将其转换为自定义View的组件来实现播放和滚动功能。 首先,MIDI文件由一系列的事件组成,这些事件包括音符开始、音符结束、控制变化、程序变更等。每个事件都有...

    java 下midi 和 sound 的编程

    简要介绍了MIDI的基本原理,包括MIDI线协议和标准MIDI文件。 ##### Java Sound API中的MIDI Java Sound API提供了处理MIDI数据的能力,包括MIDI消息的发送和接收等。 通过以上内容可以看出,Java Sound API为...

    javamidihandling:一些使用 java 实用程序读写播放 MIDI 文件的 java 代码片段

    通过`javamidihandling`项目,开发者可以学习如何利用Java的强大功能来处理MIDI文件,从而在应用程序中集成音乐播放和创作功能。这不仅有助于理解MIDI格式,还可以提升Java编程技巧。在实际应用中,这些知识可以用于...

    调用外部函数播放midi.a6p.rar_mid_midi

    为了播放MIDI文件,我们需要一个MIDI合成器,它可以是硬件设备,也可以是软件模拟器。在大多数现代计算机上,操作系统通常内置了软synth(软件合成器),例如Windows的Microsoft GS Wavetable Synth或MacOS的Core ...

    关于Android—midi代码

    1. 播放.mid 音频文件:通过 Java 编程,播放 MIDI 声音文件时,先从文件中得到 sequence,生成音序器(sequencer),通过 open()打开设备,把音序 sequence 通过 setSequence()装载到sequencer。将 sequence 转化为...

    MidiReader:一个简单的 Java 库,用于从 Midi 文件中读取事件

    阅读器一个简单的零依赖 Java 库,用于从 Midi 文件读取事件。 MidiReader 类创建一个迭代器,它一次读取 Midi 文件中的所有轨道(对于同步多轨道文件)。 它将 Midi 事件混合成单个序列,以便按时间顺序检索事件。 ...

    android midi相关开源软件和库

    开发者可以利用这些功能在Android应用中实现MIDI文件的可视化,比如创建一个能够浏览和播放MIDI文件的乐谱阅读器。学习此项目需要掌握MIDI文件格式、音乐理论以及图像处理技术。 4. **USB-MIDI-Driver**: 这个...

Global site tag (gtag.js) - Google Analytics