已编辑,请参阅下文
我需要一个库来在音乐制作软件上显示音乐符号的图形。它将与Sibelius一样:基本上用户创建乐谱,应用程序发送midi输出。
我不是在寻找一个显示音乐符号的库,因为我必须自己实现各种原因。此外,我正在寻找的库必须是跨平台的(至少应该在Windows和Linux上运行)。
图形将基于矢量或使用“line(point1,point2);”等函数绘制。
(在继续之前让我说我是C ++的新手,我的大多数经验都是使用解释语言 - 主要是PureData和Processing)
现在回答问题:
修改
我看到这被标记为偏离主题。对不起,我是新来的。我已经看到some posts要求这种推荐,所以我认为这没关系。好吧,我会尽力做到客观和直截了当
问题:
我需要绘制音乐符号图形,但我不想处理低级别的东西(如Cinder,SDL,SFML,Ati-Grain)。那么,其他可用的技术是什么?也就是说,其他选择是什么?
答案 0 :(得分:0)
您所描述的是很多工作,对于像您这样编程经验有限的人来说,这是不可能实现的。 C ++既不是一种简单的语言,也不是一种原谅的语言..它不仅仅是学习语法(如处理或类似语言的自动垃圾收集的情况) - 它还涉及管理内存和其他资源,不变量等 - 离开除了链接,编译等的复杂性之外:反过来,这一先决条件使您可以全面了解计算机在较低级别的工作方式。
无论如何,我会尽力回答你的问题:
你可以用煤渣做到这一点 - 这可能意味着必须重新发明轮子 - 但你可以做到。然而,我不会说,煤渣真的适合这样的任务。这适用于加速的2D / 3D计算机图形。你想要的是一些更通用的GUI库(也许是QT?)。关于midi-support,无论如何你可能不得不依赖其他一些库。
如今大多数计算机都支持openGL。同样,你真的不需要openGL来做你想做的事情。
是的,你可以在理论上做到这一点 - 但这并不容易,对你想做的事情来说并不是真的有必要。
OpenCV绝对不是。这是用于图像处理 - 即光栅图形 - 您需要矢量图形。不要说OpenCV的Highgui在某些事情上确实很慢,所以你不得不使用其他一些库进行渲染。我没有其他图书馆的经验。我的建议是使用一些解释语言,如python,luaAV或者可能是SuperCollider(顺便提一下内置midi支持),这比C ++容易得多,或者搜索一些开源音乐符号替代方案(如果有的话) - >你总是可以在现有的代码库上构建自己的东西 - 重新发明轮子是不必要的......