孤勇者钢琴谱简谱c调:使用 C# 弹奏钢琴音调(c# on piano)

我试图在 C # 中做一个简单的钢琴应用程序。

它应该是一个非常简单的钢琴(5 或 6 键最大)。

console.beep();但我觉得它的声音不像钢琴的音调

保存和播放 W 文件。我想到了获得钢琴音调的 wav 文件,但我觉得这是一个艰难的方法,它不会是可销售的,任何可能需要很多不需要的空间

是否有一个图书馆弹奏类似钢琴的音调或不同乐器的任何不同音调?

11

查看 Mike Gold 的Virtual Piano in C#的可下载源代码。我认为它具有您要查找的内容。

您可能还想看看这篇文章:Is it possible to generate a constant sound in C# while adjusting its frequency?。基本思想是您有一个样本,并且您以编程方式操纵声音文件的频率,从而生成不同的音符。

至于可以帮助你的库,你可以看看:

NAudio@ codeplex

C# MIDI Toolkit@ codeproject

Wrapper Library for Windows MIDI API@ codeproject

7

你想过使用 MIDI 吗?

这可能是有用的。

Seehttp://grouplab.cpsc.ucalgary.ca/cookbook/index.php/VisualStudio/HowToPlayMIDIInstruments

这个非常有趣,它允许您以这样的简单方式播放声音:

MidiPlayer.Play( new NoteOn( 0, 1, "C4", 127 ) );

您还可以查看此代码项目页。请参阅http://www.codeproject.com/KB/audio-video/MIDIToolkit.aspx

1

保存和播放 W 文件我想到了获取钢琴音调的 wav 文件,但我觉得这是一个艰难的方式,它不会是可销售的任何可能需要很多不需要的空间

我不知道你正在寻求什么水平的现实主义,但高端数码钢琴每个键有几个数字样本来代表硬 / 软键按压的不同动态,所以我不排除这种可能性。

较小的音高调整可以减少所需的样本数量,例如,一个音符通常可以调高 / 调低几个半音,而不会降低太多。

或者,您可以考虑播放 MIDI 样本。几乎所有现代声卡都具有基本的 128 个 MIDI 补丁,尽管质量差异很大。

本站系公益性非盈利分享网址,本文来自用户投稿,不代表边看边学立场,如若转载,请注明出处

(299)
笔记本cpu换硅脂:Jupyter笔记本未加载笔记本
上一篇
服务器开发需要学什么:Web服务器和开发服务器有什么区别
下一篇

相关推荐

  • C rdf:SemWeb-将C#对象转换为RDF三元组

    关于C rdf的问题,在semweb中经常遇到,我想要的是使用 semweb 将 C # 类实例转换为 rdf 三元组,以便用数据填充我的本体。我的类由原始属性和其他类组成,并且我构建了具有相同结构的本体。例如…

    2024-02-19 13:52:43
    0 83 99
  • Net程序员招聘:学习 C#作为VB.NET程序员

    关于Net程序员招聘的问题,在net programmer中经常遇到,我希望切换到 C #。我来自 C / C ++ 背景,但 C # 对我来说有点不同。我切换主要是因为 Silverlight 和 MVVM;所有示例都在 C # 中。任何信息都在 C # 中,当我阅读这一切时,我感到困惑。…

    2024-01-04 16:17:46
    0 41 39
  • Ccm膜电极:C#的GCM或 CCM实现

    关于Ccm膜电极的问题,在ccm net中经常遇到,任何一个可以指向我 CBC-MAC 模式 (CCM) 或 Galois / 计数器模式 (GCM) 在 C# 中的任何实时实现?似乎微软没有创建任何类似于 AesCryptoServiceProvider 的实现。我对吗?…

    2024-02-19 05:28:25
    0 18 80
  • Cpvc和mpp电力管区别:用 C#读取“.mpp”文件(mpp viewer open source)

    关于Cpvc和mpp电力管区别的问题,在mpp viewer open source中经常遇到,我正在使用 Windows 窗体,并通过事件“OpenFileDialog.OpenFile”的对话框窗口,但我有一个问题,因为我尝试读取扩展名为“mpp”的 Microsoft Project 文件。…

    2023-10-21 15:48:16
    0 23 10
  • 贪吃蛇c#:C++ 贪吃蛇游戏尾虫(snake eating fruit game)

    关于贪吃蛇c#的问题,在snake eating fruit game中经常遇到,我想使用控制台 C++ 创建一个简单的蛇游戏,我目前正在创建蛇的尾巴部分,当蛇吃水果时,它在它的尾巴上加了一段,问题是游戏运行良好,直到第 3 个水果,这时虽然蛇增加了一个尾巴部分,但它会笨拙地移动,并会移动右壁。…

    2024-01-26 13:05:41
    0 87 20
  • C#线程安全:C# 中的线程安全属性(safe properties)

    关于C#线程安全的问题,在safe properties中经常遇到,我试图在 C # 中创建线程安全属性,我想确保我在正确的路径-这里是我所做的-…

    2024-01-22 12:34:29
    0 18 31
  • C#画直线:C# 变换直线方程以更改参考原点和角度

    关于C#画直线的问题,在translation equation中经常遇到,假设我有以下情况。我有一个形式为y = mx + q的直线方程,指的是xOyplain。我需要将直线方程转换为x 'O' y 'plain。您将如何有效地进行?…

    2024-01-14 08:51:29
    0 57 72
  • C语言单选题:C# 简单选择排序(selection sort c#)

    关于C语言单选题的问题,在selection sort c#中经常遇到,我试图为数组做选择排序。但由于某种原因它不会排序。我的代码:…

    2024-01-28 07:16:50
    0 68 58

发表评论

登录 后才能评论

评论列表(48条)