【问题标题】:NAudio - Playing back MIDI from StreamNAudio - 从 Stream 播放 MIDI
【发布时间】:2013-04-12 08:40:14
【问题描述】:

我正在制作游戏并使用 NAudio 播放声音。我想在后台播放 MIDI 文件以进行音乐循环。在文档中搜索它,一无所获。

如何从流中播放 MIDI 文件?

然后循环播放?

谢谢。

【问题讨论】:

  • 很遗憾,这不是 NAudio 的功能。一些更多面向游戏开发的音频库可能会在这里提供更好的选择。
  • @MarkHeath 感谢您的回复。我正在使用来自winmm.dllmciSendString 播放midi 文件

标签: c# playback midi naudio


【解决方案1】:

您可以通过DryWetMIDI轻松做到这一点:

using Melanchall.DryWetMidi.Devices;
using Melanchall.DryWetMidi.Core;

// ...

var midiFile = MidiFile.Read("Background music.mid");
// or from stream:
// var midiFile = MidiFile.Read(stream);

var outputDevice = OutputDevice.GetByName("MIDI device to play with");
var playback = midiFile.GetPlayback(outputDevice);

playback.Loop = true;
playback.Start();

在库文档的Playback 文章中阅读有关回放的更多信息。

【讨论】:

    猜你喜欢
    • 2013-05-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多