【问题标题】:Generate mp3 from midi [closed]从 midi 生成 mp3 [关闭]
【发布时间】:2010-02-21 23:37:05
【问题描述】:

我需要从 MIDI 文件批量生成 MP3 文件。有没有图书馆可以做到这一点?最好是开源并用 .NET 编写

【问题讨论】:

  • @yodaj007:我不认为 LAME 可以读取 MIDI...它必须先转换为波形。
  • 搜索声音字体。如果你有声音字体,我认为 FruitLoops 可以将 MIDI 转换为 mp3。
  • 简短的回答 - 不可能,但我很想知道您实际上想要完成什么。也许还有其他方法可以到达那里。
  • 我有大约 80 首用 MIDI 编写的乐曲,我想将它们转换成 MP3,这样它们就可以在所有计算机上播放并发出相同的声音。
  • is.gd/igp4m -- 我看到很多关于将 MIDI 转换为音频的问题,我不得不写这个。如果您正在考虑编写一些需要这样做的软件系统,请花时间阅读它。

标签: c# .net mp3 midi


【解决方案1】:

您可以使用批处理文件和 vlc 将 midis 转换为 mp3。

正如VLC wiki 中所述,要在 Windows 中播放 midis,您需要 1.1.0 版以及声音字体。此版本目前正在测试中,可以从http://download.videolan.org/pub/videolan/testing/下载

一旦您根据wiki 设置了midi 支持并对其进行了测试(通过播放midi)。您可以设置批处理文件。

我用来将单个midi转换为mp3的命令是

C:\Users\Public\Music>"C:\Program Files\VideoLAN\VLC\vlc" -I dummy -vvv "australia.mid" --sout=#transcode{acodec="mp3",ab="512","channels=2"}:standard{access="file",mux="raw",dst="australia.mp3"} vlc://quit

上述命令将两个文件保存在同一个文件夹中。 我根据VLC wiki- How_to_Batch_Encode上的信息改编了这个命令

【讨论】:

    【解决方案2】:

    您最大的困难是从 midi 转换为任何格式的波形。例如,midi 没有具体说明钢琴的声音,所以每个 MIDI 播放器的声音都会不同。

    【讨论】:

      【解决方案3】:

      这可以通过使用timiditylame来实现:

      timidity myMidiFile.midi -Ow -o - | lame - audioOutput.mp3"
      

      为了满足您的所有批处理需求,请在 bach 脚本中使用这些程序。

      如果它必须与 C 相关,请尝试查看 Csound

      对于 .NET,请查看 NAudio

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2014-05-17
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-12-13
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多