Difference between revisions of "Connected Open Source"
From Audacity Wiki
Galeandrews (talk | contribs) (minor tidy and more links) |
Galeandrews (talk | contribs) (Moved Scripting to the Manual as intended) |
||
Line 4: | Line 4: | ||
==Script Engine== | ==Script Engine== | ||
− | * We have a built-in language, [[:Category:Nyquist|Nyquist]], based on XLISP. However we made a policy decision around scripting to NOT build in LUA, Perl, Javascript or other script languages. Instead, under Windows, we have [ | + | * We have a built-in language, [[:Category:Nyquist|Nyquist]], based on XLISP. However we made a policy decision around scripting to NOT build in LUA, Perl, Javascript or other script languages. Instead, under Windows, we have [http://manual.audacityteam.org/index.php?title=Scripting experimental code] that can take commands from any script language that supports pipes. |
Revision as of 02:25, 21 September 2009
Applications often grow so they contain a script engine, an FTP client, a text editor, a kitchen sink.... We're fighting back against that trend. We have to. We're a small team. The idea instead is connected open source - where possible, re-use existing programs.
|
Contents
Script Engine
- We have a built-in language, Nyquist, based on XLISP. However we made a policy decision around scripting to NOT build in LUA, Perl, Javascript or other script languages. Instead, under Windows, we have experimental code that can take commands from any script language that supports pipes.
Generic GUI Code
- Some of our code is 'framework' code that belongs back in wxWidgets. To allow for that, certain files in the Audacity project CVS are marked as under the wxWidgets license. This is a more permissive license than the GPL. As a result, we can release Audacity as GPL and at the same time, the widget-related framework code is available to the wxWidget project under its own license.
FTP Client (for Podcasting)
- Insert text here
Text Editor
- We don't yet have a text editor, however there has been some talk of an XML editor to edit the project files. It will be needed as Audacity develops, for similar reasons that Inkscape needs a text-based XML editor for editing its SVG files. XCE is one good open source XML editor, or maybe we could use a variant of Notepad++ . Maybe a DOM interface will suffice for talking between the editor and Audacity.
MIDI Processing
- We don't want to build a MIDI sequencer into Audacity. There are good open source ones out there already. We do want to build good bridges to them.
Advanced Graphics
- For some of our plans we need translucency and anti-aliased lines. For LV2 we need to render 'SVG Icons', so will we become an SVG editor too? Most likely we'll solve it by using Cairo as our render library, or perhaps find a higher level SVG abstraction and use that.
Open (Audio) Standards
Where possible our bridges to other applications should be using (open) standards rather than ad-hoc interfaces.