简而言之,我正在寻找JFugue的.NET翻译.
更新
我意识到JFugue没有真正的.NET替代方案,对于想要自己开发它的人来说,下面的帖子总是很棒.
谢谢你们所有人.
注意:我想强调我的搜索是在转录部分,而不是播放部分,换句话说,我正在寻找具有MIDI映射类等的.NET引擎.
到目前为止,NAudio似乎是最热门的替代品.
我尝试了各种方法来做到这一点.
使用proxymusic-2.0.jar Library =>在Java对象和Xml文件之间完成编组和解组,但我没有找到一种方法从Android应用程序上的Xml文件中取消编组(Activity,View等)
使用JFugue-4.0.3-with-musicxml.jar Library =>我认为这个库非常有用,因为MusicXmlParser,MusicXmlRenderer和ParserListener类.然而,目前Midi对Android的支持状态令人沮丧.他们扯掉了javax.sound.midi,所以依赖于它的所有库都无法正常工作.(比如JFugue,例如OMG).
我只想在android上将musicXml文件显示为乐谱!请向我推荐参考站点,或者让我知道解决此问题的简单示例代码URL.
非常感谢你.
使用JFugue,合成音乐就像这样简单:
Player player = new Player();
player.play("C D E F G A B");
Run Code Online (Sandbox Code Playgroud)
虽然我确实知道大多数浏览器仍在开发HTML5 Audio API,但我很不知道这些浏览器是否支持这样的API.
我正在运行Jfugue测试程序,这里是代码:
package ge;
import org.jfugue.*;
public class GE {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
Player player = new Player();
Pattern pattern = new Pattern("C D E F G A B I[MARIMBA]");
player.play(pattern);
System.exit(0); // If using Java 1.4 or lower
}
}
Run Code Online (Sandbox Code Playgroud)
到目前为止代码确实有效,也就是说,它编译并播放音符.但是,我可以随心所欲地改变乐器,我总是得到钢琴音乐.
我怎么能改变这个?
我正在尝试向我的 pom.xml 添加依赖项并面临问题:IntelliJ 错误
无法解析 jfugue:jfugue:5.0.9
我想添加的依赖项是下面的https://mvnrepository.com/artifact/jfugue/jfugue/5.0.9
<!-- https://mvnrepository.com/artifact/jfugue/jfugue -->
<dependency>
<groupId>jfugue</groupId>
<artifactId>jfugue</artifactId>
<version>5.0.9</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)
只需将 Maven 中的 xml-snippet 添加到我的 pom 中并刷新或重新加载所有 Maven 项目,添加其他依赖项就没有问题。例如,我在同一个 pom 中具有此依赖项,该 pom 工作正常:
<!-- https://mvnrepository.com/artifact/org.jsoup/jsoup -->
<dependency>
<groupId>org.jsoup</groupId>
<artifactId>jsoup</artifactId>
<version>1.14.3</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)
但是,片段下方有一条注释,可以复制粘贴,https://mvnrepository.com/artifact/jfugue/jfugue/5.0.9
注意:此工件位于 SingGroup 存储库 ( https://maven.sing-group.org/repository/maven/ )
我需要在 pom 中添加什么,以便我可以在我的项目中使用该依赖项并消除错误?
无法解析 jfugue:jfugue:5.0.9
提前致谢。