作为一个音乐家或生产者,有很多原因,你可能想使自己的音乐软件。也许你已得到了吉他放大器建模应用现有的应用程序不这样做了新的思路。也许你正在寻找一种方式来唯一地控制您的MIDI软件与游戏控制器。或者你可能会作出自己的MIDI控制器,并且希望能够通过软件编辑器来编辑它。以及所有的这些想法可以进行使用多个不同的应用程序和平台不适被覆盖在本文中的一个现实。
大多数人认为,要创造自己的软件,你需要成为专家编码。然而,大多数这里讨论的平台的音乐家,艺术家,和设计师创造的软件是专门设计的快速,而无需知道太多关于软件开发,与一对夫妇的是不要求你无需编写任何代码在所有平台!
有一些标准,我将涵盖在这里,将决定哪个平台是最适合你:
- 你想让你的软件做什么
- 你愿意学习如何编写代码
- 你希望你的应用程序上运行,例如操作系统,Mac OS X,Windows,Linux和iOS上,Android的嵌入式平台。
- 你想创建,例如,独立的应用程序,音频插件,Web应用软件的格式。
- 无论您的应用仅仅是自用或要释放它
- 您的预算
最大/ MSP
基思·麦克米伦仪器PolyFuzz,开发的FX处理应用程序中使用最多
马克斯(及其对应的音频,MSP),由骑自行车74开发的,是一种图形化编程语言的音乐和多媒体应用的发展,以及许多被称为制作互动音乐软件性能的最佳平台。马克斯环境包括一组各自具有多个输入和输出用于修改,并通过数据和音频图形对象中的。每个对象都有自己特定的功能,并通过跳线,全图形化奠定了被称为补丁的帆布,能在视方式无限数量来配置你希望你的程序做什么是连接在一起的。
最大/ MSP让你做几乎与音频和MIDIinput /输出,合成/生成,记录/测序,效果/修改,分析和VST托管任何东西,而不需要编写任何代码。另外还有一点,允许开发一个大型社区,为软件创造许多外部对象开发工具包。除了作为在音乐黑客社区非常流行,它也被用在商业软件,诸如用于编辑应用的许多铁青仪器和KMI硬件控制器的发展。如果你是一个Ableton现场的用户,你可以在它的最大认可Live下的Max格式,它允许创建定制Live设备,但最大构建的应用程序可以很容易地连接到通过ReWire的其他数字音频工作站。
一个简单的最大色块的例子
马克斯7适用于OS X和Windows,并可以购买399美元,或通过从8.25美元每月的订阅服务。马克斯创建的程序可以导出为可自由共享或商业销售独立的应用程序。看到骑自行车74网站了解更多详情。
纯数据
Ponyomixer,建有纯数据的音频混音器应用程序
纯数据(又名PD)是另一种图形化编程环境,是基于相同的修补程序语言作为最大/ MSP的。再次,该环境包括在该通过接插线连接在一起的图形画布对象,虽然而提供的功能非常类似于最大的,有许多的两个平台之间的差异。
PD是一个开源平台,主要通过发展用户的社区,而不是一个商业业务。这样做的好处是,它是完全自由地使用,并且它的开放性允许它的功能将大大地由大量的人延伸,以及如果需要的话被定制自己。但是这样做的缺点是,它没有专业的支持和用户群的最大/ MSP,接近PD时,这意味着一个孤单陡峭的学习曲线。另一个缺点(即有时与开放源代码软件中发现)是用户界面不是一样光滑和抛光作为最大的,你不能创建接口的吸引力。
一个纯数据色块的例子
PD适用于OS X,Windows和Linux(包括嵌入式Linux系统,如树莓派)。在OS X,你可以在你的程序的PD出口很容易作为一个独立的应用程序,但是如果您希望用户必须安装PD它运行到分享您的基于Windows或Linux程序。如果您想通过图形化编程来构建自己的音乐软件,但不要有金钱为最大/ MSP,你不需要一个真正具有专业外观的应用程序,PD将是您一个不错的选择。见纯数据的网站了解更多信息。
处理
同步/失去了3比特,开发的应用程序的安装使用处理
处理是一个开源的文本编程语言和最初创建的视觉环境中教计算机编程基础的开发环境,但是它也一直以来所采用的专业人士作为一种简单的方法来创建多媒体应用。是开源的,这部分是由一个小团队已经创造了许多扩展到软件志愿者开发的,但它主要是由集团下属与各学校和大学的个人发展。虽然加工主要用于创建图形,图像和动画的应用程序,它包含了许多库,使得它发展的音频和MIDI软件的最佳候选。
加工编程语言被设计成易于语法的第一个编程语言languagea那将是不令人生畏的人完全新的编程。有许多的书籍和在线教程,教如何使用处理,但是作为一个文本语言可能意味着有比最大/ MSP或PD的陡峭的学习曲线。但是,如果你是严重的进入软件开发,你会发现,文本语言给你更多的灵活性。处理提供了音频和MIDI输入/输出,效果波和噪音的产生,分析和信封一代,虽然能力的arent强如马克斯或PD的。但是,如果你希望你的应用程序有一个完全自定义的用户界面,作为处理语言为您提供了更大的控制权申请的样子和方式,用户可以用它进行交互处理会是一个更好的选择。
加工环境和示例代码
处理2.0适用于OS X,Windows和Linux(桌面和嵌入式),并且是完全免费使用。处理程序可以出口到独立的应用程序在所有平台上,并且可以自由发布。也有可用于在网页中嵌入你的程序,以及在iOS或Android设备上运行他们的工具。请参阅处理网站了解更多详情。
了openFrameworks
宇宙由sonicLAB,软件合成建成了openFrameworks
了openFrameworks是一个开源工具箱,用于开发互动性和多媒体应用。这是非常相似的处理,因为它是专为艺术家和设计师在使用文本编程语言,隶属于大学和实验室技术的个人组成的核心团队开发出一种简单的方式来创建软件。然而也有一些的两个平台之间的差异。
使用了openFrameworks C编程语言,而不是自己的语言。 C是一个非常广泛的应用,这使得它有用的语言,如果你是认真的进入软件开发掌握,并允许了openFrameworks代码与其它C工具包混合,如果需要的话。 ç不是一样的初学者友好的处理,但使用了openFrameworks的方式,使得它易于使用的语言,并附带了许多实例和示范项目。
其次,需要了openFrameworks一个集成开发环境(IDE),用于编写和构建程序,而不是它自己的环境/应用程序。了openFrameworks可以使用最常用的IDE所有支持的操作系统(例如Xcode中在OS X,在Windows的Visual Studio),虽然这些IDE比处理环境更为复杂,它们是掌握软件非常有用的应用发展努力。
最后,就是了openFrameworks更快,更灵活,比处理更加复杂,并具有更强大的音频功能(例如,你可以处理在每个采样的基础上的音频流),虽然这并不意味着组建一个音频应用程序可能不会那么快和容易使用的处理。
在苹果的Xcode IDE的项目了openFrameworks
了openFrameworks可用于开发OS X,Windows和Linux(桌面和嵌入式),IOS和Android应用程序,并且可以免费使用。独立应用程序可以为每个平台构建,并且可以自由地共享和出售,商购的或非商购。如果您一定记住一个相当复杂的音频应用程序,但不必须挖得深到软件开发的时候,这将是你使用一个良好的平台。看到了openFrameworks的网站了解更多信息。
JUCE
AlphaLive由NU desinz,开发出的MIDI编辑器应用程序使用JUCE
JUCE是另一个C库,但同时了openFrameworks(和处理)的设计主要是为艺术家和设计师创造的软件很容易没有得到太多参与了代码的复杂性,JUCE的设计是一个全功能于一身的平台,用于开发丰富,跨平台的应用程序和插件,具有较强的重点放在音频和MIDI的应用程序。而以前的两个平台主要用于艺术装置和交互式项目,JUCE已被用于许多商业应用的开发由诸如Korg的,的M-Audio,PreSonus的,图像线,Arturia,甚至对最大的开发公司/ MSP!
JUCE是最复杂的平台,在这里盖的,但它有许多工具和功能,使其成为一个很好的选择,即使对于新的开发人员。首先,它有一个叫Introjucer工具,它可以作为一个向导生成和配置IDE项目和代码在一个简单的方法。它还包含一个所见即所得的用户界面编辑器,允许你设计接口,而无需编写任何代码。其次,它附带了许多示范项目,给予一切的例子可以与JUCE做,以及如何去做。接着,直到最近,JUCE已经由一个单一个体,使得基本代码高度一致,识字和易于使用。该代码也非常有据可查。最后,该库可以处理几乎一切关于建筑的音频和MIDI应用程序。它甚至可以被用来开发跨平台的音频插件(AU,VST,RTAS,AXX)使用单一的项目,这是主要的原因,是其中的音频软件公司如此受欢迎之一。
在苹果的Xcode IDE中的项目JUCE
JUCE可用于开发OS X,Windows和Linux(桌面和嵌入式),IOS和Android应用程序。它是免费使用的开源项目,但如果你想发布您的应用程序不释放代码,你需要购买商业授权,从595美元启动。如果你是认真的开发商业应用程序或进入软件开发为职业,我强烈建议JUCE。它拥有在所有这里所涉及的平台上最陡的学习曲线,但在关于开发音频应用没有很多JUCE不能做。见JUCE网站了解更多详情。
因此,无论您想了解如何编写与否,这五个平台,意味着你的任何音乐软件的想法可以很容易地实现。
Discussion
Want to join the discussion?
Create an account or login to get started!