Audio-Nama-1.216/ 0000755 0001750 0001750 00000000000 13544212627 012502 5 ustar jroth jroth Audio-Nama-1.216/MANIFEST 0000644 0001750 0001750 00000004105 13544211573 013632 0 ustar jroth jroth BUILD
Changes
COPYING
inc/Module/Install.pm
inc/Module/Install/Base.pm
inc/Module/Install/Can.pm
inc/Module/Install/Fetch.pm
inc/Module/Install/Makefile.pm
inc/Module/Install/Metadata.pm
inc/Module/Install/Scripts.pm
inc/Module/Install/Win32.pm
inc/Module/Install/WriteAll.pm
Makefile.PL
MANIFEST This list of files
MYMETA.yml
MYMETA.json
README
script/nama
t/01_symbols.t
t/02_assign.t
t/04_object.t
t/06_latency.t
t/11_mark.t
t/12_nama.t
t/data/fake_effects_cache.json
lib/Audio/Nama.pm
lib/Audio/Nama/Globals.pm
lib/Audio/Nama/EcasoundRun.pm
lib/Audio/Nama/Modes.pm
lib/Audio/Nama/Fade.pm
lib/Audio/Nama/MuteSoloFade.pm
lib/Audio/Nama/EcasoundSetup.pm
lib/Audio/Nama/Lat.pm
lib/Audio/Nama/ChainSetup.pm
lib/Audio/Nama/Latency.pm
lib/Audio/Nama/Edit.pm
lib/Audio/Nama/Log.pm
lib/Audio/Nama/Wav.pm
lib/Audio/Nama/Engine.pm
lib/Audio/Nama/CacheTrack.pm
lib/Audio/Nama/Mix.pm
lib/Audio/Nama/Text.pm
lib/Audio/Nama/Object.pm
lib/Audio/Nama/Grammar.pm
lib/Audio/Nama/Jack.pm
lib/Audio/Nama/WavModify.pm
lib/Audio/Nama/Midi.pm
lib/Audio/Nama/Bunch.pm
lib/Audio/Nama/AnalyseLV2.pm
lib/Audio/Nama/Mark.pm
lib/Audio/Nama/Terminal.pm
lib/Audio/Nama/Custom.pm
lib/Audio/Nama/TrackWaveform.pm
lib/Audio/Nama/EcasoundCleanup.pm
lib/Audio/Nama/Help.pm
lib/Audio/Nama/Project.pm
lib/Audio/Nama/Waveform.pm
lib/Audio/Nama/TrackRegion.pm
lib/Audio/Nama/Config.pm
lib/Audio/Nama/TrackEffect.pm
lib/Audio/Nama/Graph.pm
lib/Audio/Nama/Persistence.pm
lib/Audio/Nama/EngineSetup.pm
lib/Audio/Nama/TrackIO.pm
lib/Audio/Nama/Bus.pm
lib/Audio/Nama/TrackComment.pm
lib/Audio/Nama/Insert.pm
lib/Audio/Nama/Regions.pm
lib/Audio/Nama/Git.pm
lib/Audio/Nama/Sequence.pm
lib/Audio/Nama/StatusSnapshot.pm
lib/Audio/Nama/TrackUtils.pm
lib/Audio/Nama/TrackLatency.pm
lib/Audio/Nama/Assign.pm
lib/Audio/Nama/Initializations.pm
lib/Audio/Nama/Util.pm
lib/Audio/Nama/EffectChain.pm
lib/Audio/Nama/Options.pm
lib/Audio/Nama/Track.pm
lib/Audio/Nama/BusUtil.pm
lib/Audio/Nama/EffectNickname.pm
lib/Audio/Nama/Memoize.pm
lib/Audio/Nama/Wavinfo.pm
lib/Audio/Nama/Effect.pm
lib/Audio/Nama/Graphical.pm
lib/Audio/Nama/EffectsRegistry.pm
lib/Audio/Nama/IO.pm
Audio-Nama-1.216/BUILD 0000644 0001750 0001750 00000003220 13544211573 013260 0 ustar jroth jroth BUILD INSTRUCTIONS
You may decide to clone the Nama's github repository and from source
rather than installing from CPAN. It is easier to browse or hack on
Nama this way. Functionality is separated into a number of files, and
you will see $::package_var instead of $Audio::Nama::package_var.
You can get also updates more quickly and can share patches with other
developers.
Procedure
For typical build and test:
cpan Text::Template
git-clone git://github.com/bolangi/nama.git
cd nama/src
./build
./ui
To install the module, do as usual:
cd ..
perl Makefile.PL
make install
How it works
The build script creates the perl modules for the distribution under the
nama/lib directory using *.p, *.pl, *.t and other files in the nama/src
directory.
build looks into the *.p files for lines that look like:
[% somefile.pl %]
This notation is analogous to the C-preprocessor #include directive:
somefile.pl gets included in the source at that point. Some of these
include lines are more complicated:
[% qx(./strip_comments ./grammar_body) %]
Here the preprocessor runs the script strip_comments on grammar_body,
removing text that would choke the parser generator.
Build provides a few parameters to the preprocessing script preproc,
which uses the Text::Template to perform most of the required
substitutions.
To see the names of the files and scripts used to build the modules
type:
ls *.p
grep '\[%' * # shows all include directives
Audio-Nama-1.216/COPYING 0000644 0001750 0001750 00000104513 13114426705 013536 0 ustar jroth jroth GNU GENERAL PUBLIC LICENSE
Version 3, 29 June 2007
Copyright (C) 2007 Free Software Foundation, Inc.
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
Preamble
The GNU General Public License is a free, copyleft license for
software and other kinds of works.
The licenses for most software and other practical works are designed
to take away your freedom to share and change the works. By contrast,
the GNU General Public License is intended to guarantee your freedom to
share and change all versions of a program--to make sure it remains free
software for all its users. We, the Free Software Foundation, use the
GNU General Public License for most of our software; it applies also to
any other work released this way by its authors. You can apply it to
your programs, too.
When we speak of free software, we are referring to freedom, not
price. Our General Public Licenses are designed to make sure that you
have the freedom to distribute copies of free software (and charge for
them if you wish), that you receive source code or can get it if you
want it, that you can change the software or use pieces of it in new
free programs, and that you know you can do these things.
To protect your rights, we need to prevent others from denying you
these rights or asking you to surrender the rights. Therefore, you have
certain responsibilities if you distribute copies of the software, or if
you modify it: responsibilities to respect the freedom of others.
For example, if you distribute copies of such a program, whether
gratis or for a fee, you must pass on to the recipients the same
freedoms that you received. You must make sure that they, too, receive
or can get the source code. And you must show them these terms so they
know their rights.
Developers that use the GNU GPL protect your rights with two steps:
(1) assert copyright on the software, and (2) offer you this License
giving you legal permission to copy, distribute and/or modify it.
For the developers' and authors' protection, the GPL clearly explains
that there is no warranty for this free software. For both users' and
authors' sake, the GPL requires that modified versions be marked as
changed, so that their problems will not be attributed erroneously to
authors of previous versions.
Some devices are designed to deny users access to install or run
modified versions of the software inside them, although the manufacturer
can do so. This is fundamentally incompatible with the aim of
protecting users' freedom to change the software. The systematic
pattern of such abuse occurs in the area of products for individuals to
use, which is precisely where it is most unacceptable. Therefore, we
have designed this version of the GPL to prohibit the practice for those
products. If such problems arise substantially in other domains, we
stand ready to extend this provision to those domains in future versions
of the GPL, as needed to protect the freedom of users.
Finally, every program is threatened constantly by software patents.
States should not allow patents to restrict development and use of
software on general-purpose computers, but in those that do, we wish to
avoid the special danger that patents applied to a free program could
make it effectively proprietary. To prevent this, the GPL assures that
patents cannot be used to render the program non-free.
The precise terms and conditions for copying, distribution and
modification follow.
TERMS AND CONDITIONS
0. Definitions.
"This License" refers to version 3 of the GNU General Public License.
"Copyright" also means copyright-like laws that apply to other kinds of
works, such as semiconductor masks.
"The Program" refers to any copyrightable work licensed under this
License. Each licensee is addressed as "you". "Licensees" and
"recipients" may be individuals or organizations.
To "modify" a work means to copy from or adapt all or part of the work
in a fashion requiring copyright permission, other than the making of an
exact copy. The resulting work is called a "modified version" of the
earlier work or a work "based on" the earlier work.
A "covered work" means either the unmodified Program or a work based
on the Program.
To "propagate" a work means to do anything with it that, without
permission, would make you directly or secondarily liable for
infringement under applicable copyright law, except executing it on a
computer or modifying a private copy. Propagation includes copying,
distribution (with or without modification), making available to the
public, and in some countries other activities as well.
To "convey" a work means any kind of propagation that enables other
parties to make or receive copies. Mere interaction with a user through
a computer network, with no transfer of a copy, is not conveying.
An interactive user interface displays "Appropriate Legal Notices"
to the extent that it includes a convenient and prominently visible
feature that (1) displays an appropriate copyright notice, and (2)
tells the user that there is no warranty for the work (except to the
extent that warranties are provided), that licensees may convey the
work under this License, and how to view a copy of this License. If
the interface presents a list of user commands or options, such as a
menu, a prominent item in the list meets this criterion.
1. Source Code.
The "source code" for a work means the preferred form of the work
for making modifications to it. "Object code" means any non-source
form of a work.
A "Standard Interface" means an interface that either is an official
standard defined by a recognized standards body, or, in the case of
interfaces specified for a particular programming language, one that
is widely used among developers working in that language.
The "System Libraries" of an executable work include anything, other
than the work as a whole, that (a) is included in the normal form of
packaging a Major Component, but which is not part of that Major
Component, and (b) serves only to enable use of the work with that
Major Component, or to implement a Standard Interface for which an
implementation is available to the public in source code form. A
"Major Component", in this context, means a major essential component
(kernel, window system, and so on) of the specific operating system
(if any) on which the executable work runs, or a compiler used to
produce the work, or an object code interpreter used to run it.
The "Corresponding Source" for a work in object code form means all
the source code needed to generate, install, and (for an executable
work) run the object code and to modify the work, including scripts to
control those activities. However, it does not include the work's
System Libraries, or general-purpose tools or generally available free
programs which are used unmodified in performing those activities but
which are not part of the work. For example, Corresponding Source
includes interface definition files associated with source files for
the work, and the source code for shared libraries and dynamically
linked subprograms that the work is specifically designed to require,
such as by intimate data communication or control flow between those
subprograms and other parts of the work.
The Corresponding Source need not include anything that users
can regenerate automatically from other parts of the Corresponding
Source.
The Corresponding Source for a work in source code form is that
same work.
2. Basic Permissions.
All rights granted under this License are granted for the term of
copyright on the Program, and are irrevocable provided the stated
conditions are met. This License explicitly affirms your unlimited
permission to run the unmodified Program. The output from running a
covered work is covered by this License only if the output, given its
content, constitutes a covered work. This License acknowledges your
rights of fair use or other equivalent, as provided by copyright law.
You may make, run and propagate covered works that you do not
convey, without conditions so long as your license otherwise remains
in force. You may convey covered works to others for the sole purpose
of having them make modifications exclusively for you, or provide you
with facilities for running those works, provided that you comply with
the terms of this License in conveying all material for which you do
not control copyright. Those thus making or running the covered works
for you must do so exclusively on your behalf, under your direction
and control, on terms that prohibit them from making any copies of
your copyrighted material outside their relationship with you.
Conveying under any other circumstances is permitted solely under
the conditions stated below. Sublicensing is not allowed; section 10
makes it unnecessary.
3. Protecting Users' Legal Rights From Anti-Circumvention Law.
No covered work shall be deemed part of an effective technological
measure under any applicable law fulfilling obligations under article
11 of the WIPO copyright treaty adopted on 20 December 1996, or
similar laws prohibiting or restricting circumvention of such
measures.
When you convey a covered work, you waive any legal power to forbid
circumvention of technological measures to the extent such circumvention
is effected by exercising rights under this License with respect to
the covered work, and you disclaim any intention to limit operation or
modification of the work as a means of enforcing, against the work's
users, your or third parties' legal rights to forbid circumvention of
technological measures.
4. Conveying Verbatim Copies.
You may convey verbatim copies of the Program's source code as you
receive it, in any medium, provided that you conspicuously and
appropriately publish on each copy an appropriate copyright notice;
keep intact all notices stating that this License and any
non-permissive terms added in accord with section 7 apply to the code;
keep intact all notices of the absence of any warranty; and give all
recipients a copy of this License along with the Program.
You may charge any price or no price for each copy that you convey,
and you may offer support or warranty protection for a fee.
5. Conveying Modified Source Versions.
You may convey a work based on the Program, or the modifications to
produce it from the Program, in the form of source code under the
terms of section 4, provided that you also meet all of these conditions:
a) The work must carry prominent notices stating that you modified
it, and giving a relevant date.
b) The work must carry prominent notices stating that it is
released under this License and any conditions added under section
7. This requirement modifies the requirement in section 4 to
"keep intact all notices".
c) You must license the entire work, as a whole, under this
License to anyone who comes into possession of a copy. This
License will therefore apply, along with any applicable section 7
additional terms, to the whole of the work, and all its parts,
regardless of how they are packaged. This License gives no
permission to license the work in any other way, but it does not
invalidate such permission if you have separately received it.
d) If the work has interactive user interfaces, each must display
Appropriate Legal Notices; however, if the Program has interactive
interfaces that do not display Appropriate Legal Notices, your
work need not make them do so.
A compilation of a covered work with other separate and independent
works, which are not by their nature extensions of the covered work,
and which are not combined with it such as to form a larger program,
in or on a volume of a storage or distribution medium, is called an
"aggregate" if the compilation and its resulting copyright are not
used to limit the access or legal rights of the compilation's users
beyond what the individual works permit. Inclusion of a covered work
in an aggregate does not cause this License to apply to the other
parts of the aggregate.
6. Conveying Non-Source Forms.
You may convey a covered work in object code form under the terms
of sections 4 and 5, provided that you also convey the
machine-readable Corresponding Source under the terms of this License,
in one of these ways:
a) Convey the object code in, or embodied in, a physical product
(including a physical distribution medium), accompanied by the
Corresponding Source fixed on a durable physical medium
customarily used for software interchange.
b) Convey the object code in, or embodied in, a physical product
(including a physical distribution medium), accompanied by a
written offer, valid for at least three years and valid for as
long as you offer spare parts or customer support for that product
model, to give anyone who possesses the object code either (1) a
copy of the Corresponding Source for all the software in the
product that is covered by this License, on a durable physical
medium customarily used for software interchange, for a price no
more than your reasonable cost of physically performing this
conveying of source, or (2) access to copy the
Corresponding Source from a network server at no charge.
c) Convey individual copies of the object code with a copy of the
written offer to provide the Corresponding Source. This
alternative is allowed only occasionally and noncommercially, and
only if you received the object code with such an offer, in accord
with subsection 6b.
d) Convey the object code by offering access from a designated
place (gratis or for a charge), and offer equivalent access to the
Corresponding Source in the same way through the same place at no
further charge. You need not require recipients to copy the
Corresponding Source along with the object code. If the place to
copy the object code is a network server, the Corresponding Source
may be on a different server (operated by you or a third party)
that supports equivalent copying facilities, provided you maintain
clear directions next to the object code saying where to find the
Corresponding Source. Regardless of what server hosts the
Corresponding Source, you remain obligated to ensure that it is
available for as long as needed to satisfy these requirements.
e) Convey the object code using peer-to-peer transmission, provided
you inform other peers where the object code and Corresponding
Source of the work are being offered to the general public at no
charge under subsection 6d.
A separable portion of the object code, whose source code is excluded
from the Corresponding Source as a System Library, need not be
included in conveying the object code work.
A "User Product" is either (1) a "consumer product", which means any
tangible personal property which is normally used for personal, family,
or household purposes, or (2) anything designed or sold for incorporation
into a dwelling. In determining whether a product is a consumer product,
doubtful cases shall be resolved in favor of coverage. For a particular
product received by a particular user, "normally used" refers to a
typical or common use of that class of product, regardless of the status
of the particular user or of the way in which the particular user
actually uses, or expects or is expected to use, the product. A product
is a consumer product regardless of whether the product has substantial
commercial, industrial or non-consumer uses, unless such uses represent
the only significant mode of use of the product.
"Installation Information" for a User Product means any methods,
procedures, authorization keys, or other information required to install
and execute modified versions of a covered work in that User Product from
a modified version of its Corresponding Source. The information must
suffice to ensure that the continued functioning of the modified object
code is in no case prevented or interfered with solely because
modification has been made.
If you convey an object code work under this section in, or with, or
specifically for use in, a User Product, and the conveying occurs as
part of a transaction in which the right of possession and use of the
User Product is transferred to the recipient in perpetuity or for a
fixed term (regardless of how the transaction is characterized), the
Corresponding Source conveyed under this section must be accompanied
by the Installation Information. But this requirement does not apply
if neither you nor any third party retains the ability to install
modified object code on the User Product (for example, the work has
been installed in ROM).
The requirement to provide Installation Information does not include a
requirement to continue to provide support service, warranty, or updates
for a work that has been modified or installed by the recipient, or for
the User Product in which it has been modified or installed. Access to a
network may be denied when the modification itself materially and
adversely affects the operation of the network or violates the rules and
protocols for communication across the network.
Corresponding Source conveyed, and Installation Information provided,
in accord with this section must be in a format that is publicly
documented (and with an implementation available to the public in
source code form), and must require no special password or key for
unpacking, reading or copying.
7. Additional Terms.
"Additional permissions" are terms that supplement the terms of this
License by making exceptions from one or more of its conditions.
Additional permissions that are applicable to the entire Program shall
be treated as though they were included in this License, to the extent
that they are valid under applicable law. If additional permissions
apply only to part of the Program, that part may be used separately
under those permissions, but the entire Program remains governed by
this License without regard to the additional permissions.
When you convey a copy of a covered work, you may at your option
remove any additional permissions from that copy, or from any part of
it. (Additional permissions may be written to require their own
removal in certain cases when you modify the work.) You may place
additional permissions on material, added by you to a covered work,
for which you have or can give appropriate copyright permission.
Notwithstanding any other provision of this License, for material you
add to a covered work, you may (if authorized by the copyright holders of
that material) supplement the terms of this License with terms:
a) Disclaiming warranty or limiting liability differently from the
terms of sections 15 and 16 of this License; or
b) Requiring preservation of specified reasonable legal notices or
author attributions in that material or in the Appropriate Legal
Notices displayed by works containing it; or
c) Prohibiting misrepresentation of the origin of that material, or
requiring that modified versions of such material be marked in
reasonable ways as different from the original version; or
d) Limiting the use for publicity purposes of names of licensors or
authors of the material; or
e) Declining to grant rights under trademark law for use of some
trade names, trademarks, or service marks; or
f) Requiring indemnification of licensors and authors of that
material by anyone who conveys the material (or modified versions of
it) with contractual assumptions of liability to the recipient, for
any liability that these contractual assumptions directly impose on
those licensors and authors.
All other non-permissive additional terms are considered "further
restrictions" within the meaning of section 10. If the Program as you
received it, or any part of it, contains a notice stating that it is
governed by this License along with a term that is a further
restriction, you may remove that term. If a license document contains
a further restriction but permits relicensing or conveying under this
License, you may add to a covered work material governed by the terms
of that license document, provided that the further restriction does
not survive such relicensing or conveying.
If you add terms to a covered work in accord with this section, you
must place, in the relevant source files, a statement of the
additional terms that apply to those files, or a notice indicating
where to find the applicable terms.
Additional terms, permissive or non-permissive, may be stated in the
form of a separately written license, or stated as exceptions;
the above requirements apply either way.
8. Termination.
You may not propagate or modify a covered work except as expressly
provided under this License. Any attempt otherwise to propagate or
modify it is void, and will automatically terminate your rights under
this License (including any patent licenses granted under the third
paragraph of section 11).
However, if you cease all violation of this License, then your
license from a particular copyright holder is reinstated (a)
provisionally, unless and until the copyright holder explicitly and
finally terminates your license, and (b) permanently, if the copyright
holder fails to notify you of the violation by some reasonable means
prior to 60 days after the cessation.
Moreover, your license from a particular copyright holder is
reinstated permanently if the copyright holder notifies you of the
violation by some reasonable means, this is the first time you have
received notice of violation of this License (for any work) from that
copyright holder, and you cure the violation prior to 30 days after
your receipt of the notice.
Termination of your rights under this section does not terminate the
licenses of parties who have received copies or rights from you under
this License. If your rights have been terminated and not permanently
reinstated, you do not qualify to receive new licenses for the same
material under section 10.
9. Acceptance Not Required for Having Copies.
You are not required to accept this License in order to receive or
run a copy of the Program. Ancillary propagation of a covered work
occurring solely as a consequence of using peer-to-peer transmission
to receive a copy likewise does not require acceptance. However,
nothing other than this License grants you permission to propagate or
modify any covered work. These actions infringe copyright if you do
not accept this License. Therefore, by modifying or propagating a
covered work, you indicate your acceptance of this License to do so.
10. Automatic Licensing of Downstream Recipients.
Each time you convey a covered work, the recipient automatically
receives a license from the original licensors, to run, modify and
propagate that work, subject to this License. You are not responsible
for enforcing compliance by third parties with this License.
An "entity transaction" is a transaction transferring control of an
organization, or substantially all assets of one, or subdividing an
organization, or merging organizations. If propagation of a covered
work results from an entity transaction, each party to that
transaction who receives a copy of the work also receives whatever
licenses to the work the party's predecessor in interest had or could
give under the previous paragraph, plus a right to possession of the
Corresponding Source of the work from the predecessor in interest, if
the predecessor has it or can get it with reasonable efforts.
You may not impose any further restrictions on the exercise of the
rights granted or affirmed under this License. For example, you may
not impose a license fee, royalty, or other charge for exercise of
rights granted under this License, and you may not initiate litigation
(including a cross-claim or counterclaim in a lawsuit) alleging that
any patent claim is infringed by making, using, selling, offering for
sale, or importing the Program or any portion of it.
11. Patents.
A "contributor" is a copyright holder who authorizes use under this
License of the Program or a work on which the Program is based. The
work thus licensed is called the contributor's "contributor version".
A contributor's "essential patent claims" are all patent claims
owned or controlled by the contributor, whether already acquired or
hereafter acquired, that would be infringed by some manner, permitted
by this License, of making, using, or selling its contributor version,
but do not include claims that would be infringed only as a
consequence of further modification of the contributor version. For
purposes of this definition, "control" includes the right to grant
patent sublicenses in a manner consistent with the requirements of
this License.
Each contributor grants you a non-exclusive, worldwide, royalty-free
patent license under the contributor's essential patent claims, to
make, use, sell, offer for sale, import and otherwise run, modify and
propagate the contents of its contributor version.
In the following three paragraphs, a "patent license" is any express
agreement or commitment, however denominated, not to enforce a patent
(such as an express permission to practice a patent or covenant not to
sue for patent infringement). To "grant" such a patent license to a
party means to make such an agreement or commitment not to enforce a
patent against the party.
If you convey a covered work, knowingly relying on a patent license,
and the Corresponding Source of the work is not available for anyone
to copy, free of charge and under the terms of this License, through a
publicly available network server or other readily accessible means,
then you must either (1) cause the Corresponding Source to be so
available, or (2) arrange to deprive yourself of the benefit of the
patent license for this particular work, or (3) arrange, in a manner
consistent with the requirements of this License, to extend the patent
license to downstream recipients. "Knowingly relying" means you have
actual knowledge that, but for the patent license, your conveying the
covered work in a country, or your recipient's use of the covered work
in a country, would infringe one or more identifiable patents in that
country that you have reason to believe are valid.
If, pursuant to or in connection with a single transaction or
arrangement, you convey, or propagate by procuring conveyance of, a
covered work, and grant a patent license to some of the parties
receiving the covered work authorizing them to use, propagate, modify
or convey a specific copy of the covered work, then the patent license
you grant is automatically extended to all recipients of the covered
work and works based on it.
A patent license is "discriminatory" if it does not include within
the scope of its coverage, prohibits the exercise of, or is
conditioned on the non-exercise of one or more of the rights that are
specifically granted under this License. You may not convey a covered
work if you are a party to an arrangement with a third party that is
in the business of distributing software, under which you make payment
to the third party based on the extent of your activity of conveying
the work, and under which the third party grants, to any of the
parties who would receive the covered work from you, a discriminatory
patent license (a) in connection with copies of the covered work
conveyed by you (or copies made from those copies), or (b) primarily
for and in connection with specific products or compilations that
contain the covered work, unless you entered into that arrangement,
or that patent license was granted, prior to 28 March 2007.
Nothing in this License shall be construed as excluding or limiting
any implied license or other defenses to infringement that may
otherwise be available to you under applicable patent law.
12. No Surrender of Others' Freedom.
If conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License. If you cannot convey a
covered work so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you may
not convey it at all. For example, if you agree to terms that obligate you
to collect a royalty for further conveying from those to whom you convey
the Program, the only way you could satisfy both those terms and this
License would be to refrain entirely from conveying the Program.
13. Use with the GNU Affero General Public License.
Notwithstanding any other provision of this License, you have
permission to link or combine any covered work with a work licensed
under version 3 of the GNU Affero General Public License into a single
combined work, and to convey the resulting work. The terms of this
License will continue to apply to the part which is the covered work,
but the special requirements of the GNU Affero General Public License,
section 13, concerning interaction through a network will apply to the
combination as such.
14. Revised Versions of this License.
The Free Software Foundation may publish revised and/or new versions of
the GNU General Public License from time to time. Such new versions will
be similar in spirit to the present version, but may differ in detail to
address new problems or concerns.
Each version is given a distinguishing version number. If the
Program specifies that a certain numbered version of the GNU General
Public License "or any later version" applies to it, you have the
option of following the terms and conditions either of that numbered
version or of any later version published by the Free Software
Foundation. If the Program does not specify a version number of the
GNU General Public License, you may choose any version ever published
by the Free Software Foundation.
If the Program specifies that a proxy can decide which future
versions of the GNU General Public License can be used, that proxy's
public statement of acceptance of a version permanently authorizes you
to choose that version for the Program.
Later license versions may give you additional or different
permissions. However, no additional obligations are imposed on any
author or copyright holder as a result of your choosing to follow a
later version.
15. Disclaimer of Warranty.
THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
16. Limitation of Liability.
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
SUCH DAMAGES.
17. Interpretation of Sections 15 and 16.
If the disclaimer of warranty and limitation of liability provided
above cannot be given local legal effect according to their terms,
reviewing courts shall apply local law that most closely approximates
an absolute waiver of all civil liability in connection with the
Program, unless a warranty or assumption of liability accompanies a
copy of the Program in return for a fee.
END OF TERMS AND CONDITIONS
How to Apply These Terms to Your New Programs
If you develop a new program, and you want it to be of the greatest
possible use to the public, the best way to achieve this is to make it
free software which everyone can redistribute and change under these terms.
To do so, attach the following notices to the program. It is safest
to attach them to the start of each source file to most effectively
state the exclusion of warranty; and each file should have at least
the "copyright" line and a pointer to where the full notice is found.
Copyright (C)
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see .
Also add information on how to contact you by electronic and paper mail.
If the program does terminal interaction, make it output a short
notice like this when it starts in an interactive mode:
Copyright (C)
This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show c' for details.
The hypothetical commands `show w' and `show c' should show the appropriate
parts of the General Public License. Of course, your program's commands
might be different; for a GUI interface, you would use an "about box".
You should also get your employer (if you work as a programmer) or school,
if any, to sign a "copyright disclaimer" for the program, if necessary.
For more information on this, and how to apply and follow the GNU GPL, see
.
The GNU General Public License does not permit incorporating your program
into proprietary programs. If your program is a subroutine library, you
may consider it more useful to permit linking proprietary applications with
the library. If this is what you want to do, use the GNU Lesser General
Public License instead of this License. But first, please read
.
Audio-Nama-1.216/MYMETA.json 0000644 0001750 0001750 00000003760 13544212614 014373 0 ustar jroth jroth {
"abstract" : "unknown",
"author" : [
"Joel Roth, "
],
"dynamic_config" : 0,
"generated_by" : "ExtUtils::MakeMaker version 7.1, CPAN::Meta::Converter version 2.150001",
"license" : [
"open_source"
],
"meta-spec" : {
"url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec",
"version" : "2"
},
"name" : "Audio-Nama",
"no_index" : {
"directory" : [
"t",
"inc"
]
},
"prereqs" : {
"build" : {
"requires" : {
"ExtUtils::MakeMaker" : "6.59"
}
},
"configure" : {
"requires" : {
"ExtUtils::MakeMaker" : "0"
}
},
"runtime" : {
"requires" : {
"AnyEvent" : "5.0",
"AnyEvent::TermKey" : "0",
"Data::Dumper::Concise" : "0",
"Data::Section::Simple" : "0",
"Event" : "0",
"File::Copy" : "0",
"File::Copy::Link" : "0",
"File::Find::Rule" : "0",
"File::HomeDir" : "0",
"File::Slurp" : "0",
"File::Temp" : "0",
"Git::Repository" : "0",
"Graph" : "0",
"IO::Select" : "0",
"IO::Socket" : "0",
"IPC::Open3" : "0",
"JSON::XS" : "0",
"List::MoreUtils" : "0",
"List::Util" : "0",
"Log::Log4perl" : "0",
"Modern::Perl" : "0",
"Module::Load::Conditional" : "0",
"Parse::RecDescent" : "0",
"Role::Tiny" : "0",
"SUPER" : "0",
"Term::ReadLine::Gnu" : "0",
"Test2::Bundle::More" : "0",
"Text::Diff" : "0",
"Text::Format" : "0",
"Text::Template" : "0",
"Time::HiRes" : "0",
"Try::Tiny" : "0",
"YAML::Tiny" : "0",
"autodie" : "0",
"perl" : "5.010001"
}
}
},
"release_status" : "stable",
"version" : "1.216"
}
Audio-Nama-1.216/t/ 0000755 0001750 0001750 00000000000 13544212627 012745 5 ustar jroth jroth Audio-Nama-1.216/t/01_symbols.t 0000644 0001750 0001750 00000003326 13544212613 015121 0 ustar jroth jroth use Test2::Bundle::More;
use strict;
use Audio::Nama::Globals qw($ui);
use Audio::Nama::Log;
Audio::Nama::Log::initialize_logger();
is($ui, 'bullwinkle', 'global variable import');
package Foo;
use Audio::Nama::Globals qw(:all);
main::is($ui, 'bullwinkle', 'global variable-all-tag import');
package main;
use Audio::Nama::Assign qw(:all);
# `make test'. After `make install' it should work as `perl 1.t'
#diag ("TESTING $0\n");
my @test_classes = qw( :: main:: main); # SKIP_PREPROC
use vars qw( $foo @face $name %dict);
my @var_list = qw( $foo @face $name %dict);
my $struct2 = {
'$foo' => 2,
'$name' => 'John',
'@face' => [1,5,7,12],
'%dict' => {fruit => 'melon'}
};
my $struct = {
foo => 2,
name => 'John',
face => [1,5,7,12],
dict => {fruit => 'melon'}
};
for my $c (@test_classes) {
#diag ("testing for class $c");
assign (data => $struct, class => $c, vars => \@var_list);
my $serialized = serialize( class => $c, vars => \@var_list);
my $expected = < 2,
name => undef,
face => [],
dict => {},
};
#diag("scalar array: ",scalar @face, " scalar hash: ", scalar %dict);
assign (data => $nulls, class => 'main', vars => \@var_list);
is( scalar @face, 0, "Null array assignment");
is( scalar %dict, 0, "Null hash assignment");
done_testing();
__END__ Audio-Nama-1.216/t/11_mark.t 0000644 0001750 0001750 00000000406 13544212613 014360 0 ustar jroth jroth use Test2::Bundle::More;
use strict;
use Audio::Nama::Mark;
$ENV{NAMA_VERBOSE_TEST_OUTPUT} and diag ("TESTING $0\n");
my $mark = Audio::Nama::Mark->new( name => 'thebeginning');
is( ref $mark , 'Audio::Nama::Mark', "Object creation");
done_testing();
__END__ Audio-Nama-1.216/t/06_latency.t 0000644 0001750 0001750 00000001125 13544212613 015070 0 ustar jroth jroth use Test2::Bundle::More;
use strict;
use Audio::Nama::Lat;
my $lat = Audio::Nama::Lat->new(4,8);
my $lat2 = Audio::Nama::Lat->new(16,32);
is(ref $lat, 'Audio::Nama::Lat', "Latency object instantiation");
is("$lat","4 8","Stringify object");
is($lat->min, 4, "Min latency accessor");
is_deeply( $lat->add_latency($lat2), Audio::Nama::Lat->new(20,40), "Latency addition");
is_deeply( Audio::Nama::Lat->new(20,40), ($lat + $lat2), "Latency addition, overloading '+' operator");
is(do{ eval {Audio::Nama::Lat->new(1,0)}; defined $@}, 1, "Exception on Max greater than Min");
done_testing();
__END__ Audio-Nama-1.216/t/12_nama.t 0000644 0001750 0001750 00000061555 13544212613 014357 0 ustar jroth jroth package Audio::Nama;
use Audio::Nama;
use Test2::Bundle::More;
use File::Path qw(make_path remove_tree);
use File::Slurp;
use Cwd;
use strict;
use warnings;
no warnings qw(uninitialized);
our ($expected_setup_lines);
$ENV{NAMA_VERBOSE_TEST_OUTPUT} and diag ("TESTING $0\n");
$ENV{NAMA_VERBOSE_TEST_OUTPUT} and diag("working directory: ",cwd);
our $test_dir = "/tmp/nama-test";
$fx_cache->{fake} = read_file("t/data/fake_effects_cache.json");
cleanup_dirs();
setup_dirs();
sub cleanup_dirs { chdir('..'), remove_tree($test_dir) if -e $test_dir }
sub setup_dirs{ make_path("$test_dir/test/.wav", "$test_dir/untitled/.wav") }
$ENV{NAMA_VERBOSE_TEST_OUTPUT} and diag( qx(find $test_dir) );
apply_test_args();
$ENV{NAMA_VERBOSE_TEST_OUTPUT} and diag "options: @ARGV";
bootstrap_environment();
$config->{use_git} = 0;
$ENV{NAMA_VERBOSE_TEST_OUTPUT} and diag "Check representative variable from default .namarc";
is( $config->{mix_to_disk_format}, "s16_le,N,44100,i", "Read mix_to_disk_format");
# object id => type mappings
#
my @id_to_type = (
1 => 'soundcard',
Fluidsynth => 'jack_client',
"MPlayer [20120]:out_0" => 'jack_client',
"drumkit.ports" => 'jack_ports_list',
manual => 'jack_manual',
jack => 'jack_manual',
bus => 'bus',
null => 'null',
"loop,16" => 'loop',
"loop,Main" => 'loop',
);
while( my($dest,$type) = splice @id_to_type, 0,2){
is( dest_type($dest), $type, "$dest => $type");
}
my $test_project = 'test';
load_project(name => $test_project, create => 1);
$ENV{NAMA_VERBOSE_TEST_OUTPUT} and diag("project project dir: ".project_dir());
$ENV{NAMA_VERBOSE_TEST_OUTPUT} and diag("project project wav dir: ".this_wav_dir());
#diag(map{ $_->dump} values %Audio::Nama::Track::by_index );
is( project_dir(), "$test_dir/$test_project", "establish project directory");
is( ref $bn{Main}, q(Audio::Nama::SubBus), 'Bus initializtion');
force_jack();
### Unit Tests for Audio::Nama::IO.pm
my @io_test_data = split "\n\n",
my $yaml = q(---
-
class: from_null
ecs_string: -i:null
-
class: to_null
ecs_string: -o:null
-
class: to_wav
args:
name: sax
width: 1
full_path: /foo/.wav/sax_1.wav
ecs_string: -f:s16_le,1,44100,i -o:/foo/.wav/sax_1.wav
-
class: from_wav
args:
playat_output: playat,5
select_output: select,1,4
modifiers:
full_path: test_dir/sax_1.wav
ecs_string: -i:playat,5,select,1,4,test_dir/sax_1.wav
-
class: from_loop
args:
endpoint: sax_in
ecs_string: -i:loop,sax_in
-
class: to_loop
args:
endpoint: sax_out
ecs_string: -o:loop,sax_out
-
class: to_alsa_soundcard_device
ecs_string: -o:alsa,default
-
class: from_alsa_soundcard_device
ecs_string: -i:alsa,default
-
class: from_soundcard
args:
width: 1
source_id: 2
source_type: soundcard
ecs_string: -i:jack_multi,system:capture_2
-
class: to_soundcard
args:
width: 2
send_id: 5
send_type: soundcard
ecs_string: -o:jack_multi,system:playback_5,system:playback_6
-
class: to_jack_port
args:
width: 1
port_name: sax
ecs_string: -f:f32_le,1,44100 -o:jack,,sax_out
-
class: from_jack_port
args:
port_name: sax
width: 2
ecs_string: -f:f32_le,2,44100 -i:jack,,sax_in
-
class: from_jack_client
args:
source_id: Horgand
source_type: jack_client
ecs_string: -i:jack,Horgand
-
class: to_jack_client
args:
send_id: system
send_type: jack_client
ecs_string: -o:jack,system
-
class: to_jack_multi
args:
width: 2
send_id: system
send_type: jack_multi
ecs_string: -o:jack_multi,system:playback_1,system:playback_2
-
class: from_jack_multi
args:
width: 2
source_id: Horgand
source_type: jack_client
ecs_string: -i:jack_multi,Horgand:out_1,Horgand:out_2
...);
my @test = @{yaml_in($yaml)};
my $i;
for (@test) {
my %t = %$_;
$i++;
$ENV{NAMA_VERBOSE_TEST_OUTPUT} and diag "IO.pm unit test $i";
my $class = "Audio::Nama::IO::$t{class}";
my $io = $class->new(%{$t{args}});
my @keys = sort grep{ $_ ne 'class'} keys %t;
is( $io->ecs_string, $t{ecs_string}, "$t{class} ecs_string");
}
force_alsa();
nama_cmd('add sax');
like(ref $this_track, qr/Track/, "track creation");
is( $this_track->name, 'sax', "current track assignment");
my ($vol_id) = $this_track->vol;
ok( (defined $vol_id and $Audio::Nama::Effect::by_id{$vol_id}) , "apply volume control");
nama_cmd('add_effect time_reverb3');
like( this_op_o()->code, qr/time_reverb3/, "apply preset");
is (this_op_o()->track_effect_index, 0, "positioned before vol/pan faders");
nama_cmd('add_effect decimator 1 2');
like( this_op_o()->code, qr/decimator/, "apply LADSPA effect");
is( this_op_o()->track_effect_index, 1, "position before faders, after other effects");
nama_cmd('vol -2');
is( $this_track->vol_o->params->[0], -2, "modify effect" );
nama_cmd(join " ", 'position_effect', this_op_o()->id, 'ZZZ');
is( $this_track->ops->[-1], this_op_o()->id,
'position effect at end, using ZZZ pseudo-id');
nama_cmd(join " ", 'position_effect', this_op_o()->id, $vol_id);
is( $this_track->ops->[this_op_o()->track_effect_index + 1], $vol_id,
"position effect before another effect");
my $op_id = this_op_o()->id;
nama_cmd("remove_effect $op_id");
ok( (not grep { $_ eq $op_id } @{$this_track->ops}), 'remove effect');
nama_cmd('source 2');
is( $this_track->source_type, 'soundcard', "set soundcard input");
is( $this_track->source_id, 2, "set input channel");
nama_cmd('send 5');
# track sax, source 2, send 5
is( $this_track->send_type, 'soundcard', 'set soundcard output');
is( $this_track->send_id, 5, 'set soundcard output');
# this is ALSA dependent (i.e. no JACK running)
my $io = Audio::Nama::IO->new(track => 'sax');
like( ref $io, qr/IO$/, 'IO base class object');
$io = Audio::Nama::IO::to_alsa_soundcard_device->new(track => 'sax');
is($io->ecs_string, '-o:alsa,default', 'IO to_alsa_soundcard_device 1');
is($io->ecs_extra, ' -chmove:1,5', 'IO to_alsa_soundcard_device 2');
$io = Audio::Nama::IO::to_soundcard->new(track => 'sax');
is($io->ecs_string, '-o:alsa,default', 'IO to_soundcard 1');
is($io->ecs_extra, ' -chmove:1,5', 'IO to_soundcard 2');
force_jack();
$io = Audio::Nama::IO::from_soundcard->new(track => 'sax');
like (ref $io, qr/from_jack_multi/, 'sound system ALSA/JACK detection: input');
is($io->ecs_string, '-i:jack_multi,system:capture_2', 'IO from_soundcard: jack 1');
is($io->ecs_extra, '-chcopy:1,2', 'IO from_soundcard: jack 2');
$io = Audio::Nama::IO::to_soundcard->new(track => 'sax');
like (ref $io, qr/to_jack_multi/, 'sound system ALSA/JACK detection: output');
is($io->ecs_string, '-o:jack_multi,system:playback_5', 'IO to_soundcard: jack 1');
ok(! $io->ecs_extra, 'IO to_soundcard: jack 2');
$io = Audio::Nama::IO::to_null->new(track => 'sax', device_id => 'alsa,default');
is($io->device_id, 'alsa,default', 'value overrides method call');
nama_cmd("sax; source Horgand; gen");
like( Audio::Nama::ChainSetup::ecasound_chain_setup(), qr/Horgand/, 'set JACK client as input');
nama_cmd("sax; source jack; gen");
like( Audio::Nama::ChainSetup::ecasound_chain_setup(), qr/jack,,sax_in/, 'set JACK port for manual input');
nama_cmd("sax; rec; source 2");
force_alsa();
nama_cmd('3; nosend; gen');
$expected_setup_lines = < $playat,
region_start => $region_start,
region_end => $region_end,
edit_play_start => $edit_play_start,
edit_play_end => $edit_play_end,
setup_length => $length,
};
is( Audio::Nama::edit_case($args), $case, "$index: $case $comment");
is( Audio::Nama::new_playat($args), $new_playat, "$index: new_playat: $case");
is( Audio::Nama::new_region_start($args), $new_region_start, "$index: new_region_start: $case");
is( Audio::Nama::new_region_end($args), $new_region_end, "$index: new_region_end: $case");
}
}
load_project(name => "test_project-convert51", create => 1);
my $script = < "test_project-crossover", create => 1);
$script = < "$test_project-sendbus-cooked", create => 1);
do_script(' add mic
add guitar
for 3 4; mon
add_submix_cooked ear 7
');
$expected_setup_lines = < "add_submix_raw", create => 1);
nama_cmd("add_tracks mic guitar; for 3 4; mon;; 4 source 2; stereo; add_submix_raw raw-user 7");
$expected_setup_lines = < "$test_project-add_insert_post", create => 1);
nama_cmd("add sax; mon; gen");
nama_cmd("add_insert post jconvolver; gen");
$expected_setup_lines = < "add_insert_pre", create => 1);
nama_cmd("add sax; mon; add_insert pre jconvolver; gen");
$expected_setup_lines = < "add_insert_via_soundcard-postfader", create => 1);
nama_cmd("add sax; mon; source 2; add_insert post 5; gen");
$expected_setup_lines = < "add_insert_via_soundcard_pre", create => 1);
nama_cmd("add sax; mon; source 2; add_insert pre 5; gen");
$expected_setup_lines = < "midi", create => 1);
#add_midi_track('synth');
sub gen_alsa { force_alsa(); nama_cmd('gen')}
sub gen_jack { force_jack(); nama_cmd('gen')}
sub force_alsa { $config->{opts}->{A} = 1; $config->{opts}->{J} = 0; $jack->{jackd_running} = 0; }
sub force_jack{ $config->{opts}->{A} = 0; $config->{opts}->{J} = 1; $jack->{jackd_running} = 1; }
sub setup_content {
my @lines = split "\n", shift;
my %setup;
for (@lines){
next unless /^-a:/;
s/\s*$//;
$setup{$_}++;
}
\%setup;
}
sub check_setup {
my $test_name = shift;
is( json_out(setup_content(Audio::Nama::ChainSetup::ecasound_chain_setup())),
json_out(setup_content($expected_setup_lines)),
$test_name);
}
cleanup_dirs();
done_testing();
__END__ Audio-Nama-1.216/t/02_assign.t 0000644 0001750 0001750 00000003412 13544212613 014712 0 ustar jroth jroth use Test2::Bundle::More;
use strict;
use Audio::Nama::Assign qw(:all);
use Audio::Nama::Log;
Audio::Nama::Log::initialize_logger();
# `make test'. After `make install' it should work as `perl 1.t'
$ENV{NAMA_VERBOSE_TEST_OUTPUT} and diag ("TESTING $0\n");
my @test_classes = qw( :: main:: main); # SKIP_PREPROC
use vars qw( $foo @face $name %dict);
my @var_list = qw( $foo @face $name %dict);
my $struct2 = {
'$foo' => 2,
'$name' => 'John',
'@face' => [1,5,7,12],
'%dict' => {fruit => 'melon'}
};
my $struct = {
foo => 2,
name => 'John',
face => [1,5,7,12],
dict => {fruit => 'melon'}
};
$ENV{NAMA_VERBOSE_TEST_OUTPUT} and diag("Serializing, storing$ENV{NAMA_VERBOSE_TEST_OUTPUT} recalling data");
for my $c (@test_classes) {
$ENV{NAMA_VERBOSE_TEST_OUTPUT} and diag ("testing for package $c");
assign (data => $struct, class => $c, vars => \@var_list);
#assign($struct, @var_list);
#print json_out(\%dict);
#print json_out($struct);
my $serialized = serialize( class => $c, vars => \@var_list);
my $expected = < 2,
name => undef,
face => [],
dict => {},
};
#diag("scalar array: ",scalar @face, " scalar hash: ", scalar %dict);
assign (data => $nulls, class => 'main', vars => \@var_list);
is( scalar @face, 0, "Null array assignment");
is( scalar %dict, 0, "Null hash assignment");
done_testing();
__END__ Audio-Nama-1.216/t/04_object.t 0000644 0001750 0001750 00000001035 13544212613 014675 0 ustar jroth jroth use Test2::Bundle::More;
use strict;
$ENV{NAMA_VERBOSE_TEST_OUTPUT} and diag ("TESTING $0\n");
$ENV{NAMA_VERBOSE_TEST_OUTPUT} and diag "testing trivial class Apple";
package Apple;
our @ISA;
use Audio::Nama::Object qw(color);
package main;
my $apple = Apple->new(color => 'green');
is( ref $apple, 'Apple', "instantiation") ;
is( $apple->color, 'green', "accessor" );
$apple->set( color => 'red' );
is( $apple->color, 'red', "mutator" );
#$apple->color = 'blue';
#is( $apple->color, 'blue', "lvalue" );
done_testing()
__END__ Audio-Nama-1.216/t/data/ 0000755 0001750 0001750 00000000000 13544212627 013656 5 ustar jroth jroth Audio-Nama-1.216/t/data/fake_effects_cache.json 0000644 0001750 0001750 00001362350 13114426705 020310 0 ustar jroth jroth {
"fx_cache" : {
"full_label_to_index" : {
"" : 0,
"chcopy" : 27,
"chmix" : 32,
"chmove" : 29,
"chmute" : 30,
"chorder" : 26,
"eS" : 1,
"ea" : 2,
"eac" : 4,
"eadb" : 3,
"eal" : 5,
"eaw" : 6,
"ec" : 7,
"eca" : 8,
"eemb" : 9,
"eemp" : 10,
"eemt" : 11,
"ef1" : 12,
"ef3" : 13,
"ef4" : 14,
"efa" : 15,
"efb" : 16,
"efc" : 17,
"efh" : 18,
"efi" : 19,
"efl" : 20,
"efr" : 21,
"efs" : 22,
"ei" : 23,
"el:Ambisonics-11-cube-decoder" : 238,
"el:Ambisonics-11-hexagon-decoder" : 237,
"el:Ambisonics-11-mono-panner" : 233,
"el:Ambisonics-11-rotator" : 235,
"el:Ambisonics-11-square-decoder" : 236,
"el:Ambisonics-11-stereo-panner" : 234,
"el:Ambisonics-21-panner" : 142,
"el:Ambisonics-21-rotator" : 143,
"el:Ambisonics-22-panner" : 144,
"el:Ambisonics-22-rotator" : 145,
"el:Ambisonics-31-panner" : 178,
"el:Ambisonics-31-rotator" : 179,
"el:Ambisonics-33-panner" : 180,
"el:Ambisonics-33-rotator" : 181,
"el:AmpVTS" : 98,
"el:AutoFilter" : 107,
"el:CEO" : 118,
"el:CabinetIV" : 99,
"el:ChorusI" : 105,
"el:Click" : 117,
"el:Compress" : 95,
"el:CompressX2" : 96,
"el:Eq10" : 109,
"el:Eq10X2" : 110,
"el:Eq4p" : 111,
"el:Fractal" : 116,
"el:G2reverb" : 192,
"el:Narrower" : 113,
"el:NoiseGate" : 94,
"el:Parametric1" : 128,
"el:PhaserII" : 106,
"el:Plate" : 100,
"el:PlateX2" : 101,
"el:Saturate" : 102,
"el:Scape" : 108,
"el:Sin" : 114,
"el:Spice" : 103,
"el:SpiceX2" : 104,
"el:ToneStack" : 97,
"el:Tricardioid-to-AMB" : 227,
"el:UHJ-decoder" : 230,
"el:UHJ-encoder" : 229,
"el:Virtualmic" : 228,
"el:White" : 115,
"el:Wider" : 112,
"el:alias" : 169,
"el:allpass_c" : 222,
"el:allpass_l" : 221,
"el:allpass_n" : 220,
"el:amPitchshift" : 156,
"el:amp" : 149,
"el:amp_mono" : 59,
"el:amp_stereo" : 60,
"el:analogueOsc" : 54,
"el:artificialLatency" : 135,
"el:autoPhaser" : 154,
"el:bandpass_a_iir" : 48,
"el:bandpass_iir" : 134,
"el:bodeShifter" : 74,
"el:bodeShifterCV" : 213,
"el:butthigh_iir" : 66,
"el:buttlow_iir" : 65,
"el:bwxover_iir" : 64,
"el:chebstortion" : 214,
"el:comb" : 209,
"el:combSplitter" : 218,
"el:comb_c" : 71,
"el:comb_l" : 70,
"el:comb_n" : 69,
"el:const" : 150,
"el:crossoverDist" : 232,
"el:dcRemove" : 177,
"el:decay" : 63,
"el:decimator" : 138,
"el:declip" : 133,
"el:delay_5s" : 146,
"el:delay_c" : 88,
"el:delay_l" : 87,
"el:delay_n" : 86,
"el:delayorama" : 68,
"el:diode" : 242,
"el:divider" : 216,
"el:djFlanger" : 166,
"el:dj_eq" : 165,
"el:dj_eq_mono" : 164,
"el:dysonCompress" : 167,
"el:fadDelay" : 121,
"el:fastLookaheadLimiter" : 90,
"el:flanger" : 196,
"el:fmOsc" : 83,
"el:foldover" : 183,
"el:fourByFourPole" : 153,
"el:foverdrive" : 67,
"el:freqTracker" : 171,
"el:gate" : 162,
"el:giantFlange" : 141,
"el:gong" : 159,
"el:gongBeater" : 85,
"el:gsm" : 174,
"el:gverb" : 170,
"el:hardLimiter" : 184,
"el:harmonicGen" : 127,
"el:hermesFilter" : 73,
"el:highpass_iir" : 190,
"el:hilbert" : 49,
"el:hpf" : 206,
"el:imp" : 189,
"el:impulse_fc" : 91,
"el:inv" : 55,
"el:invada_hp_mono_filter_module_0_1" : 51,
"el:invada_hp_stereo_filter_module_0_1" : 53,
"el:invada_lp_mono_filter_module_0_1" : 50,
"el:invada_lp_stereo_filter_module_0_1" : 52,
"el:invada_mono_compressor_module_0_1" : 160,
"el:invada_mono_reverbER_module_0_1" : 187,
"el:invada_mono_tube_module_0_1" : 131,
"el:invada_stereo_compressor_module_0_1" : 161,
"el:invada_stereo_input_module_0_1" : 148,
"el:invada_stereo_tube_module_0_1" : 132,
"el:invada_sum_reverbER_module_0_1" : 188,
"el:karaoke" : 176,
"el:lcrDelay" : 61,
"el:lfoPhaser" : 152,
"el:lowpass_iir" : 92,
"el:lpf" : 205,
"el:lsFilter" : 185,
"el:matrixMSSt" : 130,
"el:matrixSpatialiser" : 186,
"el:matrixStMS" : 151,
"el:mbeq" : 139,
"el:modDelay" : 217,
"el:multivoiceChorus" : 82,
"el:noise_white" : 241,
"el:notch_iir" : 226,
"el:pitchScale" : 191,
"el:pitchScaleHQ" : 231,
"el:plate" : 199,
"el:pointerCastDistortion" : 172,
"el:rateShifter" : 147,
"el:retroFlange" : 126,
"el:revdelay" : 175,
"el:ringmod_1i1o1l" : 208,
"el:ringmod_2i1o" : 207,
"el:satanMaximiser" : 136,
"el:sc1" : 182,
"el:sc2" : 219,
"el:sc3" : 72,
"el:sc4" : 58,
"el:sc4m" : 84,
"el:se4" : 155,
"el:shaper" : 211,
"el:sifter" : 225,
"el:sinCos" : 224,
"el:sine_faaa" : 75,
"el:sine_faac" : 76,
"el:sine_fcaa" : 77,
"el:sine_fcac" : 78,
"el:singlePara" : 137,
"el:sinusWavewrapper" : 168,
"el:smoothDecimate" : 123,
"el:split" : 198,
"el:stepMuxer" : 163,
"el:surroundEncoder" : 215,
"el:svf" : 140,
"el:tap_autopan" : 195,
"el:tap_chorusflanger" : 124,
"el:tap_deesser" : 212,
"el:tap_doubler" : 158,
"el:tap_dynamics_m" : 201,
"el:tap_dynamics_st" : 204,
"el:tap_equalizer" : 129,
"el:tap_equalizer_bw" : 173,
"el:tap_limiter" : 79,
"el:tap_pinknoise" : 239,
"el:tap_pitch" : 93,
"el:tap_reflector" : 240,
"el:tap_reverb" : 197,
"el:tap_rotspeak" : 80,
"el:tap_sigmoid" : 62,
"el:tap_stereo_echo" : 122,
"el:tap_tremolo" : 56,
"el:tap_tubewarmth" : 223,
"el:tap_vibrato" : 89,
"el:tapeDelay" : 210,
"el:transient" : 119,
"el:triplePara" : 200,
"el:valve" : 57,
"el:valveRect" : 157,
"el:vynil" : 125,
"el:waveTerrain" : 120,
"el:xfade" : 202,
"el:xfade4" : 203,
"el:zita-reverb" : 193,
"el:zita-reverb-amb" : 194,
"el:zm1" : 81,
"elv2:http://gareus.org/oss/lv2/b_overdrive" : 307,
"elv2:http://gareus.org/oss/lv2/b_reverb" : 308,
"elv2:http://gareus.org/oss/lv2/b_whirl#extended" : 309,
"elv2:http://gareus.org/oss/lv2/b_whirl#simple" : 310,
"elv2:http://hyperglitch.com/dev/VocProc" : 311,
"elv2:http://plugin.org.uk/swh-plugins/alaw" : 312,
"elv2:http://plugin.org.uk/swh-plugins/alias" : 313,
"elv2:http://plugin.org.uk/swh-plugins/allpass_c" : 314,
"elv2:http://plugin.org.uk/swh-plugins/allpass_l" : 315,
"elv2:http://plugin.org.uk/swh-plugins/allpass_n" : 316,
"elv2:http://plugin.org.uk/swh-plugins/amPitchshift" : 317,
"elv2:http://plugin.org.uk/swh-plugins/amp" : 318,
"elv2:http://plugin.org.uk/swh-plugins/analogueOsc" : 319,
"elv2:http://plugin.org.uk/swh-plugins/artificialLatency" : 320,
"elv2:http://plugin.org.uk/swh-plugins/autoPhaser" : 321,
"elv2:http://plugin.org.uk/swh-plugins/bandpass_a_iir" : 322,
"elv2:http://plugin.org.uk/swh-plugins/bandpass_iir" : 323,
"elv2:http://plugin.org.uk/swh-plugins/bodeShifter" : 324,
"elv2:http://plugin.org.uk/swh-plugins/bodeShifterCV" : 325,
"elv2:http://plugin.org.uk/swh-plugins/butthigh_iir" : 326,
"elv2:http://plugin.org.uk/swh-plugins/buttlow_iir" : 327,
"elv2:http://plugin.org.uk/swh-plugins/bwxover_iir" : 328,
"elv2:http://plugin.org.uk/swh-plugins/chebstortion" : 329,
"elv2:http://plugin.org.uk/swh-plugins/comb" : 330,
"elv2:http://plugin.org.uk/swh-plugins/combSplitter" : 331,
"elv2:http://plugin.org.uk/swh-plugins/comb_c" : 332,
"elv2:http://plugin.org.uk/swh-plugins/comb_l" : 333,
"elv2:http://plugin.org.uk/swh-plugins/comb_n" : 334,
"elv2:http://plugin.org.uk/swh-plugins/const" : 335,
"elv2:http://plugin.org.uk/swh-plugins/crossoverDist" : 336,
"elv2:http://plugin.org.uk/swh-plugins/dcRemove" : 337,
"elv2:http://plugin.org.uk/swh-plugins/decay" : 338,
"elv2:http://plugin.org.uk/swh-plugins/decimator" : 339,
"elv2:http://plugin.org.uk/swh-plugins/declip" : 340,
"elv2:http://plugin.org.uk/swh-plugins/delay_c" : 341,
"elv2:http://plugin.org.uk/swh-plugins/delay_l" : 342,
"elv2:http://plugin.org.uk/swh-plugins/delay_n" : 343,
"elv2:http://plugin.org.uk/swh-plugins/delayorama" : 344,
"elv2:http://plugin.org.uk/swh-plugins/diode" : 345,
"elv2:http://plugin.org.uk/swh-plugins/divider" : 346,
"elv2:http://plugin.org.uk/swh-plugins/djFlanger" : 347,
"elv2:http://plugin.org.uk/swh-plugins/dj_eq" : 348,
"elv2:http://plugin.org.uk/swh-plugins/dj_eq_mono" : 349,
"elv2:http://plugin.org.uk/swh-plugins/dysonCompress" : 350,
"elv2:http://plugin.org.uk/swh-plugins/fadDelay" : 351,
"elv2:http://plugin.org.uk/swh-plugins/fastLookaheadLimiter" : 352,
"elv2:http://plugin.org.uk/swh-plugins/flanger" : 353,
"elv2:http://plugin.org.uk/swh-plugins/fmOsc" : 354,
"elv2:http://plugin.org.uk/swh-plugins/foldover" : 355,
"elv2:http://plugin.org.uk/swh-plugins/fourByFourPole" : 356,
"elv2:http://plugin.org.uk/swh-plugins/foverdrive" : 357,
"elv2:http://plugin.org.uk/swh-plugins/freqTracker" : 358,
"elv2:http://plugin.org.uk/swh-plugins/gate" : 359,
"elv2:http://plugin.org.uk/swh-plugins/giantFlange" : 360,
"elv2:http://plugin.org.uk/swh-plugins/gong" : 361,
"elv2:http://plugin.org.uk/swh-plugins/gongBeater" : 362,
"elv2:http://plugin.org.uk/swh-plugins/gverb" : 363,
"elv2:http://plugin.org.uk/swh-plugins/hardLimiter" : 364,
"elv2:http://plugin.org.uk/swh-plugins/harmonicGen" : 365,
"elv2:http://plugin.org.uk/swh-plugins/hermesFilter" : 366,
"elv2:http://plugin.org.uk/swh-plugins/highpass_iir" : 367,
"elv2:http://plugin.org.uk/swh-plugins/hilbert" : 368,
"elv2:http://plugin.org.uk/swh-plugins/impulse_fc" : 369,
"elv2:http://plugin.org.uk/swh-plugins/inv" : 370,
"elv2:http://plugin.org.uk/swh-plugins/karaoke" : 371,
"elv2:http://plugin.org.uk/swh-plugins/lcrDelay" : 372,
"elv2:http://plugin.org.uk/swh-plugins/lfoPhaser" : 373,
"elv2:http://plugin.org.uk/swh-plugins/lookaheadLimiter" : 374,
"elv2:http://plugin.org.uk/swh-plugins/lookaheadLimiterConst" : 375,
"elv2:http://plugin.org.uk/swh-plugins/lowpass_iir" : 376,
"elv2:http://plugin.org.uk/swh-plugins/lsFilter" : 377,
"elv2:http://plugin.org.uk/swh-plugins/matrixMSSt" : 378,
"elv2:http://plugin.org.uk/swh-plugins/matrixSpatialiser" : 379,
"elv2:http://plugin.org.uk/swh-plugins/matrixStMS" : 380,
"elv2:http://plugin.org.uk/swh-plugins/mbeq" : 381,
"elv2:http://plugin.org.uk/swh-plugins/modDelay" : 382,
"elv2:http://plugin.org.uk/swh-plugins/multivoiceChorus" : 383,
"elv2:http://plugin.org.uk/swh-plugins/pitchScaleHQ" : 384,
"elv2:http://plugin.org.uk/swh-plugins/plate" : 385,
"elv2:http://plugin.org.uk/swh-plugins/pointerCastDistortion" : 386,
"elv2:http://plugin.org.uk/swh-plugins/rateShifter" : 387,
"elv2:http://plugin.org.uk/swh-plugins/retroFlange" : 388,
"elv2:http://plugin.org.uk/swh-plugins/revdelay" : 389,
"elv2:http://plugin.org.uk/swh-plugins/ringmod_1i1o1l" : 390,
"elv2:http://plugin.org.uk/swh-plugins/ringmod_2i1o" : 391,
"elv2:http://plugin.org.uk/swh-plugins/satanMaximiser" : 392,
"elv2:http://plugin.org.uk/swh-plugins/sc1" : 393,
"elv2:http://plugin.org.uk/swh-plugins/sc2" : 394,
"elv2:http://plugin.org.uk/swh-plugins/sc3" : 395,
"elv2:http://plugin.org.uk/swh-plugins/sc4" : 396,
"elv2:http://plugin.org.uk/swh-plugins/se4" : 397,
"elv2:http://plugin.org.uk/swh-plugins/shaper" : 398,
"elv2:http://plugin.org.uk/swh-plugins/sifter" : 399,
"elv2:http://plugin.org.uk/swh-plugins/sinCos" : 400,
"elv2:http://plugin.org.uk/swh-plugins/singlePara" : 401,
"elv2:http://plugin.org.uk/swh-plugins/sinusWavewrapper" : 402,
"elv2:http://plugin.org.uk/swh-plugins/smoothDecimate" : 403,
"elv2:http://plugin.org.uk/swh-plugins/split" : 404,
"elv2:http://plugin.org.uk/swh-plugins/surroundEncoder" : 405,
"elv2:http://plugin.org.uk/swh-plugins/svf" : 406,
"elv2:http://plugin.org.uk/swh-plugins/tapeDelay" : 407,
"elv2:http://plugin.org.uk/swh-plugins/transient" : 408,
"elv2:http://plugin.org.uk/swh-plugins/triplePara" : 409,
"elv2:http://plugin.org.uk/swh-plugins/ulaw" : 410,
"elv2:http://plugin.org.uk/swh-plugins/valve" : 411,
"elv2:http://plugin.org.uk/swh-plugins/valveRect" : 412,
"elv2:http://plugin.org.uk/swh-plugins/vynil" : 413,
"elv2:http://plugin.org.uk/swh-plugins/waveTerrain" : 414,
"elv2:http://plugin.org.uk/swh-plugins/xfade" : 415,
"elv2:http://plugin.org.uk/swh-plugins/xfade4" : 416,
"elv2:http://plugin.org.uk/swh-plugins/zm1" : 417,
"enm" : 24,
"epp" : 25,
"erc" : 28,
"erm" : 31,
"etc" : 33,
"etd" : 34,
"ete" : 35,
"etf" : 36,
"etl" : 37,
"etm" : 38,
"etp" : 39,
"etr" : 40,
"ev" : 41,
"evp" : 42,
"ezf" : 43,
"ezx" : 44,
"gc" : 45,
"ge" : 46,
"gm" : 47,
"kf" : 299,
"kl" : 301,
"kl2" : 302,
"klg" : 303,
"km" : 304,
"kog" : 300,
"kos" : 305,
"ksv" : 306,
"pn:dyn_compress_brutal" : 243,
"pn:dyn_compress_hard" : 244,
"pn:dyn_compress_infinite" : 245,
"pn:dyn_compress_medium" : 246,
"pn:dyn_compress_soft" : 247,
"pn:dyn_compress_supersoft" : 248,
"pn:eq_template" : 249,
"pn:eq_template2" : 250,
"pn:f_bandpass" : 251,
"pn:f_filtertest" : 252,
"pn:f_high_and_low" : 253,
"pn:f_highpass" : 254,
"pn:f_inverse_comb" : 255,
"pn:f_lowp_sine" : 256,
"pn:f_lowp_sine2" : 257,
"pn:f_lowpass" : 258,
"pn:f_rejectband" : 259,
"pn:f_res_bandpass" : 260,
"pn:f_res_lowpass" : 261,
"pn:f_resonator" : 262,
"pn:f_two_filters" : 263,
"pn:f_two_filters_pareq" : 264,
"pn:gate_crop" : 265,
"pn:gate_noisegate_1" : 266,
"pn:gate_noisegate_delanalog" : 267,
"pn:gate_threshold" : 268,
"pn:lad_hermes" : 269,
"pn:lad_metronome" : 270,
"pn:lad_oscillator_stack" : 271,
"pn:lad_oscillator_test" : 272,
"pn:lad_sc4" : 273,
"pn:lad_sc4_rg" : 274,
"pn:metronome" : 275,
"pn:time_chorus1" : 276,
"pn:time_delay1" : 277,
"pn:time_delay2" : 278,
"pn:time_flanger1" : 279,
"pn:time_phaser1" : 280,
"pn:time_reverb1" : 281,
"pn:time_reverb2" : 282,
"pn:time_reverb3" : 283,
"pn:time_reverb4" : 284,
"pn:time_wicked_dub" : 285,
"pn:var_aw" : 286,
"pn:var_aw_custom" : 287,
"pn:var_aw_ksv" : 288,
"pn:var_aw_tri" : 289,
"pn:var_aw_tri_custom" : 290,
"pn:var_chipmunk" : 291,
"pn:var_dali" : 292,
"pn:var_molten_tape" : 293,
"pn:var_paralmadness" : 294,
"pn:var_parchip" : 295,
"pn:var_stretched_tape" : 296,
"pn:var_sweeping_pan" : 297,
"pn:var_switching_pan" : 298
},
"ladspa" : {},
"ladspa_label_to_unique_id" : {},
"ladspa_sorted" : [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
153,
128,
160,
161,
187,
188,
51,
53,
50,
52,
148,
131,
132,
156,
238,
237,
233,
235,
236,
234,
142,
143,
144,
145,
178,
179,
180,
181,
169,
222,
221,
220,
54,
135,
216,
154,
136,
74,
213,
98,
107,
118,
99,
105,
117,
95,
96,
109,
110,
111,
116,
113,
94,
106,
100,
101,
102,
108,
114,
103,
104,
97,
115,
112,
214,
209,
218,
71,
70,
69,
150,
202,
203,
232,
177,
165,
164,
166,
138,
133,
68,
242,
167,
63,
83,
90,
67,
196,
183,
121,
171,
66,
65,
174,
170,
162,
141,
48,
134,
64,
190,
92,
85,
159,
184,
127,
73,
231,
49,
189,
55,
176,
61,
152,
185,
226,
186,
130,
151,
217,
59,
198,
139,
82,
91,
191,
199,
172,
147,
126,
175,
208,
207,
182,
219,
72,
58,
84,
155,
225,
146,
206,
205,
149,
88,
87,
86,
224,
75,
76,
77,
78,
137,
168,
123,
140,
163,
60,
192,
215,
195,
124,
212,
201,
204,
129,
173,
158,
239,
93,
240,
197,
80,
79,
62,
122,
56,
223,
89,
210,
227,
119,
200,
230,
229,
157,
57,
228,
125,
120,
211,
241,
81,
193,
194
],
"lv2_help" : {
"elv2:http://gareus.org/oss/lv2/b_overdrive" : "Name: B Organ Overdrive\nURI: http://gareus.org/oss/lv2/b_overdrive\nClass: Distortion\nAuthor: Robin Gareus\nLatency: no\nPorts: \"In\" Input, Audio\n\t\"Out\" Output, Audio\n\t\"Bias\" Input, Control, 0 to 1, default 0.87399\n\t\"Feedback\" Input, Control, 0 to 1, default 0.5821\n\t\"SagToBias\" Input, Control, 0 to 1, default 0.188\n\t\"Postdiff feedback\" Input, Control, 0 to 1, default 1\n\t\"Global feedback\" Input, Control, 0 to 1, default 0.5826\n\t\"Input Gain\" Input, Control, 0 to 1, default 0.3567\n\t\"Output Gain\" Input, Control, 0 to 1, default 0.07873\n\n",
"elv2:http://gareus.org/oss/lv2/b_reverb" : "Name: B Organ Reverb\nURI: http://gareus.org/oss/lv2/b_reverb\nClass: Spatial\nAuthor: Robin Gareus\nLatency: no\nPorts: \"In\" Input, Audio\n\t\"Out\" Output, Audio\n\t\"Dry/Wet\" Input, Control, 0 to 1, default 0.3\n\t\"Input Gain\" Input, Control, 0 to 1, default 0.025\n\n",
"elv2:http://gareus.org/oss/lv2/b_synth" : "Name: setBfree DSP Tonewheel Organ\nURI: http://gareus.org/oss/lv2/b_synth\nClass: Instrument\nAuthor: Robin Gareus\nLatency: no\nPorts: \"MIDI In\" Input, \n\t\"MIDI Out\" Output, \n\t\"Left output\" Output, Audio\n\t\"Right Output\" Output, Audio\n\n",
"elv2:http://gareus.org/oss/lv2/b_whirl#extended" : "Name: B Organ Whirl Speaker Extended Version\nURI: http://gareus.org/oss/lv2/b_whirl#extended\nClass: Simulator\nAuthor: Robin Gareus\nLatency: no\nPorts: \"In\" Input, Audio\n\t\"Left output\" Output, Audio\n\t\"Right output\" Output, Audio\n\t\"Motors (horn, drum speed: off/slow/fast)\" Input, Control, 0 to 8, default 4, 9-way Selector\n\t\"Horn Level [dB]\" Input, Control, -20 to 20, default 0\n\t\"Drum Level [dB]\" Input, Control, -20 to 20, default 0\n\t\"Drum Stereo Width\" Input, Control, 0 to 1, default 1, 2-way Selector\n\t\"Horn Speed Slow [rpm]\" Input, Control, 10 to 200, default 40.32\n\t\"Horn Speed Fast [rpm]\" Input, Control, 100 to 1000, default 423.359985\n\t\"Horn Acceleration [s]\" Input, Control, 0.001 to 10, default 0.161\n\t\"Horn Deceleration [s]\" Input, Control, 0.001 to 10, default 0.321\n\t\"Horn Brake\" Input, Control, 0 to 1, default 0, 2-way Selector\n\t\"Horn Filter-1 Type:\" Input, Control, 0 to 8, default 0, 9-way Selector\n\t\"Horn Filter-1 Frequency [Hz]\" Input, Control, 250 to 8000, default 4500\n\t\"Horn Filter-1 Quality\" Input, Control, 0.01 to 6, default 2.7456\n\t\"Horn Filter-1 Gain (shelf) [dB]\" Input, Control, -48 to 48, default -38.9291\n\t\"Horn Filter-2 Type:\" Input, Control, 0 to 8, default 7, 9-way Selector\n\t\"Horn Filter-2 Frequency [Hz]\" Input, Control, 250 to 8000, default 300\n\t\"Horn Filter-2 Quality\" Input, Control, 0.01 to 6, default 1\n\t\"Horn Filter-2 Gain (shelf) [dB]\" Input, Control, -48 to 48, default -30\n\t\"Drum Speed Slow [rpm]\" Input, Control, 5 to 100, default 36\n\t\"Drum Speed Fast [rpm]\" Input, Control, 60 to 600, default 357.299988\n\t\"Drum Acceleration [s]\" Input, Control, 0.01 to 20, default 4.127\n\t\"Drum Deceleration [s]\" Input, Control, 0.01 to 20, default 1.371\n\t\"Drum Brake Position\" Input, Control, 0 to 1, default 0, 2-way Selector\n\t\"Drum Filter Type:\" Input, Control, 0 to 8, default 8, 9-way Selector\n\t\"Drum Filter Frequency [Hz]\" Input, Control, 50 to 8000, default 811.969482\n\t\"Drum Filter Quality\" Input, Control, 1.6016 to 6, default 1\n\t\"Drum Filter Gain (shelf) [dB]\" Input, Control, -48 to 48, default -38.9291\n\n",
"elv2:http://gareus.org/oss/lv2/b_whirl#simple" : "Name: B Organ Whirl Speaker\nURI: http://gareus.org/oss/lv2/b_whirl#simple\nClass: Simulator\nAuthor: Robin Gareus\nLatency: no\nPorts: \"In\" Input, Audio\n\t\"Left output\" Output, Audio\n\t\"Right output\" Output, Audio\n\t\"Motors (horn, drum speed: off/slow/fast)\" Input, Control, 0 to 8, default 4, 9-way Selector\n\t\"Horn Level [dB]\" Input, Control, -20 to 20, default 0\n\t\"Drum Level [dB]\" Input, Control, -20 to 20, default 0\n\t\"Drum Stereo Width\" Input, Control, 0 to 1, default 1, 2-way Selector\n\n",
"elv2:http://hyperglitch.com/dev/VocProc" : "Name: VocProc\nURI: http://hyperglitch.com/dev/VocProc\nClass: Pitch Shifter\nAuthor: Igor Brkic\nLatency: no\nPorts: \"Voice input\" Input, Audio\n\t\"Carrier input\" Input, Audio\n\t\"Output\" Output, Audio\n\t\"Pitch Factor\" Input, Control, -12 to 12, default 0\n\t\"Robotize/Whisperize\" Input, Control, 0 to 1, default 0\n\t\"formant correction/vocoder\" Input, Control, 0 to 1, default 0, 2-way Selector\n\t\"0 - formant correction, 1 - vocoder\" Input, Control, 0 to 1, default 0, 2-way Selector\n\t\"Automatic pitch correction\" Input, Control, 0 to 1, default 0, 2-way Selector\n\t\"Threshold\" Input, Control, 0 to 1, default 0\n\t\"Attack\" Input, Control, 0 to 1, default 0\n\t\"Transpose\" Input, Control, -12 to 12, default 0\n\t\"C\" Input, Control, 0 to 1, default 1, 2-way Selector\n\t\"C#\" Input, Control, 0 to 1, default 1, 2-way Selector\n\t\"D\" Input, Control, 0 to 1, default 1, 2-way Selector\n\t\"D#\" Input, Control, 0 to 1, default 1, 2-way Selector\n\t\"E\" Input, Control, 0 to 1, default 1, 2-way Selector\n\t\"F\" Input, Control, 0 to 1, default 1, 2-way Selector\n\t\"F#\" Input, Control, 0 to 1, default 1, 2-way Selector\n\t\"G\" Input, Control, 0 to 1, default 1, 2-way Selector\n\t\"G#\" Input, Control, 0 to 1, default 1, 2-way Selector\n\t\"A\" Input, Control, 0 to 1, default 1, 2-way Selector\n\t\"A#\" Input, Control, 0 to 1, default 1, 2-way Selector\n\t\"B\" Input, Control, 0 to 1, default 1, 2-way Selector\n\t\"Offset from tone\" Output, Control, -100 to 100, default 0\n\n",
"elv2:http://plugin.org.uk/swh-plugins/alaw" : "Name: A-Law Compressor\nURI: http://plugin.org.uk/swh-plugins/alaw\nClass: Dynamics\nAuthor: Steve Harris\nLatency: no\nPorts: \"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/alias" : "Name: Aliasing\nURI: http://plugin.org.uk/swh-plugins/alias\nClass: Distortion\nAuthor: Steve Harris\nLatency: no\nPorts: \"Aliasing level\" Input, Control, 0 to 1, default 0\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/allpass_c" : "Name: Allpass delay line, cubic spline interpolation\nURI: http://plugin.org.uk/swh-plugins/allpass_c\nClass: Delay\nAuthor: Steve Harris\nLatency: no\nPorts: \"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\t\"Max Delay (s)\" Input, Control, 0 to 10, default 1\n\t\"Delay Time (s)\" Input, Control, 0 to 10, default 0\n\t\"Decay Time (s)\" Input, Control, 0 to 10, default 0\n\n",
"elv2:http://plugin.org.uk/swh-plugins/allpass_l" : "Name: Allpass delay line, linear interpolation\nURI: http://plugin.org.uk/swh-plugins/allpass_l\nClass: Delay\nAuthor: Steve Harris\nLatency: no\nPorts: \"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\t\"Max Delay (s)\" Input, Control, 0 to 10, default 1\n\t\"Delay Time (s)\" Input, Control, 0 to 10, default 0\n\t\"Decay Time (s)\" Input, Control, 0 to 10, default 0\n\n",
"elv2:http://plugin.org.uk/swh-plugins/allpass_n" : "Name: Allpass delay line, noninterpolating\nURI: http://plugin.org.uk/swh-plugins/allpass_n\nClass: Delay\nAuthor: Steve Harris\nLatency: no\nPorts: \"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\t\"Max Delay (s)\" Input, Control, 0 to 10, default 1\n\t\"Delay Time (s)\" Input, Control, 0 to 10, default 0\n\t\"Decay Time (s)\" Input, Control, 0 to 10, default 0\n\n",
"elv2:http://plugin.org.uk/swh-plugins/amPitchshift" : "Name: AM pitchshifter\nURI: http://plugin.org.uk/swh-plugins/amPitchshift\nClass: Pitch Shifter\nAuthor: Steve Harris\nLatency: yes, reported by port 4\nPorts: \"Pitch shift\" Input, Control, 0.25 to 4, default 1\n\t\"Buffer size\" Input, Control, 1 to 7, default 4\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\t\"latency\" Output, Control\n\n",
"elv2:http://plugin.org.uk/swh-plugins/amp" : "Name: Simple amplifier\nURI: http://plugin.org.uk/swh-plugins/amp\nClass: Amplifier\nAuthor: Steve Harris\nLatency: no\nPorts: \"Amps gain (dB)\" Input, Control, -70 to 70, default 0\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/analogueOsc" : "Name: Analogue Oscillator\nURI: http://plugin.org.uk/swh-plugins/analogueOsc\nClass: Oscillator\nAuthor: Steve Harris\nLatency: no\nPorts: \"Waveform (1=sin, 2=tri, 3=squ, 4=saw)\" Input, Control, 1 to 4, default 1\n\t\"Frequency (Hz)\" Input, Control, 0.000001 to 0.499, default 440\n\t\"Warmth\" Input, Control, 0 to 1, default 0\n\t\"Instability\" Input, Control, 0 to 1, default 0\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/artificialLatency" : "Name: Artificial latency\nURI: http://plugin.org.uk/swh-plugins/artificialLatency\nClass: Utility\nAuthor: Steve Harris\nLatency: yes, reported by port 3\nPorts: \"Delay (ms)\" Input, Control, 0 to 10000, default 2500\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\t\"latency\" Output, Control\n\n",
"elv2:http://plugin.org.uk/swh-plugins/autoPhaser" : "Name: Auto phaser\nURI: http://plugin.org.uk/swh-plugins/autoPhaser\nClass: Phaser\nAuthor: Steve Harris\nLatency: no\nPorts: \"Attack time (s)\" Input, Control, 0 to 1, default 0.25\n\t\"Decay time (s)\" Input, Control, 0 to 1, default 0.25\n\t\"Modulation depth\" Input, Control, 0 to 1, default 0.25\n\t\"Feedback\" Input, Control, -1 to 1, default 0\n\t\"Spread (octaves)\" Input, Control, 0 to 2, default 1\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/bandpass_a_iir" : "Name: Glame Bandpass Analog Filter\nURI: http://plugin.org.uk/swh-plugins/bandpass_a_iir\nClass: Bandpass\nAuthor: Steve Harris\nLatency: no\nPorts: \"Center Frequency (Hz)\" Input, Control, 0.0001 to 0.45, default 0.112575\n\t\"Bandwidth (Hz)\" Input, Control, 0.0001 to 0.45, default 0.22505\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/bandpass_iir" : "Name: Glame Bandpass Filter\nURI: http://plugin.org.uk/swh-plugins/bandpass_iir\nClass: Bandpass\nAuthor: Steve Harris\nLatency: no\nPorts: \"Center Frequency (Hz)\" Input, Control, 0.0001 to 0.45, default 0.22505\n\t\"Bandwidth (Hz)\" Input, Control, 0.0001 to 0.45, default 0.22505\n\t\"Stages(2 poles per stage)\" Input, Control, 1 to 10, default 1\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/bodeShifter" : "Name: Bode frequency shifter\nURI: http://plugin.org.uk/swh-plugins/bodeShifter\nClass: Spectral\nAuthor: Steve Harris\nLatency: yes, reported by port 4\nPorts: \"Frequency shift\" Input, Control, 0 to 5000, default 0\n\t\"Input\" Input, Audio\n\t\"Down out\" Output, Audio\n\t\"Up out\" Output, Audio\n\t\"latency\" Output, Control\n\n",
"elv2:http://plugin.org.uk/swh-plugins/bodeShifterCV" : "Name: Bode frequency shifter (CV)\nURI: http://plugin.org.uk/swh-plugins/bodeShifterCV\nClass: Spectral\nAuthor: Steve Harris\nLatency: yes, reported by port 8\nPorts: \"Base shift\" Input, Control, 0 to 5000, default 0\n\t\"Mix (-1=down, +1=up)\" Input, Control, -1 to 1, default 0\n\t\"Input\" Input, Audio\n\t\"CV Attenuation\" Input, Control, 0 to 1, default 1\n\t\"Shift CV\" Input, Audio\n\t\"Down out\" Output, Audio\n\t\"Up out\" Output, Audio\n\t\"Mix out\" Output, Audio\n\t\"latency\" Output, Control\n\n",
"elv2:http://plugin.org.uk/swh-plugins/butthigh_iir" : "Name: GLAME Butterworth Highpass\nURI: http://plugin.org.uk/swh-plugins/butthigh_iir\nClass: Highpass\nAuthor: Steve Harris\nLatency: no\nPorts: \"Cutoff Frequency (Hz)\" Input, Control, 0.0001 to 0.45, default 0.112575\n\t\"Resonance\" Input, Control, 0.1 to 1.41, default 0.755\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/buttlow_iir" : "Name: GLAME Butterworth Lowpass\nURI: http://plugin.org.uk/swh-plugins/buttlow_iir\nClass: Lowpass\nAuthor: Steve Harris\nLatency: no\nPorts: \"Cutoff Frequency (Hz)\" Input, Control, 0.0001 to 0.45, default 0.112575\n\t\"Resonance\" Input, Control, 0.1 to 1.41, default 0.755\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/bwxover_iir" : "Name: Glame Butterworth X-over Filter\nURI: http://plugin.org.uk/swh-plugins/bwxover_iir\nClass: Bandpass\nAuthor: Steve Harris\nLatency: no\nPorts: \"Cutoff Frequency (Hz)\" Input, Control, 0.0001 to 0.45, default 0.112575\n\t\"Resonance\" Input, Control, 0.1 to 1.41, default 0.755\n\t\"Input\" Input, Audio\n\t\"LP-Output\" Output, Audio\n\t\"HP-Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/chebstortion" : "Name: Chebyshev distortion\nURI: http://plugin.org.uk/swh-plugins/chebstortion\nClass: Distortion\nAuthor: Steve Harris\nLatency: no\nPorts: \"Distortion\" Input, Control, 0 to 3, default 0\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/comb" : "Name: Comb Filter\nURI: http://plugin.org.uk/swh-plugins/comb\nClass: Comb\nAuthor: Steve Harris\nLatency: no\nPorts: \"Band separation (Hz)\" Input, Control, 16 to 640, default 172\n\t\"Feedback\" Input, Control, -0.99 to 0.99, default 0\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/combSplitter" : "Name: Comb Splitter\nURI: http://plugin.org.uk/swh-plugins/combSplitter\nClass: Comb\nAuthor: Steve Harris\nLatency: no\nPorts: \"Band separation (Hz)\" Input, Control, 16 to 640, default 172\n\t\"Input\" Input, Audio\n\t\"Output 1\" Output, Audio\n\t\"Output 2\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/comb_c" : "Name: Comb delay line, cubic spline interpolation\nURI: http://plugin.org.uk/swh-plugins/comb_c\nClass: Delay\nAuthor: Steve Harris\nLatency: no\nPorts: \"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\t\"Max Delay (s)\" Input, Control, 0 to 10, default 1\n\t\"Delay Time (s)\" Input, Control, 0 to 10, default 0\n\t\"Decay Time (s)\" Input, Control, 0 to 10, default 0\n\n",
"elv2:http://plugin.org.uk/swh-plugins/comb_l" : "Name: Comb delay line, linear interpolation\nURI: http://plugin.org.uk/swh-plugins/comb_l\nClass: Delay\nAuthor: Steve Harris\nLatency: no\nPorts: \"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\t\"Max Delay (s)\" Input, Control, 0 to 10, default 1\n\t\"Delay Time (s)\" Input, Control, 0 to 10, default 0\n\t\"Decay Time (s)\" Input, Control, 0 to 10, default 0\n\n",
"elv2:http://plugin.org.uk/swh-plugins/comb_n" : "Name: Comb delay line, noninterpolating\nURI: http://plugin.org.uk/swh-plugins/comb_n\nClass: Delay\nAuthor: Steve Harris\nLatency: no\nPorts: \"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\t\"Max Delay (s)\" Input, Control, 0 to 10, default 1\n\t\"Delay Time (s)\" Input, Control, 0 to 10, default 0\n\t\"Decay Time (s)\" Input, Control, 0 to 10, default 0\n\n",
"elv2:http://plugin.org.uk/swh-plugins/const" : "Name: Constant Signal Generator\nURI: http://plugin.org.uk/swh-plugins/const\nClass: Generator\nAuthor: Steve Harris\nLatency: no\nPorts: \"Signal amplitude\" Input, Control, -1 to 1.1, default 0\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/crossoverDist" : "Name: Crossover distortion\nURI: http://plugin.org.uk/swh-plugins/crossoverDist\nClass: Distortion\nAuthor: Steve Harris\nLatency: no\nPorts: \"Crossover amplitude\" Input, Control, 0 to 0.1, default 0\n\t\"Smoothing\" Input, Control, 0 to 1, default 1\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/dcRemove" : "Name: DC Offset Remover\nURI: http://plugin.org.uk/swh-plugins/dcRemove\nClass: Highpass\nAuthor: Steve Harris\nLatency: no\nPorts: \"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/decay" : "Name: Exponential signal decay\nURI: http://plugin.org.uk/swh-plugins/decay\nClass: Utility\nAuthor: Steve Harris\nLatency: no\nPorts: \"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\t\"Decay Time (s)\" Input, Control, 0 to 10, default 1\n\n",
"elv2:http://plugin.org.uk/swh-plugins/decimator" : "Name: Decimator\nURI: http://plugin.org.uk/swh-plugins/decimator\nClass: Distortion\nAuthor: Steve Harris\nLatency: no\nPorts: \"Bit depth\" Input, Control, 1 to 24, default 24\n\t\"Sample rate (Hz)\" Input, Control, 0.001 to 1, default 1\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/declip" : "Name: Declipper\nURI: http://plugin.org.uk/swh-plugins/declip\nClass: Waveshaper\nAuthor: Steve Harris\nLatency: no\nPorts: \"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/delay_c" : "Name: Simple delay line, cubic spline interpolation\nURI: http://plugin.org.uk/swh-plugins/delay_c\nClass: Delay\nAuthor: Steve Harris\nLatency: no\nPorts: \"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\t\"Max Delay (s)\" Input, Control, 0 to 10, default 1\n\t\"Delay Time (s)\" Input, Control, 0 to 10, default 0\n\n",
"elv2:http://plugin.org.uk/swh-plugins/delay_l" : "Name: Simple delay line, linear interpolation\nURI: http://plugin.org.uk/swh-plugins/delay_l\nClass: Delay\nAuthor: Steve Harris\nLatency: no\nPorts: \"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\t\"Max Delay (s)\" Input, Control, 0 to 10, default 1\n\t\"Delay Time (s)\" Input, Control, 0 to 10, default 0\n\n",
"elv2:http://plugin.org.uk/swh-plugins/delay_n" : "Name: Simple delay line, noninterpolating\nURI: http://plugin.org.uk/swh-plugins/delay_n\nClass: Delay\nAuthor: Steve Harris\nLatency: no\nPorts: \"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\t\"Max Delay (s)\" Input, Control, 0 to 10, default 1\n\t\"Delay Time (s)\" Input, Control, 0 to 10, default 0\n\n",
"elv2:http://plugin.org.uk/swh-plugins/delayorama" : "Name: Delayorama\nURI: http://plugin.org.uk/swh-plugins/delayorama\nClass: Delay\nAuthor: Steve Harris\nLatency: no\nPorts: \"Random seed\" Input, Control, 0 to 1000, default 0\n\t\"Input gain (dB)\" Input, Control, -96 to 24, default 0\n\t\"Feedback (%)\" Input, Control, 0 to 100, default 0\n\t\"Number of taps\" Input, Control, 2 to 128, default 2\n\t\"First delay (s)\" Input, Control, 0 to 5, default 0\n\t\"Delay range (s)\" Input, Control, 0.0001 to 6, default 6\n\t\"Delay change\" Input, Control, 0.2 to 5, default 1\n\t\"Delay random (%)\" Input, Control, 0 to 100, default 0\n\t\"Amplitude change\" Input, Control, 0.2 to 5, default 1\n\t\"Amplitude random (%)\" Input, Control, 0 to 100, default 0\n\t\"Dry/wet mix\" Input, Control, 0 to 1, default 1\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/diode" : "Name: Diode Processor\nURI: http://plugin.org.uk/swh-plugins/diode\nClass: Distortion\nAuthor: Steve Harris\nLatency: no\nPorts: \"Mode (0 for none, 1 for half wave, 2 for full wave)\" Input, Control, 0 to 3, default 0\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/divider" : "Name: Audio Divider (Suboctave Generator)\nURI: http://plugin.org.uk/swh-plugins/divider\nClass: Generator\nAuthor: Steve Harris\nLatency: no\nPorts: \"Denominator\" Input, Control, 1 to 8, default 1\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/djFlanger" : "Name: DJ flanger\nURI: http://plugin.org.uk/swh-plugins/djFlanger\nClass: Flanger\nAuthor: Steve Harris\nLatency: no\nPorts: \"LFO sync\" Input, Control\n\t\"LFO period (s)\" Input, Control, 0.1 to 32, default 1\n\t\"LFO depth (ms)\" Input, Control, 1 to 5, default 4\n\t\"Feedback (%)\" Input, Control, -100 to 100, default 0\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/dj_eq" : "Name: DJ EQ\nURI: http://plugin.org.uk/swh-plugins/dj_eq\nClass: Equaliser\nAuthor: Steve Harris\nLatency: yes, reported by port 7\nPorts: \"Lo gain (dB)\" Input, Control, -70 to 6, default 0\n\t\"Mid gain (dB)\" Input, Control, -70 to 6, default 0\n\t\"Hi gain (dB)\" Input, Control, -70 to 6, default 0\n\t\"Input L\" Input, Audio\n\t\"Input R\" Input, Audio\n\t\"Output L\" Output, Audio\n\t\"Output R\" Output, Audio\n\t\"latency\" Output, Control\n\n",
"elv2:http://plugin.org.uk/swh-plugins/dj_eq_mono" : "Name: DJ EQ (mono)\nURI: http://plugin.org.uk/swh-plugins/dj_eq_mono\nClass: Equaliser\nAuthor: Steve Harris\nLatency: yes, reported by port 5\nPorts: \"Lo gain (dB)\" Input, Control, -70 to 6, default 0\n\t\"Mid gain (dB)\" Input, Control, -70 to 6, default 0\n\t\"Hi gain (dB)\" Input, Control, -70 to 6, default 0\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\t\"latency\" Output, Control\n\n",
"elv2:http://plugin.org.uk/swh-plugins/dysonCompress" : "Name: Dyson compressor\nURI: http://plugin.org.uk/swh-plugins/dysonCompress\nClass: Compressor\nAuthor: Steve Harris\nLatency: no\nPorts: \"Peak limit (dB)\" Input, Control, -30 to 0, default 0\n\t\"Release time (s)\" Input, Control, 0 to 1, default 0.25\n\t\"Fast compression ratio\" Input, Control, 0 to 1, default 0.5\n\t\"Compression ratio\" Input, Control, 0 to 1, default 0.5\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/fadDelay" : "Name: Fractionally Addressed Delay Line\nURI: http://plugin.org.uk/swh-plugins/fadDelay\nClass: Delay\nAuthor: Steve Harris\nLatency: no\nPorts: \"Delay (seconds)\" Input, Control, 0.1 to 10, default 1\n\t\"Feedback (dB)\" Input, Control, -70 to 0, default 0\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/fastLookaheadLimiter" : "Name: Fast Lookahead limiter\nURI: http://plugin.org.uk/swh-plugins/fastLookaheadLimiter\nClass: Limiter\nAuthor: Steve Harris\nLatency: yes, reported by port 8\nPorts: \"Input gain (dB)\" Input, Control, -20 to 20, default 0\n\t\"Limit (dB)\" Input, Control, -20 to 0, default 0\n\t\"Release time (s)\" Input, Control, 0.01 to 2, default 0.5075\n\t\"Attenuation (dB)\" Output, Control, 0 to 70\n\t\"Input 1\" Input, Audio\n\t\"Input 2\" Input, Audio\n\t\"Output 1\" Output, Audio\n\t\"Output 2\" Output, Audio\n\t\"latency\" Output, Control\n\n",
"elv2:http://plugin.org.uk/swh-plugins/flanger" : "Name: Flanger\nURI: http://plugin.org.uk/swh-plugins/flanger\nClass: Flanger\nAuthor: Steve Harris\nLatency: no\nPorts: \"Delay base (ms)\" Input, Control, 0.1 to 25, default 6.325\n\t\"Max slowdown (ms)\" Input, Control, 0 to 10, default 2.5\n\t\"LFO frequency (Hz)\" Input, Control, 0.05 to 100, default 25.0375\n\t\"Feedback\" Input, Control, -1 to 1, default 0\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/fmOsc" : "Name: FM Oscillator\nURI: http://plugin.org.uk/swh-plugins/fmOsc\nClass: Oscillator\nAuthor: Steve Harris\nLatency: no\nPorts: \"Waveform (1=sin, 2=tri, 3=squ, 4=saw)\" Input, Control, 1 to 4, default 1\n\t\"Frequency (Hz)\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/foldover" : "Name: Foldover distortion\nURI: http://plugin.org.uk/swh-plugins/foldover\nClass: Distortion\nAuthor: Steve Harris\nLatency: no\nPorts: \"Drive\" Input, Control, 0 to 1, default 0\n\t\"Skew\" Input, Control, 0 to 1, default 0\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/fourByFourPole" : "Name: 4 x 4 pole allpass\nURI: http://plugin.org.uk/swh-plugins/fourByFourPole\nClass: Allpass\nAuthor: Steve Harris\nLatency: no\nPorts: \"Frequency 1\" Input, Control, 1 to 20000, default 5000.75\n\t\"Feedback 1\" Input, Control, -1 to 1, default 0\n\t\"Frequency 2\" Input, Control, 1 to 20000, default 10000.5\n\t\"Feedback 2\" Input, Control, -1 to 1, default 0\n\t\"Frequency 3\" Input, Control, 1 to 20000, default 15000.25\n\t\"Feedback 3\" Input, Control, -1 to 1, default 0\n\t\"Frequency 4\" Input, Control, 1 to 20000, default 20000\n\t\"Feedback 4\" Input, Control, -1 to 1, default 0\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/foverdrive" : "Name: Fast overdrive\nURI: http://plugin.org.uk/swh-plugins/foverdrive\nClass: Distortion\nAuthor: Steve Harris\nLatency: no\nPorts: \"Drive level\" Input, Control, 1 to 3, default 1\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/freqTracker" : "Name: Frequency tracker\nURI: http://plugin.org.uk/swh-plugins/freqTracker\nClass: Analyser\nAuthor: Steve Harris\nLatency: no\nPorts: \"Tracking speed\" Input, Control, 0 to 1, default 0.5\n\t\"Input\" Input, Audio\n\t\"Frequency (Hz)\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/gate" : "Name: Gate\nURI: http://plugin.org.uk/swh-plugins/gate\nClass: Gate\nAuthor: Steve Harris\nLatency: no\nPorts: \"LF key filter (Hz)\" Input, Control, 25 to 4000, default 500\n\t\"HF key filter (Hz)\" Input, Control, 250 to 20000, default 2000\n\t\"Threshold (dB)\" Input, Control, -70 to 20, default -40\n\t\"Attack (ms)\" Input, Control, 0.01 to 1000, default 0.1\n\t\"Hold (ms)\" Input, Control, 2 to 2000, default 50\n\t\"Decay (ms)\" Input, Control, 2 to 4000, default 50\n\t\"Range (dB)\" Input, Control, -90 to 0, default -20\n\t\"Output select (-1 = key listen, 0 = gate, 1 = bypass)\" Input, Control, -1 to 1, default 0\n\t\"Key level (dB)\" Output, Control, -90 to 0\n\t\"Gate state\" Output, Control, 0 to 1\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/giantFlange" : "Name: Giant flange\nURI: http://plugin.org.uk/swh-plugins/giantFlange\nClass: Flanger\nAuthor: Steve Harris\nLatency: no\nPorts: \"Double delay\" Input, Control\n\t\"LFO frequency 1 (Hz)\" Input, Control, 0 to 30, default 1\n\t\"Delay 1 range (s)\" Input, Control, 0 to 10.5, default 2.625\n\t\"LFO frequency 2 (Hz)\" Input, Control, 0 to 30, default 1\n\t\"Delay 2 range (s)\" Input, Control, 0 to 10.5, default 0\n\t\"Feedback\" Input, Control, -100 to 100, default 0\n\t\"Dry/Wet level\" Input, Control, 0 to 1, default 0\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/gong" : "Name: Gong model\nURI: http://plugin.org.uk/swh-plugins/gong\nClass: Generator\nAuthor: Steve Harris\nLatency: no\nPorts: \"Inner damping\" Input, Control, 0 to 1, default 0.5\n\t\"Outer damping\" Input, Control, 0 to 1, default 0.5\n\t\"Mic position\" Input, Control, 0 to 1, default 0.25\n\t\"Inner size 1\" Input, Control, 0 to 1, default 0.5\n\t\"Inner stiffness 1 +\" Input, Control, 0 to 1, default 0.5\n\t\"Inner stiffness 1 -\" Input, Control, 0 to 1, default 0.5\n\t\"Inner size 2\" Input, Control, 0 to 1, default 0.5\n\t\"Inner stiffness 2 +\" Input, Control, 0 to 1, default 0.5\n\t\"Inner stiffness 2 -\" Input, Control, 0 to 1, default 0.5\n\t\"Inner size 3\" Input, Control, 0 to 1, default 0.5\n\t\"Inner stiffness 3 +\" Input, Control, 0 to 1, default 0.5\n\t\"Inner stiffness 3 -\" Input, Control, 0 to 1, default 0.5\n\t\"Inner size 4\" Input, Control, 0 to 1, default 0.5\n\t\"Inner stiffness 4 +\" Input, Control, 0 to 1, default 0.5\n\t\"Inner stiffness 4 -\" Input, Control, 0 to 1, default 0.5\n\t\"Outer size 1\" Input, Control, 0 to 1, default 0.5\n\t\"Outer stiffness 1 +\" Input, Control, 0 to 1, default 0.5\n\t\"Outer stiffness 1 -\" Input, Control, 0 to 1, default 0.5\n\t\"Outer size 2\" Input, Control, 0 to 1, default 0.5\n\t\"Outer stiffness 2 +\" Input, Control, 0 to 1, default 0.5\n\t\"Outer stiffness 2 -\" Input, Control, 0 to 1, default 0.5\n\t\"Outer size 3\" Input, Control, 0 to 1, default 0.5\n\t\"Outer stiffness 3 +\" Input, Control, 0 to 1, default 0.5\n\t\"Outer stiffness 3 -\" Input, Control, 0 to 1, default 0.5\n\t\"Outer size 4\" Input, Control, 0 to 1, default 0.5\n\t\"Outer stiffness 4 +\" Input, Control, 0 to 1, default 0.5\n\t\"Outer stiffness 4 -\" Input, Control, 0 to 1, default 0.5\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/gongBeater" : "Name: Gong beater\nURI: http://plugin.org.uk/swh-plugins/gongBeater\nClass: Generator\nAuthor: Steve Harris\nLatency: no\nPorts: \"Impulse gain (dB)\" Input, Control, -70 to 0, default -70\n\t\"Strike gain (dB)\" Input, Control, -70 to 0, default 0\n\t\"Strike duration (s)\" Input, Control, 0.001 to 0.2, default 0.1005\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/gverb" : "Name: GVerb\nURI: http://plugin.org.uk/swh-plugins/gverb\nClass: Reverb\nAuthor: Steve Harris\nLatency: no\nPorts: \"Roomsize (m)\" Input, Control, 1 to 300, default 75.75\n\t\"Reverb time (s)\" Input, Control, 0.1 to 30, default 7.575\n\t\"Damping\" Input, Control, 0 to 1, default 0.5\n\t\"Input bandwidth\" Input, Control, 0 to 1, default 0.75\n\t\"Dry signal level (dB)\" Input, Control, -70 to 0, default -70\n\t\"Early reflection level (dB)\" Input, Control, -70 to 0, default 0\n\t\"Tail level (dB)\" Input, Control, -70 to 0, default -17.5\n\t\"Input\" Input, Audio\n\t\"Left output\" Output, Audio\n\t\"Right output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/hardLimiter" : "Name: Hard Limiter\nURI: http://plugin.org.uk/swh-plugins/hardLimiter\nClass: Distortion\nAuthor: Steve Harris\nLatency: no\nPorts: \"dB limit\" Input, Control, -50 to 0, default 0\n\t\"Wet level\" Input, Control, 0 to 1, default 1\n\t\"Residue level\" Input, Control, 0 to 1, default 0\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/harmonicGen" : "Name: Harmonic generator\nURI: http://plugin.org.uk/swh-plugins/harmonicGen\nClass: Generator\nAuthor: Steve Harris\nLatency: no\nPorts: \"Fundamental magnitude\" Input, Control, -1 to 1, default 1\n\t\"2nd harmonic magnitude\" Input, Control, -1 to 1, default 0\n\t\"3rd harmonic magnitude\" Input, Control, -1 to 1, default 0\n\t\"4th harmonic magnitude\" Input, Control, -1 to 1, default 0\n\t\"5th harmonic magnitude\" Input, Control, -1 to 1, default 0\n\t\"6th harmonic magnitude\" Input, Control, -1 to 1, default 0\n\t\"7th harmonic magnitude\" Input, Control, -1 to 1, default 0\n\t\"8th harmonic magnitude\" Input, Control, -1 to 1, default 0\n\t\"9th harmonic magnitude\" Input, Control, -1 to 1, default 0\n\t\"10th harmonic magnitude\" Input, Control, -1 to 1, default 0\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/hermesFilter" : "Name: Hermes Filter\nURI: http://plugin.org.uk/swh-plugins/hermesFilter\nClass: Filter\nAuthor: Steve Harris\nLatency: no\nPorts: \"LFO1 freq (Hz)\" Input, Control, 0 to 1000, default 250\n\t\"LFO1 wave (0 = sin, 1 = tri, 2 = saw, 3 = squ, 4 = s&h)\" Input, Control, 0 to 4, default 0\n\t\"LFO2 freq (Hz)\" Input, Control, 0 to 1000, default 250\n\t\"LFO2 wave (0 = sin, 1 = tri, 2 = saw, 3 = squ, 4 = s&h)\" Input, Control, 0 to 4, default 0\n\t\"Osc1 freq (Hz)\" Input, Control, 0 to 4000, default 440\n\t\"Osc1 wave (0 = sin, 1 = tri, 2 = saw, 3 = squ, 4 = noise)\" Input, Control, 0 to 4, default 0\n\t\"Osc2 freq (Hz)\" Input, Control, 0 to 4000, default 440\n\t\"Osc2 wave (0 = sin, 1 = tri, 2 = saw, 3 = squ, 4 = noise)\" Input, Control, 0 to 4, default 0\n\t\"Ringmod 1 depth (0=none, 1=AM, 2=RM)\" Input, Control, 0 to 2, default 0\n\t\"Ringmod 2 depth (0=none, 1=AM, 2=RM)\" Input, Control, 0 to 2, default 0\n\t\"Ringmod 3 depth (0=none, 1=AM, 2=RM)\" Input, Control, 0 to 2, default 0\n\t\"Osc1 gain (dB)\" Input, Control, -70 to 20, default -70\n\t\"RM1 gain (dB)\" Input, Control, -70 to 20, default -70\n\t\"Osc2 gain (dB)\" Input, Control, -70 to 20, default -70\n\t\"RM2 gain (dB)\" Input, Control, -70 to 20, default -70\n\t\"Input gain (dB)\" Input, Control, -70 to 20, default 0\n\t\"RM3 gain (dB)\" Input, Control, -70 to 20, default -70\n\t\"Xover lower freq\" Input, Control, 50 to 6000, default 1537.5\n\t\"Xover upper freq\" Input, Control, 1000 to 10000, default 7750\n\t\"Dist1 drive\" Input, Control, 0 to 3, default 0\n\t\"Dist2 drive\" Input, Control, 0 to 3, default 0\n\t\"Dist3 drive\" Input, Control, 0 to 3, default 0\n\t\"Filt1 type (0=none, 1=LP, 2=HP, 3=BP, 4=BR, 5=AP)\" Input, Control, 0 to 5, default 0\n\t\"Filt1 freq\" Input, Control, 0 to 8000, default 440\n\t\"Filt1 q\" Input, Control, 0 to 1, default 0\n\t\"Filt1 resonance\" Input, Control, 0 to 1, default 0\n\t\"Filt1 LFO1 level\" Input, Control, -500 to 500, default 0\n\t\"Filt1 LFO2 level\" Input, Control, -500 to 500, default 0\n\t\"Filt2 type (0=none, 1=LP, 2=HP, 3=BP, 4=BR, 5=AP)\" Input, Control, 0 to 5, default 0\n\t\"Filt2 freq\" Input, Control, 0 to 8000, default 440\n\t\"Filt2 q\" Input, Control, 0 to 1, default 0\n\t\"Filt2 resonance\" Input, Control, 0 to 1, default 0\n\t\"Filt2 LFO1 level\" Input, Control, -500 to 500, default 0\n\t\"Filt2 LFO2 level\" Input, Control, -500 to 500, default 0\n\t\"Filt3 type (0=none, 1=LP, 2=HP, 3=BP, 4=BR, 5=AP)\" Input, Control, 0 to 5, default 0\n\t\"Filt3 freq\" Input, Control, 0 to 8000, default 440\n\t\"Filt3 q\" Input, Control, 0 to 1, default 0\n\t\"Filt3 resonance\" Input, Control, 0 to 1, default 0\n\t\"Filt3 LFO1 level\" Input, Control, -500 to 500, default 0\n\t\"Filt3 LFO2 level\" Input, Control, -500 to 500, default 0\n\t\"Delay1 length (s)\" Input, Control, 0 to 2, default 0\n\t\"Delay1 feedback\" Input, Control, 0 to 1, default 0\n\t\"Delay1 wetness\" Input, Control, 0 to 1, default 0\n\t\"Delay2 length (s)\" Input, Control, 0 to 2, default 0\n\t\"Delay2 feedback\" Input, Control, 0 to 1, default 0\n\t\"Delay2 wetness\" Input, Control, 0 to 1, default 0\n\t\"Delay3 length (s)\" Input, Control, 0 to 2, default 0\n\t\"Delay3 feedback\" Input, Control, 0 to 1, default 0\n\t\"Delay3 wetness\" Input, Control, 0 to 1, default 0\n\t\"Band 1 gain (dB)\" Input, Control, -70 to 20, default 0\n\t\"Band 2 gain (dB)\" Input, Control, -70 to 20, default 0\n\t\"Band 3 gain (dB)\" Input, Control, -70 to 20, default 0\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/highpass_iir" : "Name: Glame Highpass Filter\nURI: http://plugin.org.uk/swh-plugins/highpass_iir\nClass: Highpass\nAuthor: Steve Harris\nLatency: no\nPorts: \"Cutoff Frequency\" Input, Control, 0.0001 to 0.45, default 0.112575\n\t\"Stages(2 poles per stage)\" Input, Control, 1 to 10, default 1\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/hilbert" : "Name: Hilbert transformer\nURI: http://plugin.org.uk/swh-plugins/hilbert\nClass: Analyser\nAuthor: Steve Harris\nLatency: yes, reported by port 3\nPorts: \"Input\" Input, Audio\n\t\"0deg output\" Output, Audio\n\t\"90deg output\" Output, Audio\n\t\"latency\" Output, Control\n\n",
"elv2:http://plugin.org.uk/swh-plugins/impulse_fc" : "Name: Non-bandlimited single-sample impulses\nURI: http://plugin.org.uk/swh-plugins/impulse_fc\nClass: Generator\nAuthor: Steve Harris\nLatency: no\nPorts: \"Frequency (Hz)\" Input, Control, 0 to 5000, default 1\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/inv" : "Name: Inverter\nURI: http://plugin.org.uk/swh-plugins/inv\nClass: Utility\nAuthor: Steve Harris\nLatency: no\nPorts: \"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/karaoke" : "Name: Karaoke\nURI: http://plugin.org.uk/swh-plugins/karaoke\nClass: Filter\nAuthor: Steve Harris\nLatency: no\nPorts: \"Vocal volume (dB)\" Input, Control, -70 to 0, default 0\n\t\"Left in\" Input, Audio\n\t\"Right in\" Input, Audio\n\t\"Left out\" Output, Audio\n\t\"Right out\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/lcrDelay" : "Name: L/C/R Delay\nURI: http://plugin.org.uk/swh-plugins/lcrDelay\nClass: Delay\nAuthor: Steve Harris\nLatency: no\nPorts: \"L delay (ms)\" Input, Control, 0 to 2700, default 675\n\t\"L level\" Input, Control, 0 to 50, default 25\n\t\"C delay (ms)\" Input, Control, 0 to 2700, default 675\n\t\"C level\" Input, Control, 0 to 50, default 25\n\t\"R delay (ms)\" Input, Control, 0 to 2700, default 675\n\t\"R level\" Input, Control, 0 to 50, default 25\n\t\"Feedback\" Input, Control, -100 to 100, default 0\n\t\"High damp (%)\" Input, Control, 0 to 100, default 50\n\t\"Low damp (%)\" Input, Control, 0 to 100, default 50\n\t\"Spread\" Input, Control, 0 to 50, default 25\n\t\"Dry/Wet level\" Input, Control, 0 to 1, default 0\n\t\"L input\" Input, Audio\n\t\"R input\" Input, Audio\n\t\"L output\" Output, Audio\n\t\"R output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/lfoPhaser" : "Name: LFO Phaser\nURI: http://plugin.org.uk/swh-plugins/lfoPhaser\nClass: Phaser\nAuthor: Steve Harris\nLatency: no\nPorts: \"LFO rate (Hz)\" Input, Control, 0 to 100, default 25\n\t\"LFO depth\" Input, Control, 0 to 1, default 0.25\n\t\"Feedback\" Input, Control, -1 to 1, default 0\n\t\"Spread (octaves)\" Input, Control, 0 to 2, default 1\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/lookaheadLimiter" : "Name: Lookahead limiter\nURI: http://plugin.org.uk/swh-plugins/lookaheadLimiter\nClass: Limiter\nAuthor: Steve Harris\nLatency: yes, reported by port 7\nPorts: \"Limit (dB)\" Input, Control, -20 to 0, default 0\n\t\"Lookahead delay\" Input, Control, 0.001 to 2, default 1.0005\n\t\"Attenuation (dB)\" Output, Control, 0 to 12\n\t\"Input 1\" Input, Audio\n\t\"Input 2\" Input, Audio\n\t\"Output 1\" Output, Audio\n\t\"Output 2\" Output, Audio\n\t\"latency\" Output, Control\n\n",
"elv2:http://plugin.org.uk/swh-plugins/lookaheadLimiterConst" : "Name: Lookahead limiter (fixed latency)\nURI: http://plugin.org.uk/swh-plugins/lookaheadLimiterConst\nClass: Limiter\nAuthor: Steve Harris\nLatency: yes, reported by port 7\nPorts: \"Limit (dB)\" Input, Control, -20 to 0, default 0\n\t\"Lookahead time (s)\" Input, Control, 0.001 to 0.15, default 0.0755\n\t\"Attenuation (dB)\" Output, Control, 0 to 12\n\t\"Input 1\" Input, Audio\n\t\"Input 2\" Input, Audio\n\t\"Output 1\" Output, Audio\n\t\"Output 2\" Output, Audio\n\t\"latency\" Output, Control\n\n",
"elv2:http://plugin.org.uk/swh-plugins/lowpass_iir" : "Name: Glame Lowpass Filter\nURI: http://plugin.org.uk/swh-plugins/lowpass_iir\nClass: Lowpass\nAuthor: Steve Harris\nLatency: no\nPorts: \"Cutoff Frequency\" Input, Control, 0.0001 to 0.45, default 0.337525\n\t\"Stages(2 poles per stage)\" Input, Control, 1 to 10, default 1\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/lsFilter" : "Name: LS Filter\nURI: http://plugin.org.uk/swh-plugins/lsFilter\nClass: Filter\nAuthor: Steve Harris\nLatency: no\nPorts: \"Filter type (0=LP, 1=BP, 2=HP)\" Input, Control, 0 to 2, default 0\n\t\"Cutoff frequency (Hz)\" Input, Control, 0.002 to 0.5, default 0.251\n\t\"Resonance\" Input, Control, 0 to 1, default 0\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/matrixMSSt" : "Name: Matrix: MS to Stereo\nURI: http://plugin.org.uk/swh-plugins/matrixMSSt\nClass: Converter\nAuthor: Steve Harris\nLatency: no\nPorts: \"Width\" Input, Control, 0 to 2, default 1\n\t\"Mid\" Input, Audio\n\t\"Side\" Input, Audio\n\t\"Left\" Output, Audio\n\t\"Right\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/matrixSpatialiser" : "Name: Matrix Spatialiser\nURI: http://plugin.org.uk/swh-plugins/matrixSpatialiser\nClass: Utility\nAuthor: Steve Harris\nLatency: no\nPorts: \"Input L\" Input, Audio\n\t\"Input R\" Input, Audio\n\t\"Width\" Input, Control, -512 to 512, default 0\n\t\"Output L\" Output, Audio\n\t\"Output R\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/matrixStMS" : "Name: Matrix: Stereo to MS\nURI: http://plugin.org.uk/swh-plugins/matrixStMS\nClass: Converter\nAuthor: Steve Harris\nLatency: no\nPorts: \"Left\" Input, Audio\n\t\"Right\" Input, Audio\n\t\"Mid\" Output, Audio\n\t\"Side\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/mbeq" : "Name: Multiband EQ\nURI: http://plugin.org.uk/swh-plugins/mbeq\nClass: Multiband\nAuthor: Steve Harris\nLatency: yes, reported by port 17\nPorts: \"50Hz gain (low shelving)\" Input, Control, -70 to 30, default 0\n\t\"100Hz gain\" Input, Control, -70 to 30, default 0\n\t\"156Hz gain\" Input, Control, -70 to 30, default 0\n\t\"220Hz gain\" Input, Control, -70 to 30, default 0\n\t\"311Hz gain\" Input, Control, -70 to 30, default 0\n\t\"440Hz gain\" Input, Control, -70 to 30, default 0\n\t\"622Hz gain\" Input, Control, -70 to 30, default 0\n\t\"880Hz gain\" Input, Control, -70 to 30, default 0\n\t\"1250Hz gain\" Input, Control, -70 to 30, default 0\n\t\"1750Hz gain\" Input, Control, -70 to 30, default 0\n\t\"2500Hz gain\" Input, Control, -70 to 30, default 0\n\t\"3500Hz gain\" Input, Control, -70 to 30, default 0\n\t\"5000Hz gain\" Input, Control, -70 to 30, default 0\n\t\"10000Hz gain\" Input, Control, -70 to 30, default 0\n\t\"20000Hz gain\" Input, Control, -70 to 30, default 0\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\t\"latency\" Output, Control\n\n",
"elv2:http://plugin.org.uk/swh-plugins/modDelay" : "Name: Modulatable delay\nURI: http://plugin.org.uk/swh-plugins/modDelay\nClass: Delay\nAuthor: Steve Harris\nLatency: no\nPorts: \"Base delay (s)\" Input, Control, 0 to 1, default 1\n\t\"Delay (s)\" Input, Audio\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/multivoiceChorus" : "Name: Multivoice Chorus\nURI: http://plugin.org.uk/swh-plugins/multivoiceChorus\nClass: Chorus\nAuthor: Steve Harris\nLatency: no\nPorts: \"Number of voices\" Input, Control, 1 to 8, default 1\n\t\"Delay base (ms)\" Input, Control, 10 to 40, default 10\n\t\"Voice separation (ms)\" Input, Control, 0 to 2, default 0.5\n\t\"Detune (%)\" Input, Control, 0 to 5, default 1\n\t\"LFO frequency (Hz)\" Input, Control, 2 to 30, default 9\n\t\"Output attenuation (dB)\" Input, Control, -20 to 0, default 0\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/pitchScaleHQ" : "Name: Higher Quality Pitch Scaler\nURI: http://plugin.org.uk/swh-plugins/pitchScaleHQ\nClass: Pitch Shifter\nAuthor: Steve Harris\nLatency: yes, reported by port 3\nPorts: \"Pitch co-efficient\" Input, Control, 0.5 to 2, default 1\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\t\"latency\" Output, Control\n\n",
"elv2:http://plugin.org.uk/swh-plugins/plate" : "Name: Plate reverb\nURI: http://plugin.org.uk/swh-plugins/plate\nClass: Reverb\nAuthor: Steve Harris\nLatency: no\nPorts: \"Reverb time\" Input, Control, 0.01 to 8.5, default 4.255\n\t\"Damping\" Input, Control, 0 to 1, default 0.25\n\t\"Dry/wet mix\" Input, Control, 0 to 1, default 0.25\n\t\"Input\" Input, Audio\n\t\"Left output\" Output, Audio\n\t\"Right output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/pointerCastDistortion" : "Name: Pointer cast distortion\nURI: http://plugin.org.uk/swh-plugins/pointerCastDistortion\nClass: Distortion\nAuthor: Steve Harris\nLatency: no\nPorts: \"Effect cutoff freq (Hz)\" Input, Control, 0.0001 to 0.3, default 0.075075\n\t\"Dry/wet mix\" Input, Control, 0 to 1, default 0\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/rateShifter" : "Name: Rate shifter\nURI: http://plugin.org.uk/swh-plugins/rateShifter\nClass: Pitch Shifter\nAuthor: Steve Harris\nLatency: no\nPorts: \"Rate\" Input, Control, -4 to 4, default 1\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/retroFlange" : "Name: Retro Flanger\nURI: http://plugin.org.uk/swh-plugins/retroFlange\nClass: Flanger\nAuthor: Steve Harris\nLatency: no\nPorts: \"Average stall (ms)\" Input, Control, 0 to 10, default 2.5\n\t\"Flange frequency (Hz)\" Input, Control, 0.5 to 8, default 1\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/revdelay" : "Name: Reverse Delay (5s max)\nURI: http://plugin.org.uk/swh-plugins/revdelay\nClass: Delay\nAuthor: Steve Harris\nLatency: no\nPorts: \"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\t\"Delay Time (s)\" Input, Control, 0 to 5, default 0\n\t\"Dry Level (dB)\" Input, Control, -70 to 0, default 0\n\t\"Wet Level (dB)\" Input, Control, -70 to 0, default 0\n\t\"Feedback\" Input, Control, 0 to 1, default 0\n\t\"Crossfade samples\" Input, Control, 0 to 5000, default 1250\n\n",
"elv2:http://plugin.org.uk/swh-plugins/ringmod_1i1o1l" : "Name: Ringmod with LFO\nURI: http://plugin.org.uk/swh-plugins/ringmod_1i1o1l\nClass: Modulator\nAuthor: Steve Harris\nLatency: no\nPorts: \"Modulation depth (0=none, 1=AM, 2=RM)\" Input, Control, 0 to 2, default 0\n\t\"Frequency (Hz)\" Input, Control, 1 to 1000, default 440\n\t\"Sine level\" Input, Control, -1 to 1, default 1\n\t\"Triangle level\" Input, Control, -1 to 1, default 0\n\t\"Sawtooth level\" Input, Control, -1 to 1, default 0\n\t\"Square level\" Input, Control, -1 to 1, default 0\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/ringmod_2i1o" : "Name: Ringmod with two inputs\nURI: http://plugin.org.uk/swh-plugins/ringmod_2i1o\nClass: Modulator\nAuthor: Steve Harris\nLatency: no\nPorts: \"Modulation depth (0=none, 1=AM, 2=RM)\" Input, Control, 0 to 2, default 0\n\t\"Input\" Input, Audio\n\t\"Modulator\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/satanMaximiser" : "Name: Barry's Satan Maximiser\nURI: http://plugin.org.uk/swh-plugins/satanMaximiser\nClass: Distortion\nAuthor: Steve Harris\nLatency: no\nPorts: \"Decay time (samples)\" Input, Control, 2 to 30, default 30\n\t\"Knee point (dB)\" Input, Control, -90 to 0, default 0\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/sc1" : "Name: SC1\nURI: http://plugin.org.uk/swh-plugins/sc1\nClass: Compressor\nAuthor: Steve Harris\nLatency: no\nPorts: \"Attack time (ms)\" Input, Control, 2 to 400, default 101.5\n\t\"Release time (ms)\" Input, Control, 2 to 800, default 401\n\t\"Threshold level (dB)\" Input, Control, -30 to 0, default 0\n\t\"Ratio (1:n)\" Input, Control, 1 to 10, default 1\n\t\"Knee radius (dB)\" Input, Control, 1 to 10, default 3.25\n\t\"Makeup gain (dB)\" Input, Control, 0 to 24, default 0\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/sc2" : "Name: SC2\nURI: http://plugin.org.uk/swh-plugins/sc2\nClass: Compressor\nAuthor: Steve Harris\nLatency: no\nPorts: \"Attack time (ms)\" Input, Control, 2 to 400, default 101.5\n\t\"Release time (ms)\" Input, Control, 2 to 800, default 401\n\t\"Threshold level (dB)\" Input, Control, -30 to 0, default 0\n\t\"Ratio (1:n)\" Input, Control, 1 to 10, default 1\n\t\"Knee radius (dB)\" Input, Control, 1 to 10, default 3.25\n\t\"Makeup gain (dB)\" Input, Control, 0 to 24, default 0\n\t\"Sidechain\" Input, Audio\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/sc3" : "Name: SC3\nURI: http://plugin.org.uk/swh-plugins/sc3\nClass: Compressor\nAuthor: Steve Harris\nLatency: no\nPorts: \"Attack time (ms)\" Input, Control, 2 to 400, default 101.5\n\t\"Release time (ms)\" Input, Control, 2 to 800, default 401\n\t\"Threshold level (dB)\" Input, Control, -30 to 0, default 0\n\t\"Ratio (1:n)\" Input, Control, 1 to 10, default 1\n\t\"Knee radius (dB)\" Input, Control, 1 to 10, default 3.25\n\t\"Makeup gain (dB)\" Input, Control, 0 to 24, default 0\n\t\"Chain balance\" Input, Control, 0 to 1, default 0\n\t\"Sidechain\" Input, Audio\n\t\"Left input\" Input, Audio\n\t\"Right input\" Input, Audio\n\t\"Left output\" Output, Audio\n\t\"Right output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/sc4" : "Name: SC4\nURI: http://plugin.org.uk/swh-plugins/sc4\nClass: Compressor\nAuthor: Steve Harris\nLatency: no\nPorts: \"RMS/peak\" Input, Control, 0 to 1, default 0\n\t\"Attack time (ms)\" Input, Control, 1.5 to 400, default 101.125\n\t\"Release time (ms)\" Input, Control, 2 to 800, default 401\n\t\"Threshold level (dB)\" Input, Control, -30 to 0, default 0\n\t\"Ratio (1:n)\" Input, Control, 1 to 20, default 1\n\t\"Knee radius (dB)\" Input, Control, 1 to 10, default 3.25\n\t\"Makeup gain (dB)\" Input, Control, 0 to 24, default 0\n\t\"Amplitude (dB)\" Output, Control, -40 to 12\n\t\"Gain reduction (dB)\" Output, Control, -24 to 0\n\t\"Left input\" Input, Audio\n\t\"Right input\" Input, Audio\n\t\"Left output\" Output, Audio\n\t\"Right output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/se4" : "Name: SE4\nURI: http://plugin.org.uk/swh-plugins/se4\nClass: Compressor\nAuthor: Steve Harris\nLatency: no\nPorts: \"RMS/peak\" Input, Control, 0 to 1, default 0\n\t\"Attack time (ms)\" Input, Control, 1.5 to 400, default 101.125\n\t\"Release time (ms)\" Input, Control, 2 to 800, default 401\n\t\"Threshold level (dB)\" Input, Control, -30 to 0, default 0\n\t\"Ratio (1:n)\" Input, Control, 1 to 20, default 1\n\t\"Knee radius (dB)\" Input, Control, 1 to 10, default 3.25\n\t\"Attenuation (dB)\" Input, Control, -24 to 0, default 0\n\t\"Amplitude (dB)\" Output, Control, -40 to 12\n\t\"Gain expansion (dB)\" Output, Control, 0 to 24\n\t\"Left input\" Input, Audio\n\t\"Right input\" Input, Audio\n\t\"Left output\" Output, Audio\n\t\"Right output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/shaper" : "Name: Wave shaper\nURI: http://plugin.org.uk/swh-plugins/shaper\nClass: Waveshaper\nAuthor: Steve Harris\nLatency: no\nPorts: \"Waveshape\" Input, Control, -10 to 10, default 0\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/sifter" : "Name: Signal sifter\nURI: http://plugin.org.uk/swh-plugins/sifter\nClass: Distortion\nAuthor: Steve Harris\nLatency: no\nPorts: \"Sift size\" Input, Control, 1 to 1000, default 1\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/sinCos" : "Name: Sine + cosine oscillator\nURI: http://plugin.org.uk/swh-plugins/sinCos\nClass: Oscillator\nAuthor: Steve Harris\nLatency: no\nPorts: \"Base frequency (Hz)\" Input, Control, 0.000001 to 0.5, default 440\n\t\"Pitch offset\" Input, Control, 0 to 8, default 0\n\t\"Sine output\" Output, Audio\n\t\"Cosine output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/singlePara" : "Name: Single band parametric\nURI: http://plugin.org.uk/swh-plugins/singlePara\nClass: Parametric\nAuthor: Steve Harris\nLatency: no\nPorts: \"Gain (dB)\" Input, Control, -70 to 30, default 0\n\t\"Frequency (Hz)\" Input, Control, 0 to 0.4, default 440\n\t\"Bandwidth (octaves)\" Input, Control, 0 to 4, default 1\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/sinusWavewrapper" : "Name: Sinus wavewrapper\nURI: http://plugin.org.uk/swh-plugins/sinusWavewrapper\nClass: Waveshaper\nAuthor: Steve Harris\nLatency: no\nPorts: \"Wrap degree\" Input, Control, 0 to 10, default 0\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/smoothDecimate" : "Name: Smooth Decimator\nURI: http://plugin.org.uk/swh-plugins/smoothDecimate\nClass: Distortion\nAuthor: Steve Harris\nLatency: no\nPorts: \"Resample rate\" Input, Control, 0 to 1, default 1\n\t\"Smoothing\" Input, Control, 0 to 1, default 1\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/split" : "Name: Mono to Stereo splitter\nURI: http://plugin.org.uk/swh-plugins/split\nClass: Converter\nAuthor: Steve Harris\nLatency: no\nPorts: \"Input\" Input, Audio\n\t\"Output 1\" Output, Audio\n\t\"Output 2\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/surroundEncoder" : "Name: Surround matrix encoder\nURI: http://plugin.org.uk/swh-plugins/surroundEncoder\nClass: Converter\nAuthor: Steve Harris\nLatency: no\nPorts: \"L\" Input, Audio\n\t\"R\" Input, Audio\n\t\"C\" Input, Audio\n\t\"S\" Input, Audio\n\t\"Lt\" Output, Audio\n\t\"Rt\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/svf" : "Name: State Variable Filter\nURI: http://plugin.org.uk/swh-plugins/svf\nClass: Filter\nAuthor: Steve Harris\nLatency: no\nPorts: \"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\t\"Filter type (0=none, 1=LP, 2=HP, 3=BP, 4=BR, 5=AP)\" Input, Control, 0 to 5, default 0\n\t\"Filter freq\" Input, Control, 0 to 6000, default 440\n\t\"Filter Q\" Input, Control, 0 to 1, default 0.25\n\t\"Filter resonance\" Input, Control, 0 to 1, default 0\n\n",
"elv2:http://plugin.org.uk/swh-plugins/tapeDelay" : "Name: Tape Delay Simulation\nURI: http://plugin.org.uk/swh-plugins/tapeDelay\nClass: Delay\nAuthor: Steve Harris\nLatency: no\nPorts: \"Tape speed (inches/sec, 1=normal)\" Input, Control, 0 to 10, default 1\n\t\"Dry level (dB)\" Input, Control, -90 to 0, default -90\n\t\"Tap 1 distance (inches)\" Input, Control, 0 to 4, default 0\n\t\"Tap 1 level (dB)\" Input, Control, -90 to 0, default 0\n\t\"Tap 2 distance (inches)\" Input, Control, 0 to 4, default 1\n\t\"Tap 2 level (dB)\" Input, Control, -90 to 0, default -90\n\t\"Tap 3 distance (inches)\" Input, Control, 0 to 4, default 2\n\t\"Tap 3 level (dB)\" Input, Control, -90 to 0, default -90\n\t\"Tap 4 distance (inches)\" Input, Control, 0 to 4, default 3\n\t\"Tap 4 level (dB)\" Input, Control, -90 to 0, default -90\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/transient" : "Name: Transient mangler\nURI: http://plugin.org.uk/swh-plugins/transient\nClass: Dynamics\nAuthor: Steve Harris\nLatency: no\nPorts: \"Attack speed\" Input, Control, -1 to 1, default 0\n\t\"Sustain time\" Input, Control, -1 to 1, default 0\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/triplePara" : "Name: Triple band parametric with shelves\nURI: http://plugin.org.uk/swh-plugins/triplePara\nClass: Parametric\nAuthor: Steve Harris\nLatency: no\nPorts: \"Low-shelving gain (dB)\" Input, Control, -70 to 30, default 0\n\t\"Low-shelving frequency (Hz)\" Input, Control, 0.0001 to 0.49, default 0.0001\n\t\"Low-shelving slope\" Input, Control, 0 to 1, default 0.5\n\t\"Band 1 gain (dB)\" Input, Control, -70 to 30, default 0\n\t\"Band 1 frequency (Hz)\" Input, Control, 0.0001 to 0.49, default 0.122575\n\t\"Band 1 bandwidth (octaves)\" Input, Control, 0 to 4, default 1\n\t\"Band 2 gain (dB)\" Input, Control, -70 to 30, default 0\n\t\"Band 2 frequency (Hz)\" Input, Control, 0.0001 to 0.49, default 0.24505\n\t\"Band 2 bandwidth (octaves)\" Input, Control, 0 to 4, default 1\n\t\"Band 3 gain (dB)\" Input, Control, -70 to 30, default 0\n\t\"Band 3 frequency (Hz)\" Input, Control, 0.0001 to 0.49, default 0.367525\n\t\"Band 3 bandwidth (octaves)\" Input, Control, 0 to 4, default 1\n\t\"High-shelving gain (dB)\" Input, Control, -70 to 30, default 0\n\t\"High-shelving frequency (Hz)\" Input, Control, 0.0001 to 0.49, default 0.49\n\t\"High-shelving slope\" Input, Control, 0 to 1, default 0.5\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/ulaw" : "Name: μ-Law Compressor\nURI: http://plugin.org.uk/swh-plugins/ulaw\nClass: Dynamics\nAuthor: Steve Harris\nLatency: no\nPorts: \"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/valve" : "Name: Valve saturation\nURI: http://plugin.org.uk/swh-plugins/valve\nClass: Distortion\nAuthor: Steve Harris\nLatency: no\nPorts: \"Distortion level\" Input, Control, 0 to 1, default 0\n\t\"Distortion character\" Input, Control, 0 to 1, default 0\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/valveRect" : "Name: Valve rectifier\nURI: http://plugin.org.uk/swh-plugins/valveRect\nClass: Distortion\nAuthor: Steve Harris\nLatency: no\nPorts: \"Sag level\" Input, Control, 0 to 1, default 0\n\t\"Distortion\" Input, Control, 0 to 1, default 0\n\t\"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/vynil" : "Name: VyNil (Vinyl Effect)\nURI: http://plugin.org.uk/swh-plugins/vynil\nClass: Distortion\nAuthor: Steve Harris\nLatency: no\nPorts: \"Year\" Input, Control, 1900 to 1990, default 1990\n\t\"RPM\" Input, Control, 33 to 78, default 33\n\t\"Surface warping\" Input, Control, 0 to 1, default 0\n\t\"Crackle\" Input, Control, 0 to 1, default 0\n\t\"Wear\" Input, Control, 0 to 1, default 0\n\t\"Input L\" Input, Audio\n\t\"Input R\" Input, Audio\n\t\"Output L\" Output, Audio\n\t\"Output R\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/waveTerrain" : "Name: Wave Terrain Oscillator\nURI: http://plugin.org.uk/swh-plugins/waveTerrain\nClass: Oscillator\nAuthor: Steve Harris\nLatency: no\nPorts: \"x\" Input, Audio\n\t\"y\" Input, Audio\n\t\"z\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/xfade" : "Name: Crossfade\nURI: http://plugin.org.uk/swh-plugins/xfade\nClass: Mixer\nAuthor: Steve Harris\nLatency: no\nPorts: \"Crossfade\" Input, Control, -1 to 1, default 0\n\t\"Input A left\" Input, Audio\n\t\"Input A right\" Input, Audio\n\t\"Input B left\" Input, Audio\n\t\"Input B right\" Input, Audio\n\t\"Output left\" Output, Audio\n\t\"Output right\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/xfade4" : "Name: Crossfade (4 outs)\nURI: http://plugin.org.uk/swh-plugins/xfade4\nClass: Mixer\nAuthor: Steve Harris\nLatency: no\nPorts: \"Crossfade\" Input, Control, -1 to 1, default 0\n\t\"Input A left\" Input, Audio\n\t\"Input A right\" Input, Audio\n\t\"Input B left\" Input, Audio\n\t\"Input B right\" Input, Audio\n\t\"Output A left\" Output, Audio\n\t\"Output A right\" Output, Audio\n\t\"Output B left\" Output, Audio\n\t\"Output B right\" Output, Audio\n\n",
"elv2:http://plugin.org.uk/swh-plugins/zm1" : "Name: z-1\nURI: http://plugin.org.uk/swh-plugins/zm1\nClass: Utility\nAuthor: Steve Harris\nLatency: no\nPorts: \"Input\" Input, Audio\n\t\"Output\" Output, Audio\n\n",
"elv2:urn:50m30n3:plugins:SO-404" : "Name: SO-404 Bass Synthesizer\nURI: urn:50m30n3:plugins:SO-404\nClass: Instrument\nLatency: no\nPorts: \"Output\" Output, Audio\n\t\"MIDI Input\" Input, Midi\n\t\"Control Mode\" Input, Control, 2-way Selector\n\t\"Volume\" Input, Control, 0 to 127, default 100\n\t\"Filter Cutoff\" Input, Control, 0 to 127, default 50\n\t\"Filter Resonance\" Input, Control, 0 to 127, default 100\n\t\"Filter Envelope\" Input, Control, 0 to 127, default 80\n\t\"Portamento Time\" Input, Control, 0 to 127, default 64\n\t\"Release Time\" Input, Control, 0 to 127, default 100\n\t\"Midi Channel\" Input, Control, 0 to 16, default 0, 1-way Selector\n\n",
"elv2:urn:50m30n3:plugins:SO-666" : "Name: SO-666 Feedback Synthesizer\nURI: urn:50m30n3:plugins:SO-666\nClass: Instrument\nLatency: no\nPorts: \"Output\" Output, Audio\n\t\"MIDI Input\" Input, Midi\n\t\"Control Mode\" Input, Control, 2-way Selector\n\t\"Feedback\" Input, Control, 0 to 1, default 0.25\n\t\"Filter Resonance\" Input, Control, 0 to 1, default 0.5\n\t\"Filter Cutoff\" Input, Control, 0.25 to 0.885, default 0.57\n\t\"Volume\" Input, Control, 0 to 127, default 100\n\t\"Midi Channel\" Input, Control, 0 to 16, default 0, 1-way Selector\n\n",
"elv2:urn:50m30n3:plugins:SO-kl5" : "Name: SO-kl5 Piano Synthesizer\nURI: urn:50m30n3:plugins:SO-kl5\nClass: Instrument\nLatency: no\nPorts: \"Output\" Output, Audio\n\t\"MIDI Input\" Input, Midi\n\t\"Control Mode\" Input, Control, 2-way Selector\n\t\"Sustain\" Input, Control, 0 to 1, default 0\n\t\"Filter Resonance\" Input, Control, 0 to 0.907, default 0.625\n\t\"Filter Cutoff\" Input, Control, 0.0125 to 0.3333, default 0.1725\n\t\"Attack\" Input, Control, 0.00625 to 0.165, default 0.01125\n\t\"Volume\" Input, Control, 0 to 127, default 100\n\t\"Midi Channel\" Input, Control, 0 to 16, default 0, 1-way Selector\n\n"
},
"partial_label_to_full" : {
"chcopy" : "chcopy",
"chmix" : "chmix",
"chmove" : "chmove",
"chmute" : "chmute",
"chorder" : "chorder",
"eS" : "eS",
"ea" : "ea",
"eac" : "eac",
"eadb" : "eadb",
"eal" : "eal",
"eaw" : "eaw",
"ec" : "ec",
"eca" : "eca",
"eemb" : "eemb",
"eemp" : "eemp",
"eemt" : "eemt",
"ef1" : "ef1",
"ef3" : "ef3",
"ef4" : "ef4",
"efa" : "efa",
"efb" : "efb",
"efc" : "efc",
"efh" : "efh",
"efi" : "efi",
"efl" : "efl",
"efr" : "efr",
"efs" : "efs",
"ei" : "ei",
"el:Ambisonics-11-cube-decoder" : "el:Ambisonics-11-cube-decoder",
"el:Ambisonics-11-hexagon-decoder" : "el:Ambisonics-11-hexagon-decoder",
"el:Ambisonics-11-mono-panner" : "el:Ambisonics-11-mono-panner",
"el:Ambisonics-11-rotator" : "el:Ambisonics-11-rotator",
"el:Ambisonics-11-square-decoder" : "el:Ambisonics-11-square-decoder",
"el:Ambisonics-11-stereo-panner" : "el:Ambisonics-11-stereo-panner",
"el:Ambisonics-21-panner" : "el:Ambisonics-21-panner",
"el:Ambisonics-21-rotator" : "el:Ambisonics-21-rotator",
"el:Ambisonics-22-panner" : "el:Ambisonics-22-panner",
"el:Ambisonics-22-rotator" : "el:Ambisonics-22-rotator",
"el:Ambisonics-31-panner" : "el:Ambisonics-31-panner",
"el:Ambisonics-31-rotator" : "el:Ambisonics-31-rotator",
"el:Ambisonics-33-panner" : "el:Ambisonics-33-panner",
"el:Ambisonics-33-rotator" : "el:Ambisonics-33-rotator",
"el:AmpVTS" : "el:AmpVTS",
"el:AutoFilter" : "el:AutoFilter",
"el:CEO" : "el:CEO",
"el:CabinetIV" : "el:CabinetIV",
"el:ChorusI" : "el:ChorusI",
"el:Click" : "el:Click",
"el:Compress" : "el:Compress",
"el:CompressX2" : "el:CompressX2",
"el:Eq10" : "el:Eq10",
"el:Eq10X2" : "el:Eq10X2",
"el:Eq4p" : "el:Eq4p",
"el:Fractal" : "el:Fractal",
"el:G2reverb" : "el:G2reverb",
"el:Narrower" : "el:Narrower",
"el:NoiseGate" : "el:NoiseGate",
"el:Parametric1" : "el:Parametric1",
"el:PhaserII" : "el:PhaserII",
"el:Plate" : "el:Plate",
"el:PlateX2" : "el:PlateX2",
"el:Saturate" : "el:Saturate",
"el:Scape" : "el:Scape",
"el:Sin" : "el:Sin",
"el:Spice" : "el:Spice",
"el:SpiceX2" : "el:SpiceX2",
"el:ToneStack" : "el:ToneStack",
"el:Tricardioid-to-AMB" : "el:Tricardioid-to-AMB",
"el:UHJ-decoder" : "el:UHJ-decoder",
"el:UHJ-encoder" : "el:UHJ-encoder",
"el:Virtualmic" : "el:Virtualmic",
"el:White" : "el:White",
"el:Wider" : "el:Wider",
"el:alias" : "el:alias",
"el:allpass_c" : "el:allpass_c",
"el:allpass_l" : "el:allpass_l",
"el:allpass_n" : "el:allpass_n",
"el:amPitchshift" : "el:amPitchshift",
"el:amp" : "el:amp",
"el:amp_mono" : "el:amp_mono",
"el:amp_stereo" : "el:amp_stereo",
"el:analogueOsc" : "el:analogueOsc",
"el:artificialLatency" : "el:artificialLatency",
"el:autoPhaser" : "el:autoPhaser",
"el:bandpass_a_iir" : "el:bandpass_a_iir",
"el:bandpass_iir" : "el:bandpass_iir",
"el:bodeShifter" : "el:bodeShifter",
"el:bodeShifterCV" : "el:bodeShifterCV",
"el:butthigh_iir" : "el:butthigh_iir",
"el:buttlow_iir" : "el:buttlow_iir",
"el:bwxover_iir" : "el:bwxover_iir",
"el:chebstortion" : "el:chebstortion",
"el:comb" : "el:comb",
"el:combSplitter" : "el:combSplitter",
"el:comb_c" : "el:comb_c",
"el:comb_l" : "el:comb_l",
"el:comb_n" : "el:comb_n",
"el:const" : "el:const",
"el:crossoverDist" : "el:crossoverDist",
"el:dcRemove" : "el:dcRemove",
"el:decay" : "el:decay",
"el:decimator" : "el:decimator",
"el:declip" : "el:declip",
"el:delay_5s" : "el:delay_5s",
"el:delay_c" : "el:delay_c",
"el:delay_l" : "el:delay_l",
"el:delay_n" : "el:delay_n",
"el:delayorama" : "el:delayorama",
"el:diode" : "el:diode",
"el:divider" : "el:divider",
"el:djFlanger" : "el:djFlanger",
"el:dj_eq" : "el:dj_eq",
"el:dj_eq_mono" : "el:dj_eq_mono",
"el:dysonCompress" : "el:dysonCompress",
"el:fadDelay" : "el:fadDelay",
"el:fastLookaheadLimiter" : "el:fastLookaheadLimiter",
"el:flanger" : "el:flanger",
"el:fmOsc" : "el:fmOsc",
"el:foldover" : "el:foldover",
"el:fourByFourPole" : "el:fourByFourPole",
"el:foverdrive" : "el:foverdrive",
"el:freqTracker" : "el:freqTracker",
"el:gate" : "el:gate",
"el:giantFlange" : "el:giantFlange",
"el:gong" : "el:gong",
"el:gongBeater" : "el:gongBeater",
"el:gsm" : "el:gsm",
"el:gverb" : "el:gverb",
"el:hardLimiter" : "el:hardLimiter",
"el:harmonicGen" : "el:harmonicGen",
"el:hermesFilter" : "el:hermesFilter",
"el:highpass_iir" : "el:highpass_iir",
"el:hilbert" : "el:hilbert",
"el:hpf" : "el:hpf",
"el:imp" : "el:imp",
"el:impulse_fc" : "el:impulse_fc",
"el:inv" : "el:inv",
"el:invada_hp_mono_filter_module_0_1" : "el:invada_hp_mono_filter_module_0_1",
"el:invada_hp_stereo_filter_module_0_1" : "el:invada_hp_stereo_filter_module_0_1",
"el:invada_lp_mono_filter_module_0_1" : "el:invada_lp_mono_filter_module_0_1",
"el:invada_lp_stereo_filter_module_0_1" : "el:invada_lp_stereo_filter_module_0_1",
"el:invada_mono_compressor_module_0_1" : "el:invada_mono_compressor_module_0_1",
"el:invada_mono_reverbER_module_0_1" : "el:invada_mono_reverbER_module_0_1",
"el:invada_mono_tube_module_0_1" : "el:invada_mono_tube_module_0_1",
"el:invada_stereo_compressor_module_0_1" : "el:invada_stereo_compressor_module_0_1",
"el:invada_stereo_input_module_0_1" : "el:invada_stereo_input_module_0_1",
"el:invada_stereo_tube_module_0_1" : "el:invada_stereo_tube_module_0_1",
"el:invada_sum_reverbER_module_0_1" : "el:invada_sum_reverbER_module_0_1",
"el:karaoke" : "el:karaoke",
"el:lcrDelay" : "el:lcrDelay",
"el:lfoPhaser" : "el:lfoPhaser",
"el:lowpass_iir" : "el:lowpass_iir",
"el:lpf" : "el:lpf",
"el:lsFilter" : "el:lsFilter",
"el:matrixMSSt" : "el:matrixMSSt",
"el:matrixSpatialiser" : "el:matrixSpatialiser",
"el:matrixStMS" : "el:matrixStMS",
"el:mbeq" : "el:mbeq",
"el:modDelay" : "el:modDelay",
"el:multivoiceChorus" : "el:multivoiceChorus",
"el:noise_white" : "el:noise_white",
"el:notch_iir" : "el:notch_iir",
"el:pitchScale" : "el:pitchScale",
"el:pitchScaleHQ" : "el:pitchScaleHQ",
"el:plate" : "el:plate",
"el:pointerCastDistortion" : "el:pointerCastDistortion",
"el:rateShifter" : "el:rateShifter",
"el:retroFlange" : "el:retroFlange",
"el:revdelay" : "el:revdelay",
"el:ringmod_1i1o1l" : "el:ringmod_1i1o1l",
"el:ringmod_2i1o" : "el:ringmod_2i1o",
"el:satanMaximiser" : "el:satanMaximiser",
"el:sc1" : "el:sc1",
"el:sc2" : "el:sc2",
"el:sc3" : "el:sc3",
"el:sc4" : "el:sc4",
"el:sc4m" : "el:sc4m",
"el:se4" : "el:se4",
"el:shaper" : "el:shaper",
"el:sifter" : "el:sifter",
"el:sinCos" : "el:sinCos",
"el:sine_faaa" : "el:sine_faaa",
"el:sine_faac" : "el:sine_faac",
"el:sine_fcaa" : "el:sine_fcaa",
"el:sine_fcac" : "el:sine_fcac",
"el:singlePara" : "el:singlePara",
"el:sinusWavewrapper" : "el:sinusWavewrapper",
"el:smoothDecimate" : "el:smoothDecimate",
"el:split" : "el:split",
"el:stepMuxer" : "el:stepMuxer",
"el:surroundEncoder" : "el:surroundEncoder",
"el:svf" : "el:svf",
"el:tap_autopan" : "el:tap_autopan",
"el:tap_chorusflanger" : "el:tap_chorusflanger",
"el:tap_deesser" : "el:tap_deesser",
"el:tap_doubler" : "el:tap_doubler",
"el:tap_dynamics_m" : "el:tap_dynamics_m",
"el:tap_dynamics_st" : "el:tap_dynamics_st",
"el:tap_equalizer" : "el:tap_equalizer",
"el:tap_equalizer_bw" : "el:tap_equalizer_bw",
"el:tap_limiter" : "el:tap_limiter",
"el:tap_pinknoise" : "el:tap_pinknoise",
"el:tap_pitch" : "el:tap_pitch",
"el:tap_reflector" : "el:tap_reflector",
"el:tap_reverb" : "el:tap_reverb",
"el:tap_rotspeak" : "el:tap_rotspeak",
"el:tap_sigmoid" : "el:tap_sigmoid",
"el:tap_stereo_echo" : "el:tap_stereo_echo",
"el:tap_tremolo" : "el:tap_tremolo",
"el:tap_tubewarmth" : "el:tap_tubewarmth",
"el:tap_vibrato" : "el:tap_vibrato",
"el:tapeDelay" : "el:tapeDelay",
"el:transient" : "el:transient",
"el:triplePara" : "el:triplePara",
"el:valve" : "el:valve",
"el:valveRect" : "el:valveRect",
"el:vynil" : "el:vynil",
"el:waveTerrain" : "el:waveTerrain",
"el:xfade" : "el:xfade",
"el:xfade4" : "el:xfade4",
"el:zita-reverb" : "el:zita-reverb",
"el:zita-reverb-amb" : "el:zita-reverb-amb",
"el:zm1" : "el:zm1",
"elv2:http://gareus.org/oss/lv2/b_overdrive" : "elv2:http://gareus.org/oss/lv2/b_overdrive",
"elv2:http://gareus.org/oss/lv2/b_reverb" : "elv2:http://gareus.org/oss/lv2/b_reverb",
"elv2:http://gareus.org/oss/lv2/b_whirl#extended" : "elv2:http://gareus.org/oss/lv2/b_whirl#extended",
"elv2:http://gareus.org/oss/lv2/b_whirl#simple" : "elv2:http://gareus.org/oss/lv2/b_whirl#simple",
"elv2:http://hyperglitch.com/dev/VocProc" : "elv2:http://hyperglitch.com/dev/VocProc",
"elv2:http://plugin.org.uk/swh-plugins/alaw" : "elv2:http://plugin.org.uk/swh-plugins/alaw",
"elv2:http://plugin.org.uk/swh-plugins/alias" : "elv2:http://plugin.org.uk/swh-plugins/alias",
"elv2:http://plugin.org.uk/swh-plugins/allpass_c" : "elv2:http://plugin.org.uk/swh-plugins/allpass_c",
"elv2:http://plugin.org.uk/swh-plugins/allpass_l" : "elv2:http://plugin.org.uk/swh-plugins/allpass_l",
"elv2:http://plugin.org.uk/swh-plugins/allpass_n" : "elv2:http://plugin.org.uk/swh-plugins/allpass_n",
"elv2:http://plugin.org.uk/swh-plugins/amPitchshift" : "elv2:http://plugin.org.uk/swh-plugins/amPitchshift",
"elv2:http://plugin.org.uk/swh-plugins/amp" : "elv2:http://plugin.org.uk/swh-plugins/amp",
"elv2:http://plugin.org.uk/swh-plugins/analogueOsc" : "elv2:http://plugin.org.uk/swh-plugins/analogueOsc",
"elv2:http://plugin.org.uk/swh-plugins/artificialLatency" : "elv2:http://plugin.org.uk/swh-plugins/artificialLatency",
"elv2:http://plugin.org.uk/swh-plugins/autoPhaser" : "elv2:http://plugin.org.uk/swh-plugins/autoPhaser",
"elv2:http://plugin.org.uk/swh-plugins/bandpass_a_iir" : "elv2:http://plugin.org.uk/swh-plugins/bandpass_a_iir",
"elv2:http://plugin.org.uk/swh-plugins/bandpass_iir" : "elv2:http://plugin.org.uk/swh-plugins/bandpass_iir",
"elv2:http://plugin.org.uk/swh-plugins/bodeShifter" : "elv2:http://plugin.org.uk/swh-plugins/bodeShifter",
"elv2:http://plugin.org.uk/swh-plugins/bodeShifterCV" : "elv2:http://plugin.org.uk/swh-plugins/bodeShifterCV",
"elv2:http://plugin.org.uk/swh-plugins/butthigh_iir" : "elv2:http://plugin.org.uk/swh-plugins/butthigh_iir",
"elv2:http://plugin.org.uk/swh-plugins/buttlow_iir" : "elv2:http://plugin.org.uk/swh-plugins/buttlow_iir",
"elv2:http://plugin.org.uk/swh-plugins/bwxover_iir" : "elv2:http://plugin.org.uk/swh-plugins/bwxover_iir",
"elv2:http://plugin.org.uk/swh-plugins/chebstortion" : "elv2:http://plugin.org.uk/swh-plugins/chebstortion",
"elv2:http://plugin.org.uk/swh-plugins/comb" : "elv2:http://plugin.org.uk/swh-plugins/comb",
"elv2:http://plugin.org.uk/swh-plugins/combSplitter" : "elv2:http://plugin.org.uk/swh-plugins/combSplitter",
"elv2:http://plugin.org.uk/swh-plugins/comb_c" : "elv2:http://plugin.org.uk/swh-plugins/comb_c",
"elv2:http://plugin.org.uk/swh-plugins/comb_l" : "elv2:http://plugin.org.uk/swh-plugins/comb_l",
"elv2:http://plugin.org.uk/swh-plugins/comb_n" : "elv2:http://plugin.org.uk/swh-plugins/comb_n",
"elv2:http://plugin.org.uk/swh-plugins/const" : "elv2:http://plugin.org.uk/swh-plugins/const",
"elv2:http://plugin.org.uk/swh-plugins/crossoverDist" : "elv2:http://plugin.org.uk/swh-plugins/crossoverDist",
"elv2:http://plugin.org.uk/swh-plugins/dcRemove" : "elv2:http://plugin.org.uk/swh-plugins/dcRemove",
"elv2:http://plugin.org.uk/swh-plugins/decay" : "elv2:http://plugin.org.uk/swh-plugins/decay",
"elv2:http://plugin.org.uk/swh-plugins/decimator" : "elv2:http://plugin.org.uk/swh-plugins/decimator",
"elv2:http://plugin.org.uk/swh-plugins/declip" : "elv2:http://plugin.org.uk/swh-plugins/declip",
"elv2:http://plugin.org.uk/swh-plugins/delay_c" : "elv2:http://plugin.org.uk/swh-plugins/delay_c",
"elv2:http://plugin.org.uk/swh-plugins/delay_l" : "elv2:http://plugin.org.uk/swh-plugins/delay_l",
"elv2:http://plugin.org.uk/swh-plugins/delay_n" : "elv2:http://plugin.org.uk/swh-plugins/delay_n",
"elv2:http://plugin.org.uk/swh-plugins/delayorama" : "elv2:http://plugin.org.uk/swh-plugins/delayorama",
"elv2:http://plugin.org.uk/swh-plugins/diode" : "elv2:http://plugin.org.uk/swh-plugins/diode",
"elv2:http://plugin.org.uk/swh-plugins/divider" : "elv2:http://plugin.org.uk/swh-plugins/divider",
"elv2:http://plugin.org.uk/swh-plugins/djFlanger" : "elv2:http://plugin.org.uk/swh-plugins/djFlanger",
"elv2:http://plugin.org.uk/swh-plugins/dj_eq" : "elv2:http://plugin.org.uk/swh-plugins/dj_eq",
"elv2:http://plugin.org.uk/swh-plugins/dj_eq_mono" : "elv2:http://plugin.org.uk/swh-plugins/dj_eq_mono",
"elv2:http://plugin.org.uk/swh-plugins/dysonCompress" : "elv2:http://plugin.org.uk/swh-plugins/dysonCompress",
"elv2:http://plugin.org.uk/swh-plugins/fadDelay" : "elv2:http://plugin.org.uk/swh-plugins/fadDelay",
"elv2:http://plugin.org.uk/swh-plugins/fastLookaheadLimiter" : "elv2:http://plugin.org.uk/swh-plugins/fastLookaheadLimiter",
"elv2:http://plugin.org.uk/swh-plugins/flanger" : "elv2:http://plugin.org.uk/swh-plugins/flanger",
"elv2:http://plugin.org.uk/swh-plugins/fmOsc" : "elv2:http://plugin.org.uk/swh-plugins/fmOsc",
"elv2:http://plugin.org.uk/swh-plugins/foldover" : "elv2:http://plugin.org.uk/swh-plugins/foldover",
"elv2:http://plugin.org.uk/swh-plugins/fourByFourPole" : "elv2:http://plugin.org.uk/swh-plugins/fourByFourPole",
"elv2:http://plugin.org.uk/swh-plugins/foverdrive" : "elv2:http://plugin.org.uk/swh-plugins/foverdrive",
"elv2:http://plugin.org.uk/swh-plugins/freqTracker" : "elv2:http://plugin.org.uk/swh-plugins/freqTracker",
"elv2:http://plugin.org.uk/swh-plugins/gate" : "elv2:http://plugin.org.uk/swh-plugins/gate",
"elv2:http://plugin.org.uk/swh-plugins/giantFlange" : "elv2:http://plugin.org.uk/swh-plugins/giantFlange",
"elv2:http://plugin.org.uk/swh-plugins/gong" : "elv2:http://plugin.org.uk/swh-plugins/gong",
"elv2:http://plugin.org.uk/swh-plugins/gongBeater" : "elv2:http://plugin.org.uk/swh-plugins/gongBeater",
"elv2:http://plugin.org.uk/swh-plugins/gverb" : "elv2:http://plugin.org.uk/swh-plugins/gverb",
"elv2:http://plugin.org.uk/swh-plugins/hardLimiter" : "elv2:http://plugin.org.uk/swh-plugins/hardLimiter",
"elv2:http://plugin.org.uk/swh-plugins/harmonicGen" : "elv2:http://plugin.org.uk/swh-plugins/harmonicGen",
"elv2:http://plugin.org.uk/swh-plugins/hermesFilter" : "elv2:http://plugin.org.uk/swh-plugins/hermesFilter",
"elv2:http://plugin.org.uk/swh-plugins/highpass_iir" : "elv2:http://plugin.org.uk/swh-plugins/highpass_iir",
"elv2:http://plugin.org.uk/swh-plugins/hilbert" : "elv2:http://plugin.org.uk/swh-plugins/hilbert",
"elv2:http://plugin.org.uk/swh-plugins/impulse_fc" : "elv2:http://plugin.org.uk/swh-plugins/impulse_fc",
"elv2:http://plugin.org.uk/swh-plugins/inv" : "elv2:http://plugin.org.uk/swh-plugins/inv",
"elv2:http://plugin.org.uk/swh-plugins/karaoke" : "elv2:http://plugin.org.uk/swh-plugins/karaoke",
"elv2:http://plugin.org.uk/swh-plugins/lcrDelay" : "elv2:http://plugin.org.uk/swh-plugins/lcrDelay",
"elv2:http://plugin.org.uk/swh-plugins/lfoPhaser" : "elv2:http://plugin.org.uk/swh-plugins/lfoPhaser",
"elv2:http://plugin.org.uk/swh-plugins/lookaheadLimiter" : "elv2:http://plugin.org.uk/swh-plugins/lookaheadLimiter",
"elv2:http://plugin.org.uk/swh-plugins/lookaheadLimiterConst" : "elv2:http://plugin.org.uk/swh-plugins/lookaheadLimiterConst",
"elv2:http://plugin.org.uk/swh-plugins/lowpass_iir" : "elv2:http://plugin.org.uk/swh-plugins/lowpass_iir",
"elv2:http://plugin.org.uk/swh-plugins/lsFilter" : "elv2:http://plugin.org.uk/swh-plugins/lsFilter",
"elv2:http://plugin.org.uk/swh-plugins/matrixMSSt" : "elv2:http://plugin.org.uk/swh-plugins/matrixMSSt",
"elv2:http://plugin.org.uk/swh-plugins/matrixSpatialiser" : "elv2:http://plugin.org.uk/swh-plugins/matrixSpatialiser",
"elv2:http://plugin.org.uk/swh-plugins/matrixStMS" : "elv2:http://plugin.org.uk/swh-plugins/matrixStMS",
"elv2:http://plugin.org.uk/swh-plugins/mbeq" : "elv2:http://plugin.org.uk/swh-plugins/mbeq",
"elv2:http://plugin.org.uk/swh-plugins/modDelay" : "elv2:http://plugin.org.uk/swh-plugins/modDelay",
"elv2:http://plugin.org.uk/swh-plugins/multivoiceChorus" : "elv2:http://plugin.org.uk/swh-plugins/multivoiceChorus",
"elv2:http://plugin.org.uk/swh-plugins/pitchScaleHQ" : "elv2:http://plugin.org.uk/swh-plugins/pitchScaleHQ",
"elv2:http://plugin.org.uk/swh-plugins/plate" : "elv2:http://plugin.org.uk/swh-plugins/plate",
"elv2:http://plugin.org.uk/swh-plugins/pointerCastDistortion" : "elv2:http://plugin.org.uk/swh-plugins/pointerCastDistortion",
"elv2:http://plugin.org.uk/swh-plugins/rateShifter" : "elv2:http://plugin.org.uk/swh-plugins/rateShifter",
"elv2:http://plugin.org.uk/swh-plugins/retroFlange" : "elv2:http://plugin.org.uk/swh-plugins/retroFlange",
"elv2:http://plugin.org.uk/swh-plugins/revdelay" : "elv2:http://plugin.org.uk/swh-plugins/revdelay",
"elv2:http://plugin.org.uk/swh-plugins/ringmod_1i1o1l" : "elv2:http://plugin.org.uk/swh-plugins/ringmod_1i1o1l",
"elv2:http://plugin.org.uk/swh-plugins/ringmod_2i1o" : "elv2:http://plugin.org.uk/swh-plugins/ringmod_2i1o",
"elv2:http://plugin.org.uk/swh-plugins/satanMaximiser" : "elv2:http://plugin.org.uk/swh-plugins/satanMaximiser",
"elv2:http://plugin.org.uk/swh-plugins/sc1" : "elv2:http://plugin.org.uk/swh-plugins/sc1",
"elv2:http://plugin.org.uk/swh-plugins/sc2" : "elv2:http://plugin.org.uk/swh-plugins/sc2",
"elv2:http://plugin.org.uk/swh-plugins/sc3" : "elv2:http://plugin.org.uk/swh-plugins/sc3",
"elv2:http://plugin.org.uk/swh-plugins/sc4" : "elv2:http://plugin.org.uk/swh-plugins/sc4",
"elv2:http://plugin.org.uk/swh-plugins/se4" : "elv2:http://plugin.org.uk/swh-plugins/se4",
"elv2:http://plugin.org.uk/swh-plugins/shaper" : "elv2:http://plugin.org.uk/swh-plugins/shaper",
"elv2:http://plugin.org.uk/swh-plugins/sifter" : "elv2:http://plugin.org.uk/swh-plugins/sifter",
"elv2:http://plugin.org.uk/swh-plugins/sinCos" : "elv2:http://plugin.org.uk/swh-plugins/sinCos",
"elv2:http://plugin.org.uk/swh-plugins/singlePara" : "elv2:http://plugin.org.uk/swh-plugins/singlePara",
"elv2:http://plugin.org.uk/swh-plugins/sinusWavewrapper" : "elv2:http://plugin.org.uk/swh-plugins/sinusWavewrapper",
"elv2:http://plugin.org.uk/swh-plugins/smoothDecimate" : "elv2:http://plugin.org.uk/swh-plugins/smoothDecimate",
"elv2:http://plugin.org.uk/swh-plugins/split" : "elv2:http://plugin.org.uk/swh-plugins/split",
"elv2:http://plugin.org.uk/swh-plugins/surroundEncoder" : "elv2:http://plugin.org.uk/swh-plugins/surroundEncoder",
"elv2:http://plugin.org.uk/swh-plugins/svf" : "elv2:http://plugin.org.uk/swh-plugins/svf",
"elv2:http://plugin.org.uk/swh-plugins/tapeDelay" : "elv2:http://plugin.org.uk/swh-plugins/tapeDelay",
"elv2:http://plugin.org.uk/swh-plugins/transient" : "elv2:http://plugin.org.uk/swh-plugins/transient",
"elv2:http://plugin.org.uk/swh-plugins/triplePara" : "elv2:http://plugin.org.uk/swh-plugins/triplePara",
"elv2:http://plugin.org.uk/swh-plugins/ulaw" : "elv2:http://plugin.org.uk/swh-plugins/ulaw",
"elv2:http://plugin.org.uk/swh-plugins/valve" : "elv2:http://plugin.org.uk/swh-plugins/valve",
"elv2:http://plugin.org.uk/swh-plugins/valveRect" : "elv2:http://plugin.org.uk/swh-plugins/valveRect",
"elv2:http://plugin.org.uk/swh-plugins/vynil" : "elv2:http://plugin.org.uk/swh-plugins/vynil",
"elv2:http://plugin.org.uk/swh-plugins/waveTerrain" : "elv2:http://plugin.org.uk/swh-plugins/waveTerrain",
"elv2:http://plugin.org.uk/swh-plugins/xfade" : "elv2:http://plugin.org.uk/swh-plugins/xfade",
"elv2:http://plugin.org.uk/swh-plugins/xfade4" : "elv2:http://plugin.org.uk/swh-plugins/xfade4",
"elv2:http://plugin.org.uk/swh-plugins/zm1" : "elv2:http://plugin.org.uk/swh-plugins/zm1",
"enm" : "enm",
"epp" : "epp",
"erc" : "erc",
"erm" : "erm",
"etc" : "etc",
"etd" : "etd",
"ete" : "ete",
"etf" : "etf",
"etl" : "etl",
"etm" : "etm",
"etp" : "etp",
"etr" : "etr",
"ev" : "ev",
"evp" : "evp",
"ezf" : "ezf",
"ezx" : "ezx",
"gc" : "gc",
"ge" : "ge",
"gm" : "gm",
"kf" : "kf",
"kl" : "kl",
"kl2" : "kl2",
"klg" : "klg",
"km" : "km",
"kog" : "kog",
"kos" : "kos",
"ksv" : "ksv",
"lv2-VocProc" : "elv2:http://hyperglitch.com/dev/VocProc",
"lv2-alaw" : "elv2:http://plugin.org.uk/swh-plugins/alaw",
"lv2-alias" : "elv2:http://plugin.org.uk/swh-plugins/alias",
"lv2-allpass_c" : "elv2:http://plugin.org.uk/swh-plugins/allpass_c",
"lv2-allpass_l" : "elv2:http://plugin.org.uk/swh-plugins/allpass_l",
"lv2-allpass_n" : "elv2:http://plugin.org.uk/swh-plugins/allpass_n",
"lv2-amPitchshift" : "elv2:http://plugin.org.uk/swh-plugins/amPitchshift",
"lv2-amp" : "elv2:http://plugin.org.uk/swh-plugins/amp",
"lv2-analogueOsc" : "elv2:http://plugin.org.uk/swh-plugins/analogueOsc",
"lv2-artificialLatency" : "elv2:http://plugin.org.uk/swh-plugins/artificialLatency",
"lv2-autoPhaser" : "elv2:http://plugin.org.uk/swh-plugins/autoPhaser",
"lv2-b_overdrive" : "elv2:http://gareus.org/oss/lv2/b_overdrive",
"lv2-b_reverb" : "elv2:http://gareus.org/oss/lv2/b_reverb",
"lv2-b_whirl#extended" : "elv2:http://gareus.org/oss/lv2/b_whirl#extended",
"lv2-b_whirl#simple" : "elv2:http://gareus.org/oss/lv2/b_whirl#simple",
"lv2-bandpass_a_iir" : "elv2:http://plugin.org.uk/swh-plugins/bandpass_a_iir",
"lv2-bandpass_iir" : "elv2:http://plugin.org.uk/swh-plugins/bandpass_iir",
"lv2-bodeShifter" : "elv2:http://plugin.org.uk/swh-plugins/bodeShifter",
"lv2-bodeShifterCV" : "elv2:http://plugin.org.uk/swh-plugins/bodeShifterCV",
"lv2-butthigh_iir" : "elv2:http://plugin.org.uk/swh-plugins/butthigh_iir",
"lv2-buttlow_iir" : "elv2:http://plugin.org.uk/swh-plugins/buttlow_iir",
"lv2-bwxover_iir" : "elv2:http://plugin.org.uk/swh-plugins/bwxover_iir",
"lv2-chebstortion" : "elv2:http://plugin.org.uk/swh-plugins/chebstortion",
"lv2-comb" : "elv2:http://plugin.org.uk/swh-plugins/comb",
"lv2-combSplitter" : "elv2:http://plugin.org.uk/swh-plugins/combSplitter",
"lv2-comb_c" : "elv2:http://plugin.org.uk/swh-plugins/comb_c",
"lv2-comb_l" : "elv2:http://plugin.org.uk/swh-plugins/comb_l",
"lv2-comb_n" : "elv2:http://plugin.org.uk/swh-plugins/comb_n",
"lv2-const" : "elv2:http://plugin.org.uk/swh-plugins/const",
"lv2-crossoverDist" : "elv2:http://plugin.org.uk/swh-plugins/crossoverDist",
"lv2-dcRemove" : "elv2:http://plugin.org.uk/swh-plugins/dcRemove",
"lv2-decay" : "elv2:http://plugin.org.uk/swh-plugins/decay",
"lv2-decimator" : "elv2:http://plugin.org.uk/swh-plugins/decimator",
"lv2-declip" : "elv2:http://plugin.org.uk/swh-plugins/declip",
"lv2-delay_c" : "elv2:http://plugin.org.uk/swh-plugins/delay_c",
"lv2-delay_l" : "elv2:http://plugin.org.uk/swh-plugins/delay_l",
"lv2-delay_n" : "elv2:http://plugin.org.uk/swh-plugins/delay_n",
"lv2-delayorama" : "elv2:http://plugin.org.uk/swh-plugins/delayorama",
"lv2-diode" : "elv2:http://plugin.org.uk/swh-plugins/diode",
"lv2-divider" : "elv2:http://plugin.org.uk/swh-plugins/divider",
"lv2-djFlanger" : "elv2:http://plugin.org.uk/swh-plugins/djFlanger",
"lv2-dj_eq" : "elv2:http://plugin.org.uk/swh-plugins/dj_eq",
"lv2-dj_eq_mono" : "elv2:http://plugin.org.uk/swh-plugins/dj_eq_mono",
"lv2-dysonCompress" : "elv2:http://plugin.org.uk/swh-plugins/dysonCompress",
"lv2-fadDelay" : "elv2:http://plugin.org.uk/swh-plugins/fadDelay",
"lv2-fastLookaheadLimiter" : "elv2:http://plugin.org.uk/swh-plugins/fastLookaheadLimiter",
"lv2-flanger" : "elv2:http://plugin.org.uk/swh-plugins/flanger",
"lv2-fmOsc" : "elv2:http://plugin.org.uk/swh-plugins/fmOsc",
"lv2-foldover" : "elv2:http://plugin.org.uk/swh-plugins/foldover",
"lv2-fourByFourPole" : "elv2:http://plugin.org.uk/swh-plugins/fourByFourPole",
"lv2-foverdrive" : "elv2:http://plugin.org.uk/swh-plugins/foverdrive",
"lv2-freqTracker" : "elv2:http://plugin.org.uk/swh-plugins/freqTracker",
"lv2-gate" : "elv2:http://plugin.org.uk/swh-plugins/gate",
"lv2-giantFlange" : "elv2:http://plugin.org.uk/swh-plugins/giantFlange",
"lv2-gong" : "elv2:http://plugin.org.uk/swh-plugins/gong",
"lv2-gongBeater" : "elv2:http://plugin.org.uk/swh-plugins/gongBeater",
"lv2-gverb" : "elv2:http://plugin.org.uk/swh-plugins/gverb",
"lv2-hardLimiter" : "elv2:http://plugin.org.uk/swh-plugins/hardLimiter",
"lv2-harmonicGen" : "elv2:http://plugin.org.uk/swh-plugins/harmonicGen",
"lv2-hermesFilter" : "elv2:http://plugin.org.uk/swh-plugins/hermesFilter",
"lv2-highpass_iir" : "elv2:http://plugin.org.uk/swh-plugins/highpass_iir",
"lv2-hilbert" : "elv2:http://plugin.org.uk/swh-plugins/hilbert",
"lv2-impulse_fc" : "elv2:http://plugin.org.uk/swh-plugins/impulse_fc",
"lv2-inv" : "elv2:http://plugin.org.uk/swh-plugins/inv",
"lv2-karaoke" : "elv2:http://plugin.org.uk/swh-plugins/karaoke",
"lv2-lcrDelay" : "elv2:http://plugin.org.uk/swh-plugins/lcrDelay",
"lv2-lfoPhaser" : "elv2:http://plugin.org.uk/swh-plugins/lfoPhaser",
"lv2-lookaheadLimiter" : "elv2:http://plugin.org.uk/swh-plugins/lookaheadLimiter",
"lv2-lookaheadLimiterConst" : "elv2:http://plugin.org.uk/swh-plugins/lookaheadLimiterConst",
"lv2-lowpass_iir" : "elv2:http://plugin.org.uk/swh-plugins/lowpass_iir",
"lv2-lsFilter" : "elv2:http://plugin.org.uk/swh-plugins/lsFilter",
"lv2-matrixMSSt" : "elv2:http://plugin.org.uk/swh-plugins/matrixMSSt",
"lv2-matrixSpatialiser" : "elv2:http://plugin.org.uk/swh-plugins/matrixSpatialiser",
"lv2-matrixStMS" : "elv2:http://plugin.org.uk/swh-plugins/matrixStMS",
"lv2-mbeq" : "elv2:http://plugin.org.uk/swh-plugins/mbeq",
"lv2-modDelay" : "elv2:http://plugin.org.uk/swh-plugins/modDelay",
"lv2-multivoiceChorus" : "elv2:http://plugin.org.uk/swh-plugins/multivoiceChorus",
"lv2-pitchScaleHQ" : "elv2:http://plugin.org.uk/swh-plugins/pitchScaleHQ",
"lv2-plate" : "elv2:http://plugin.org.uk/swh-plugins/plate",
"lv2-pointerCastDistortion" : "elv2:http://plugin.org.uk/swh-plugins/pointerCastDistortion",
"lv2-rateShifter" : "elv2:http://plugin.org.uk/swh-plugins/rateShifter",
"lv2-retroFlange" : "elv2:http://plugin.org.uk/swh-plugins/retroFlange",
"lv2-revdelay" : "elv2:http://plugin.org.uk/swh-plugins/revdelay",
"lv2-ringmod_1i1o1l" : "elv2:http://plugin.org.uk/swh-plugins/ringmod_1i1o1l",
"lv2-ringmod_2i1o" : "elv2:http://plugin.org.uk/swh-plugins/ringmod_2i1o",
"lv2-satanMaximiser" : "elv2:http://plugin.org.uk/swh-plugins/satanMaximiser",
"lv2-sc1" : "elv2:http://plugin.org.uk/swh-plugins/sc1",
"lv2-sc2" : "elv2:http://plugin.org.uk/swh-plugins/sc2",
"lv2-sc3" : "elv2:http://plugin.org.uk/swh-plugins/sc3",
"lv2-sc4" : "elv2:http://plugin.org.uk/swh-plugins/sc4",
"lv2-se4" : "elv2:http://plugin.org.uk/swh-plugins/se4",
"lv2-shaper" : "elv2:http://plugin.org.uk/swh-plugins/shaper",
"lv2-sifter" : "elv2:http://plugin.org.uk/swh-plugins/sifter",
"lv2-sinCos" : "elv2:http://plugin.org.uk/swh-plugins/sinCos",
"lv2-singlePara" : "elv2:http://plugin.org.uk/swh-plugins/singlePara",
"lv2-sinusWavewrapper" : "elv2:http://plugin.org.uk/swh-plugins/sinusWavewrapper",
"lv2-smoothDecimate" : "elv2:http://plugin.org.uk/swh-plugins/smoothDecimate",
"lv2-split" : "elv2:http://plugin.org.uk/swh-plugins/split",
"lv2-surroundEncoder" : "elv2:http://plugin.org.uk/swh-plugins/surroundEncoder",
"lv2-svf" : "elv2:http://plugin.org.uk/swh-plugins/svf",
"lv2-tapeDelay" : "elv2:http://plugin.org.uk/swh-plugins/tapeDelay",
"lv2-transient" : "elv2:http://plugin.org.uk/swh-plugins/transient",
"lv2-triplePara" : "elv2:http://plugin.org.uk/swh-plugins/triplePara",
"lv2-ulaw" : "elv2:http://plugin.org.uk/swh-plugins/ulaw",
"lv2-valve" : "elv2:http://plugin.org.uk/swh-plugins/valve",
"lv2-valveRect" : "elv2:http://plugin.org.uk/swh-plugins/valveRect",
"lv2-vynil" : "elv2:http://plugin.org.uk/swh-plugins/vynil",
"lv2-waveTerrain" : "elv2:http://plugin.org.uk/swh-plugins/waveTerrain",
"lv2-xfade" : "elv2:http://plugin.org.uk/swh-plugins/xfade",
"lv2-xfade4" : "elv2:http://plugin.org.uk/swh-plugins/xfade4",
"lv2-zm1" : "elv2:http://plugin.org.uk/swh-plugins/zm1",
"pn:dyn_compress_brutal" : "pn:dyn_compress_brutal",
"pn:dyn_compress_hard" : "pn:dyn_compress_hard",
"pn:dyn_compress_infinite" : "pn:dyn_compress_infinite",
"pn:dyn_compress_medium" : "pn:dyn_compress_medium",
"pn:dyn_compress_soft" : "pn:dyn_compress_soft",
"pn:dyn_compress_supersoft" : "pn:dyn_compress_supersoft",
"pn:eq_template" : "pn:eq_template",
"pn:eq_template2" : "pn:eq_template2",
"pn:f_bandpass" : "pn:f_bandpass",
"pn:f_filtertest" : "pn:f_filtertest",
"pn:f_high_and_low" : "pn:f_high_and_low",
"pn:f_highpass" : "pn:f_highpass",
"pn:f_inverse_comb" : "pn:f_inverse_comb",
"pn:f_lowp_sine" : "pn:f_lowp_sine",
"pn:f_lowp_sine2" : "pn:f_lowp_sine2",
"pn:f_lowpass" : "pn:f_lowpass",
"pn:f_rejectband" : "pn:f_rejectband",
"pn:f_res_bandpass" : "pn:f_res_bandpass",
"pn:f_res_lowpass" : "pn:f_res_lowpass",
"pn:f_resonator" : "pn:f_resonator",
"pn:f_two_filters" : "pn:f_two_filters",
"pn:f_two_filters_pareq" : "pn:f_two_filters_pareq",
"pn:gate_crop" : "pn:gate_crop",
"pn:gate_noisegate_1" : "pn:gate_noisegate_1",
"pn:gate_noisegate_delanalog" : "pn:gate_noisegate_delanalog",
"pn:gate_threshold" : "pn:gate_threshold",
"pn:lad_hermes" : "pn:lad_hermes",
"pn:lad_metronome" : "pn:lad_metronome",
"pn:lad_oscillator_stack" : "pn:lad_oscillator_stack",
"pn:lad_oscillator_test" : "pn:lad_oscillator_test",
"pn:lad_sc4" : "pn:lad_sc4",
"pn:lad_sc4_rg" : "pn:lad_sc4_rg",
"pn:metronome" : "pn:metronome",
"pn:time_chorus1" : "pn:time_chorus1",
"pn:time_delay1" : "pn:time_delay1",
"pn:time_delay2" : "pn:time_delay2",
"pn:time_flanger1" : "pn:time_flanger1",
"pn:time_phaser1" : "pn:time_phaser1",
"pn:time_reverb1" : "pn:time_reverb1",
"pn:time_reverb2" : "pn:time_reverb2",
"pn:time_reverb3" : "pn:time_reverb3",
"pn:time_reverb4" : "pn:time_reverb4",
"pn:time_wicked_dub" : "pn:time_wicked_dub",
"pn:var_aw" : "pn:var_aw",
"pn:var_aw_custom" : "pn:var_aw_custom",
"pn:var_aw_ksv" : "pn:var_aw_ksv",
"pn:var_aw_tri" : "pn:var_aw_tri",
"pn:var_aw_tri_custom" : "pn:var_aw_tri_custom",
"pn:var_chipmunk" : "pn:var_chipmunk",
"pn:var_dali" : "pn:var_dali",
"pn:var_molten_tape" : "pn:var_molten_tape",
"pn:var_paralmadness" : "pn:var_paralmadness",
"pn:var_parchip" : "pn:var_parchip",
"pn:var_stretched_tape" : "pn:var_stretched_tape",
"pn:var_sweeping_pan" : "pn:var_sweeping_pan",
"pn:var_switching_pan" : "pn:var_switching_pan"
},
"registry" : [
{},
{
"code" : "eS",
"count" : 1,
"display" : "field",
"name" : "Audio stamp",
"number" : "1",
"params" : [
{
"name" : "stamp-id"
}
]
},
{
"code" : "ea",
"count" : "1",
"display" : "scale",
"name" : "Volume",
"params" : [
{
"begin" : "0",
"default" : "100",
"end" : "600",
"name" : "Level %",
"resolution" : "0"
}
]
},
{
"code" : "eadb",
"count" : "1",
"display" : "scale",
"name" : "Volume",
"params" : [
{
"begin" : "-40",
"default" : "0",
"end" : "60",
"name" : "Level db",
"resolution" : "0.5"
}
]
},
{
"code" : "eac",
"count" : 2,
"display" : "field",
"name" : "Channel amplify",
"number" : "4",
"params" : [
{
"name" : "amp-%"
},
{
"name" : "channel"
}
]
},
{
"code" : "eal",
"count" : "1",
"display" : "scale",
"name" : "Limiter",
"params" : [
{
"begin" : "0",
"default" : "100",
"end" : "100",
"name" : "Limit %",
"resolution" : "0"
}
]
},
{
"code" : "eaw",
"count" : 2,
"display" : "field",
"name" : "Amplify with clipping control",
"number" : "6",
"params" : [
{
"name" : "amp-%"
},
{
"name" : "max-clipped-samples"
}
]
},
{
"code" : "ec",
"count" : "2",
"display" : "scale",
"name" : "Compressor",
"params" : [
{
"begin" : "0",
"default" : "1",
"end" : "1",
"name" : "Compression Rate (Db)",
"resolution" : "0"
},
{
"begin" : "0",
"default" : "50",
"end" : "100",
"name" : "Threshold %",
"resolution" : "0"
}
]
},
{
"code" : "eca",
"count" : "4",
"display" : "scale",
"name" : "Advanced Compressor",
"params" : [
{
"begin" : "0",
"default" : "69",
"end" : "100",
"name" : "Peak Level %",
"resolution" : "0"
},
{
"begin" : "0",
"default" : "2",
"end" : "5",
"name" : "Release Time (Seconds)",
"resolution" : "0"
},
{
"begin" : "0",
"default" : "0.5",
"end" : "1",
"name" : "Fast Compressor Rate",
"resolution" : "0"
},
{
"begin" : "0",
"default" : "1",
"end" : "1",
"name" : "Compressor Rate (Db)",
"resolution" : "0"
}
]
},
{
"code" : "eemb",
"count" : 2,
"display" : "field",
"name" : "Pulse gate BPM",
"number" : "9",
"params" : [
{
"name" : "bpm"
},
{
"name" : "on-time-msec"
}
]
},
{
"code" : "eemp",
"count" : 2,
"display" : "field",
"name" : "Pulse Gate",
"number" : "10",
"params" : [
{
"name" : "freq-Hz"
},
{
"name" : "on-time-%"
}
]
},
{
"code" : "eemt",
"count" : 2,
"display" : "field",
"name" : "Tremolo",
"number" : "11",
"params" : [
{
"name" : "bpm"
},
{
"name" : "depth-%"
}
]
},
{
"code" : "ef1",
"count" : "2",
"display" : "scale",
"name" : "Resonant Bandpass Filter",
"params" : [
{
"begin" : "0",
"default" : "0",
"end" : "20000",
"name" : "Center Frequency (Hz)",
"resolution" : "0"
},
{
"begin" : "0",
"default" : "0",
"end" : "2000",
"name" : "Width (Hz)",
"resolution" : "0"
}
]
},
{
"code" : "ef3",
"count" : "3",
"display" : "scale",
"name" : "Resonant Lowpass Filter",
"params" : [
{
"begin" : "0",
"default" : "0",
"end" : "5000",
"name" : "Cutoff Frequency (Hz)",
"resolution" : "0"
},
{
"begin" : "0",
"default" : "0",
"end" : "2",
"name" : "Resonance",
"resolution" : "0"
},
{
"begin" : "0",
"default" : "0",
"end" : "1",
"name" : "Gain",
"resolution" : "0"
}
]
},
{
"code" : "ef4",
"count" : 2,
"display" : "field",
"name" : "RC-lowpass filter",
"number" : "14",
"params" : [
{
"name" : "cutoff-freq"
},
{
"name" : "resonance"
}
]
},
{
"code" : "efa",
"count" : "2",
"display" : "scale",
"name" : "Allpass Filter",
"params" : [
{
"begin" : "0",
"default" : "0",
"end" : "10000",
"name" : "Delay Samples",
"resolution" : "0"
},
{
"begin" : "0",
"default" : "50",
"end" : "100",
"name" : "Feedback %",
"resolution" : "0"
}
]
},
{
"code" : "efb",
"count" : "2",
"display" : "scale",
"name" : "Bandpass Filter",
"params" : [
{
"begin" : "0",
"default" : "11000",
"end" : "11000",
"name" : "Center Frequency (Hz)",
"resolution" : "0"
},
{
"begin" : "0",
"default" : "22000",
"end" : "22000",
"name" : "Width (Hz)",
"resolution" : "0"
}
]
},
{
"code" : "efc",
"count" : 2,
"display" : "field",
"name" : "Comb filter",
"number" : "17",
"params" : [
{
"name" : "delay-samples"
},
{
"name" : "radius"
}
]
},
{
"code" : "efh",
"count" : "1",
"display" : "scale",
"name" : "Highpass Filter",
"params" : [
{
"begin" : "10000",
"default" : "10000",
"end" : "22000",
"name" : "Cutoff Frequency (Hz)",
"resolution" : "0"
}
]
},
{
"code" : "efi",
"count" : 2,
"display" : "field",
"name" : "Inverse comb filter",
"number" : "19",
"params" : [
{
"name" : "delay-samples"
},
{
"name" : "radius"
}
]
},
{
"code" : "efl",
"count" : "1",
"display" : "scale",
"name" : "Lowpass Filter",
"params" : [
{
"begin" : "0",
"default" : "0",
"end" : "10000",
"name" : "Cutoff Frequency (Hz)",
"resolution" : "0"
}
]
},
{
"code" : "efr",
"count" : "2",
"display" : "scale",
"name" : "Bandreject Filter",
"params" : [
{
"begin" : "0",
"default" : "11000",
"end" : "11000",
"name" : "Center Frequency (Hz)",
"resolution" : "0"
},
{
"begin" : "0",
"default" : "22000",
"end" : "22000",
"name" : "Width (Hz)",
"resolution" : "0"
}
]
},
{
"code" : "efs",
"count" : "2",
"display" : "scale",
"name" : "Resonator Filter",
"params" : [
{
"begin" : "0",
"default" : "11000",
"end" : "11000",
"name" : "Center Frequency (Hz)",
"resolution" : "0"
},
{
"begin" : "0",
"default" : "22000",
"end" : "22000",
"name" : "Width (Hz)",
"resolution" : "0"
}
]
},
{
"code" : "ei",
"count" : 1,
"display" : "field",
"name" : "Pitch shifter",
"number" : "23",
"params" : [
{
"name" : "change-%"
}
]
},
{
"code" : "enm",
"count" : "5",
"display" : "scale",
"name" : "Noise Gate",
"params" : [
{
"begin" : "0",
"default" : "100",
"end" : "100",
"name" : "Threshold Level %",
"resolution" : "0"
},
{
"begin" : "0",
"default" : "200",
"end" : "2000",
"name" : "Pre Hold Time (ms)",
"resolution" : "0"
},
{
"begin" : "0",
"default" : "200",
"end" : "2000",
"name" : "Attack Time (ms)",
"resolution" : "0"
},
{
"begin" : "0",
"default" : "200",
"end" : "2000",
"name" : "Post Hold Time (ms)",
"resolution" : "0"
},
{
"begin" : "0",
"default" : "200",
"end" : "2000",
"name" : "Release Time (ms)",
"resolution" : "0"
}
]
},
{
"code" : "epp",
"count" : "1",
"display" : "scale",
"name" : "Pan",
"params" : [
{
"begin" : "0",
"default" : "50",
"end" : "100",
"name" : "Level %",
"resolution" : "0"
}
]
},
{
"code" : "chorder",
"count" : 0,
"display" : "field",
"name" : "Channel select",
"number" : "26",
"params" : []
},
{
"code" : "chcopy",
"count" : 2,
"display" : "field",
"name" : "Channel copy",
"number" : "27",
"params" : [
{
"name" : "from-channel"
},
{
"name" : "to-channel"
}
]
},
{
"code" : "erc",
"count" : 2,
"display" : "field",
"name" : "Channel copy",
"number" : "28",
"params" : [
{
"name" : "from-channel"
},
{
"name" : "to-channel"
}
]
},
{
"code" : "chmove",
"count" : 2,
"display" : "field",
"name" : "Channel move",
"number" : "29",
"params" : [
{
"name" : "from-channel"
},
{
"name" : "to-channel"
}
]
},
{
"code" : "chmute",
"count" : 1,
"display" : "field",
"name" : "Channel mute",
"number" : "30",
"params" : [
{
"name" : "channel"
}
]
},
{
"code" : "erm",
"count" : 1,
"display" : "field",
"name" : "Mix to channel",
"number" : "31",
"params" : [
{
"name" : "to-channel"
}
]
},
{
"code" : "chmix",
"count" : 1,
"display" : "field",
"name" : "Mix to channel",
"number" : "32",
"params" : [
{
"name" : "to-channel"
}
]
},
{
"code" : "etc",
"count" : "4",
"display" : "scale",
"name" : "Chorus",
"params" : [
{
"begin" : "0",
"default" : "200",
"end" : "2000",
"name" : "Delay Time (ms)",
"resolution" : "0"
},
{
"begin" : "0",
"default" : "500",
"end" : "10000",
"name" : "Variance Time Samples",
"resolution" : "0"
},
{
"begin" : "0",
"default" : "50",
"end" : "100",
"name" : "Feedback %",
"resolution" : "0"
},
{
"begin" : "0",
"default" : "50",
"end" : "100",
"name" : "LFO Frequency (Hz)",
"resolution" : "0"
}
]
},
{
"code" : "etd",
"count" : "5",
"display" : "scale",
"name" : "Delay",
"params" : [
{
"begin" : "0",
"default" : "200",
"end" : "2000",
"name" : "Delay Time (ms)",
"resolution" : "0"
},
{
"begin" : "0",
"default" : "0",
"end" : "2",
"name" : "Surround Mode (Normal, Surround St., Spread)",
"resolution" : "1"
},
{
"begin" : "0",
"default" : "50",
"end" : "100",
"name" : "Number of Delays",
"resolution" : "0"
},
{
"begin" : "0",
"default" : "50",
"end" : "100",
"name" : "Mix %",
"resolution" : "0"
},
{
"begin" : "0",
"default" : "0",
"end" : "100",
"name" : "Feedback %",
"resolution" : "0"
}
]
},
{
"code" : "ete",
"count" : "3",
"display" : "scale",
"name" : "Advanced Reverb",
"params" : [
{
"begin" : "0",
"default" : "10",
"end" : "100",
"name" : "Room Size (Meters)",
"resolution" : "0"
},
{
"begin" : "0",
"default" : "50",
"end" : "100",
"name" : "Feedback %",
"resolution" : "0"
},
{
"begin" : "0",
"default" : "50",
"end" : "100",
"name" : "Wet %",
"resolution" : "0"
}
]
},
{
"code" : "etf",
"count" : "1",
"display" : "scale",
"name" : "Fake Stereo",
"params" : [
{
"begin" : "0",
"default" : "40",
"end" : "500",
"name" : "Delay Time (ms)",
"resolution" : "0"
}
]
},
{
"code" : "etl",
"count" : "4",
"display" : "scale",
"name" : "Flanger",
"params" : [
{
"begin" : "0",
"default" : "200",
"end" : "1000",
"name" : "Delay Time (ms)",
"resolution" : "0"
},
{
"begin" : "0",
"default" : "200",
"end" : "10000",
"name" : "Variance Time Samples",
"resolution" : "0"
},
{
"begin" : "0",
"default" : "50",
"end" : "100",
"name" : "Feedback %",
"resolution" : "0"
},
{
"begin" : "0",
"default" : "50",
"end" : "100",
"name" : "LFO Frequency (Hz)",
"resolution" : "0"
}
]
},
{
"code" : "etm",
"count" : "3",
"display" : "scale",
"name" : "Multitap Delay",
"params" : [
{
"begin" : "0",
"default" : "200",
"end" : "2000",
"name" : "Delay Time (ms)",
"resolution" : "0"
},
{
"begin" : "0",
"default" : "20",
"end" : "100",
"name" : "Number of Delays",
"resolution" : "0"
},
{
"begin" : "0",
"default" : "50",
"end" : "100",
"name" : "Mix %",
"resolution" : "0"
}
]
},
{
"code" : "etp",
"count" : "4",
"display" : "scale",
"name" : "Phaser",
"params" : [
{
"begin" : "0",
"default" : "200",
"end" : "2000",
"name" : "Delay Time (ms)",
"resolution" : "0"
},
{
"begin" : "0",
"default" : "100",
"end" : "10000",
"name" : "Variance Time Samples",
"resolution" : "0"
},
{
"begin" : "0",
"default" : "50",
"end" : "100",
"name" : "Feedback %",
"resolution" : "0"
},
{
"begin" : "0",
"default" : "50",
"end" : "100",
"name" : "LFO Frequency (Hz)",
"resolution" : "0"
}
]
},
{
"code" : "etr",
"count" : "3",
"display" : "scale",
"name" : "Reverb",
"params" : [
{
"begin" : "0",
"default" : "200",
"end" : "2000",
"name" : "Delay Time (ms)",
"resolution" : "0"
},
{
"begin" : "0",
"default" : "0",
"end" : "1",
"name" : "Surround Mode (0=Normal, 1=Surround)",
"resolution" : "1"
},
{
"begin" : "0",
"default" : "50",
"end" : "100",
"name" : "Feedback %",
"resolution" : "0"
}
]
},
{
"code" : "ev",
"count" : 2,
"display" : "field",
"name" : "Volume analysis",
"number" : "41",
"params" : [
{
"name" : "cumulative-mode"
},
{
"name" : "result-max-multiplier"
}
]
},
{
"code" : "evp",
"count" : 0,
"display" : "field",
"name" : "Peak amplitude watcher",
"number" : "42",
"params" : []
},
{
"code" : "ezf",
"count" : 0,
"display" : "field",
"name" : "DC-Find",
"number" : "43",
"params" : []
},
{
"code" : "ezx",
"count" : 1,
"display" : "field",
"name" : "DC-Fix",
"number" : "44",
"params" : [
{
"name" : "channel-count"
}
]
},
{
"code" : "gc",
"count" : 2,
"display" : "field",
"name" : "Time crop gate",
"number" : "45",
"params" : [
{
"name" : "open-at-sec"
},
{
"name" : "duration-sec"
}
]
},
{
"code" : "ge",
"count" : 4,
"display" : "field",
"name" : "Threshold gate",
"number" : "46",
"params" : [
{
"name" : "threshold-openlevel-%"
},
{
"name" : "threshold-closelevel-%"
},
{
"name" : "rms-enabled"
},
{
"name" : "reopen-count"
}
]
},
{
"code" : "gm",
"count" : 1,
"display" : "field",
"name" : "Manual gate",
"number" : "47",
"params" : [
{
"name" : "state"
}
]
},
{
"code" : "el:bandpass_a_iir",
"count" : 2,
"display" : "field",
"name" : "Glame Bandpass Analog Filter",
"number" : "1",
"params" : [
{
"name" : "Center Frequency (Hz)"
},
{
"name" : "Bandwidth (Hz)"
}
]
},
{
"code" : "el:hilbert",
"count" : 1,
"display" : "field",
"name" : "Hilbert transformer",
"number" : "2",
"params" : [
{
"name" : "latency"
}
]
},
{
"code" : "el:invada_lp_mono_filter_module_0_1",
"count" : 3,
"display" : "field",
"name" : ":: Invada :: Filter - Low Pass Mono",
"number" : "3",
"params" : [
{
"name" : "Frequency (Hz)"
},
{
"name" : "Gain (dB)"
},
{
"name" : "Soft Clip"
}
]
},
{
"code" : "el:invada_hp_mono_filter_module_0_1",
"count" : 3,
"display" : "field",
"name" : ":: Invada :: Filter - High Pass Mono",
"number" : "4",
"params" : [
{
"name" : "Frequency (Hz)"
},
{
"name" : "Gain (dB)"
},
{
"name" : "Soft Clip"
}
]
},
{
"code" : "el:invada_lp_stereo_filter_module_0_1",
"count" : 3,
"display" : "field",
"name" : ":: Invada :: Filter - Low Pass Stereo",
"number" : "5",
"params" : [
{
"name" : "Frequency (Hz)"
},
{
"name" : "Gain (dB)"
},
{
"name" : "Soft Clip"
}
]
},
{
"code" : "el:invada_hp_stereo_filter_module_0_1",
"count" : 3,
"display" : "field",
"name" : ":: Invada :: Filter - High Pass Stereo",
"number" : "6",
"params" : [
{
"name" : "Frequency (Hz)"
},
{
"name" : "Gain (dB)"
},
{
"name" : "Soft Clip"
}
]
},
{
"code" : "el:analogueOsc",
"count" : 4,
"display" : "field",
"name" : "Analogue Oscillator",
"number" : "7",
"params" : [
{
"name" : "Waveform (1=sin, 2=tri, 3=squ, 4=saw)"
},
{
"name" : "Frequency (Hz)"
},
{
"name" : "Warmth"
},
{
"name" : "Instability"
}
]
},
{
"code" : "el:inv",
"count" : 0,
"display" : "field",
"name" : "Inverter",
"number" : "8",
"params" : []
},
{
"code" : "el:tap_tremolo",
"count" : 3,
"display" : "field",
"name" : "TAP Tremolo",
"number" : "9",
"params" : [
{
"name" : "Frequency [Hz]"
},
{
"name" : "Depth [%]"
},
{
"name" : "Gain [dB]"
}
]
},
{
"code" : "el:valve",
"count" : 2,
"display" : "field",
"name" : "Valve saturation",
"number" : "10",
"params" : [
{
"name" : "Distortion level"
},
{
"name" : "Distortion character"
}
]
},
{
"code" : "el:sc4",
"count" : 9,
"display" : "field",
"name" : "SC4",
"number" : "11",
"params" : [
{
"name" : "RMS/peak"
},
{
"name" : "Attack time (ms)"
},
{
"name" : "Release time (ms)"
},
{
"name" : "Threshold level (dB)"
},
{
"name" : "Ratio (1:n)"
},
{
"name" : "Knee radius (dB)"
},
{
"name" : "Makeup gain (dB)"
},
{
"name" : "Amplitude (dB)"
},
{
"name" : "Gain reduction (dB)"
}
]
},
{
"code" : "el:amp_mono",
"count" : 1,
"display" : "field",
"name" : "Mono Amplifier",
"number" : "12",
"params" : [
{
"name" : "Gain"
}
]
},
{
"code" : "el:amp_stereo",
"count" : 1,
"display" : "field",
"name" : "Stereo Amplifier",
"number" : "13",
"params" : [
{
"name" : "Gain"
}
]
},
{
"code" : "el:lcrDelay",
"count" : 11,
"display" : "field",
"name" : "L/C/R Delay",
"number" : "14",
"params" : [
{
"name" : "L delay (ms)"
},
{
"name" : "L level"
},
{
"name" : "C delay (ms)"
},
{
"name" : "C level"
},
{
"name" : "R delay (ms)"
},
{
"name" : "R level"
},
{
"name" : "Feedback"
},
{
"name" : "High damp (%)"
},
{
"name" : "Low damp (%)"
},
{
"name" : "Spread"
},
{
"name" : "Dry/Wet level"
}
]
},
{
"code" : "el:tap_sigmoid",
"count" : 2,
"display" : "field",
"name" : "TAP Sigmoid Booster",
"number" : "15",
"params" : [
{
"name" : "Pre Gain [dB]"
},
{
"name" : "Post Gain [dB]"
}
]
},
{
"code" : "el:decay",
"count" : 1,
"display" : "field",
"name" : "Exponential signal decay",
"number" : "16",
"params" : [
{
"name" : "Decay Time (s)"
}
]
},
{
"code" : "el:bwxover_iir",
"count" : 2,
"display" : "field",
"name" : "Glame Butterworth X-over Filter",
"number" : "17",
"params" : [
{
"name" : "Cutoff Frequency (Hz)"
},
{
"name" : "Resonance"
}
]
},
{
"code" : "el:buttlow_iir",
"count" : 2,
"display" : "field",
"name" : "GLAME Butterworth Lowpass",
"number" : "18",
"params" : [
{
"name" : "Cutoff Frequency (Hz)"
},
{
"name" : "Resonance"
}
]
},
{
"code" : "el:butthigh_iir",
"count" : 2,
"display" : "field",
"name" : "GLAME Butterworth Highpass",
"number" : "19",
"params" : [
{
"name" : "Cutoff Frequency (Hz)"
},
{
"name" : "Resonance"
}
]
},
{
"code" : "el:foverdrive",
"count" : 1,
"display" : "field",
"name" : "Fast overdrive",
"number" : "20",
"params" : [
{
"name" : "Drive level"
}
]
},
{
"code" : "el:delayorama",
"count" : 11,
"display" : "field",
"name" : "Delayorama",
"number" : "21",
"params" : [
{
"name" : "Random seed"
},
{
"name" : "Input gain (dB)"
},
{
"name" : "Feedback (%)"
},
{
"name" : "Number of taps"
},
{
"name" : "First delay (s)"
},
{
"name" : "Delay range (s)"
},
{
"name" : "Delay change"
},
{
"name" : "Delay random (%)"
},
{
"name" : "Amplitude change"
},
{
"name" : "Amplitude random (%)"
},
{
"name" : "Dry/wet mix"
}
]
},
{
"code" : "el:comb_n",
"count" : 3,
"display" : "field",
"name" : "Comb delay line, noninterpolating",
"number" : "22",
"params" : [
{
"name" : "Max Delay (s)"
},
{
"name" : "Delay Time (s)"
},
{
"name" : "Decay Time (s)"
}
]
},
{
"code" : "el:comb_l",
"count" : 3,
"display" : "field",
"name" : "Comb delay line, linear interpolation",
"number" : "23",
"params" : [
{
"name" : "Max Delay (s)"
},
{
"name" : "Delay Time (s)"
},
{
"name" : "Decay Time (s)"
}
]
},
{
"code" : "el:comb_c",
"count" : 3,
"display" : "field",
"name" : "Comb delay line, cubic spline interpolation",
"number" : "24",
"params" : [
{
"name" : "Max Delay (s)"
},
{
"name" : "Delay Time (s)"
},
{
"name" : "Decay Time (s)"
}
]
},
{
"code" : "el:sc3",
"count" : 7,
"display" : "field",
"name" : "SC3",
"number" : "25",
"params" : [
{
"name" : "Attack time (ms)"
},
{
"name" : "Release time (ms)"
},
{
"name" : "Threshold level (dB)"
},
{
"name" : "Ratio (1:n)"
},
{
"name" : "Knee radius (dB)"
},
{
"name" : "Makeup gain (dB)"
},
{
"name" : "Chain balance"
}
]
},
{
"code" : "el:hermesFilter",
"count" : 52,
"display" : "field",
"name" : "Hermes Filter",
"number" : "26",
"params" : [
{
"name" : "LFO1 freq (Hz)"
},
{
"name" : "LFO1 wave (0 = sin, 1 = tri, 2 = saw, 3 = squ, 4 = s&h)"
},
{
"name" : "LFO2 freq (Hz)"
},
{
"name" : "LFO2 wave (0 = sin, 1 = tri, 2 = saw, 3 = squ, 4 = s&h)"
},
{
"name" : "Osc1 freq (Hz)"
},
{
"name" : "Osc1 wave (0 = sin, 1 = tri, 2 = saw, 3 = squ, 4 = noise)"
},
{
"name" : "Osc2 freq (Hz)"
},
{
"name" : "Osc2 wave (0 = sin, 1 = tri, 2 = saw, 3 = squ, 4 = noise)"
},
{
"name" : "Ringmod 1 depth (0=none, 1=AM, 2=RM)"
},
{
"name" : "Ringmod 2 depth (0=none, 1=AM, 2=RM)"
},
{
"name" : "Ringmod 3 depth (0=none, 1=AM, 2=RM)"
},
{
"name" : "Osc1 gain (dB)"
},
{
"name" : "RM1 gain (dB)"
},
{
"name" : "Osc2 gain (dB)"
},
{
"name" : "RM2 gain (dB)"
},
{
"name" : "Input gain (dB)"
},
{
"name" : "RM3 gain (dB)"
},
{
"name" : "Xover lower freq"
},
{
"name" : "Xover upper freq"
},
{
"name" : "Dist1 drive"
},
{
"name" : "Dist2 drive"
},
{
"name" : "Dist3 drive"
},
{
"name" : "Filt1 type (0=none, 1=LP, 2=HP, 3=BP, 4=BR, 5=AP)"
},
{
"name" : "Filt1 freq"
},
{
"name" : "Filt1 q"
},
{
"name" : "Filt1 resonance"
},
{
"name" : "Filt1 LFO1 level"
},
{
"name" : "Filt1 LFO2 level"
},
{
"name" : "Filt2 type (0=none, 1=LP, 2=HP, 3=BP, 4=BR, 5=AP)"
},
{
"name" : "Filt2 freq"
},
{
"name" : "Filt2 q"
},
{
"name" : "Filt2 resonance"
},
{
"name" : "Filt2 LFO1 level"
},
{
"name" : "Filt2 LFO2 level"
},
{
"name" : "Filt3 type (0=none, 1=LP, 2=HP, 3=BP, 4=BR, 5=AP)"
},
{
"name" : "Filt3 freq"
},
{
"name" : "Filt3 q"
},
{
"name" : "Filt3 resonance"
},
{
"name" : "Filt3 LFO1 level"
},
{
"name" : "Filt3 LFO2 level"
},
{
"name" : "Delay1 length (s)"
},
{
"name" : "Delay1 feedback"
},
{
"name" : "Delay1 wetness"
},
{
"name" : "Delay2 length (s)"
},
{
"name" : "Delay2 feedback"
},
{
"name" : "Delay2 wetness"
},
{
"name" : "Delay3 length (s)"
},
{
"name" : "Delay3 feedback"
},
{
"name" : "Delay3 wetness"
},
{
"name" : "Band 1 gain (dB)"
},
{
"name" : "Band 2 gain (dB)"
},
{
"name" : "Band 3 gain (dB)"
}
]
},
{
"code" : "el:bodeShifter",
"count" : 2,
"display" : "field",
"name" : "Bode frequency shifter",
"number" : "27",
"params" : [
{
"name" : "Frequency shift"
},
{
"name" : "latency"
}
]
},
{
"code" : "el:sine_faaa",
"count" : 0,
"display" : "field",
"name" : "Sine Oscillator (Freq:audio, Amp:audio)",
"number" : "28",
"params" : []
},
{
"code" : "el:sine_faac",
"count" : 1,
"display" : "field",
"name" : "Sine Oscillator (Freq:audio, Amp:control)",
"number" : "29",
"params" : [
{
"name" : "Amplitude"
}
]
},
{
"code" : "el:sine_fcaa",
"count" : 1,
"display" : "field",
"name" : "Sine Oscillator (Freq:control, Amp:audio)",
"number" : "30",
"params" : [
{
"name" : "Frequency (Hz)"
}
]
},
{
"code" : "el:sine_fcac",
"count" : 2,
"display" : "field",
"name" : "Sine Oscillator (Freq:control, Amp:control)",
"number" : "31",
"params" : [
{
"name" : "Frequency (Hz)"
},
{
"name" : "Amplitude"
}
]
},
{
"code" : "el:tap_limiter",
"count" : 3,
"display" : "field",
"name" : "TAP Scaling Limiter",
"number" : "32",
"params" : [
{
"name" : "Limit Level [dB]"
},
{
"name" : "Output Volume [dB]"
},
{
"name" : "latency"
}
]
},
{
"code" : "el:tap_rotspeak",
"count" : 5,
"display" : "field",
"name" : "TAP Rotary Speaker",
"number" : "33",
"params" : [
{
"name" : "Rotor Frequency [Hz]"
},
{
"name" : "Horn Frequency [Hz]"
},
{
"name" : "Mic Distance [%]"
},
{
"name" : "Rotor/Horn Mix"
},
{
"name" : "latency"
}
]
},
{
"code" : "el:zm1",
"count" : 0,
"display" : "field",
"name" : "z-1",
"number" : "34",
"params" : []
},
{
"code" : "el:multivoiceChorus",
"count" : 6,
"display" : "field",
"name" : "Multivoice Chorus",
"number" : "35",
"params" : [
{
"name" : "Number of voices"
},
{
"name" : "Delay base (ms)"
},
{
"name" : "Voice separation (ms)"
},
{
"name" : "Detune (%)"
},
{
"name" : "LFO frequency (Hz)"
},
{
"name" : "Output attenuation (dB)"
}
]
},
{
"code" : "el:fmOsc",
"count" : 1,
"display" : "field",
"name" : "FM Oscillator",
"number" : "36",
"params" : [
{
"name" : "Waveform (1=sin, 2=tri, 3=squ, 4=saw)"
}
]
},
{
"code" : "el:sc4m",
"count" : 9,
"display" : "field",
"name" : "SC4 mono",
"number" : "37",
"params" : [
{
"name" : "RMS/peak"
},
{
"name" : "Attack time (ms)"
},
{
"name" : "Release time (ms)"
},
{
"name" : "Threshold level (dB)"
},
{
"name" : "Ratio (1:n)"
},
{
"name" : "Knee radius (dB)"
},
{
"name" : "Makeup gain (dB)"
},
{
"name" : "Amplitude (dB)"
},
{
"name" : "Gain reduction (dB)"
}
]
},
{
"code" : "el:gongBeater",
"count" : 3,
"display" : "field",
"name" : "Gong beater",
"number" : "38",
"params" : [
{
"name" : "Impulse gain (dB)"
},
{
"name" : "Strike gain (dB)"
},
{
"name" : "Strike duration (s)"
}
]
},
{
"code" : "el:delay_n",
"count" : 2,
"display" : "field",
"name" : "Simple delay line, noninterpolating",
"number" : "39",
"params" : [
{
"name" : "Max Delay (s)"
},
{
"name" : "Delay Time (s)"
}
]
},
{
"code" : "el:delay_l",
"count" : 2,
"display" : "field",
"name" : "Simple delay line, linear interpolation",
"number" : "40",
"params" : [
{
"name" : "Max Delay (s)"
},
{
"name" : "Delay Time (s)"
}
]
},
{
"code" : "el:delay_c",
"count" : 2,
"display" : "field",
"name" : "Simple delay line, cubic spline interpolation",
"number" : "41",
"params" : [
{
"name" : "Max Delay (s)"
},
{
"name" : "Delay Time (s)"
}
]
},
{
"code" : "el:tap_vibrato",
"count" : 5,
"display" : "field",
"name" : "TAP Vibrato",
"number" : "42",
"params" : [
{
"name" : "Frequency [Hz]"
},
{
"name" : "Depth [%]"
},
{
"name" : "Dry Level [dB]"
},
{
"name" : "Wet Level [dB]"
},
{
"name" : "latency"
}
]
},
{
"code" : "el:fastLookaheadLimiter",
"count" : 5,
"display" : "field",
"name" : "Fast Lookahead limiter",
"number" : "43",
"params" : [
{
"name" : "Input gain (dB)"
},
{
"name" : "Limit (dB)"
},
{
"name" : "Release time (s)"
},
{
"name" : "Attenuation (dB)"
},
{
"name" : "latency"
}
]
},
{
"code" : "el:impulse_fc",
"count" : 1,
"display" : "field",
"name" : "Nonbandlimited single-sample impulses (Frequency: Control)",
"number" : "44",
"params" : [
{
"name" : "Frequency (Hz)"
}
]
},
{
"code" : "el:lowpass_iir",
"count" : 2,
"display" : "field",
"name" : "Glame Lowpass Filter",
"number" : "45",
"params" : [
{
"name" : "Cutoff Frequency"
},
{
"name" : "Stages(2 poles per stage)"
}
]
},
{
"code" : "el:tap_pitch",
"count" : 5,
"display" : "field",
"name" : "TAP Pitch Shifter",
"number" : "46",
"params" : [
{
"name" : "Semitone Shift"
},
{
"name" : "Rate Shift [%]"
},
{
"name" : "Dry Level [dB]"
},
{
"name" : "Wet Level [dB]"
},
{
"name" : "latency"
}
]
},
{
"code" : "el:NoiseGate",
"count" : 4,
"display" : "field",
"name" : "C* NoiseGate - Attenuate hum and noise",
"number" : "47",
"params" : [
{
"name" : "open (dB)"
},
{
"name" : "attack (ms)"
},
{
"name" : "close (dB)"
},
{
"name" : "mains (Hz)"
}
]
},
{
"code" : "el:Compress",
"count" : 7,
"display" : "field",
"name" : "C* Compress - Compressor and saturating limiter",
"number" : "48",
"params" : [
{
"name" : "measure"
},
{
"name" : "mode"
},
{
"name" : "threshold"
},
{
"name" : "strength"
},
{
"name" : "attack"
},
{
"name" : "release"
},
{
"name" : "gain (dB)"
}
]
},
{
"code" : "el:CompressX2",
"count" : 7,
"display" : "field",
"name" : "C* CompressX2 - Stereo compressor and saturating limiter",
"number" : "49",
"params" : [
{
"name" : "measure"
},
{
"name" : "mode"
},
{
"name" : "threshold"
},
{
"name" : "strength"
},
{
"name" : "attack"
},
{
"name" : "release"
},
{
"name" : "gain (dB)"
}
]
},
{
"code" : "el:ToneStack",
"count" : 4,
"display" : "field",
"name" : "C* ToneStack - Classic amplifier tone stack emulation",
"number" : "50",
"params" : [
{
"name" : "model"
},
{
"name" : "bass"
},
{
"name" : "mid"
},
{
"name" : "treble"
}
]
},
{
"code" : "el:AmpVTS",
"count" : 11,
"display" : "field",
"name" : "C* AmpVTS - Idealised guitar amplification",
"number" : "51",
"params" : [
{
"name" : "over"
},
{
"name" : "gain"
},
{
"name" : "bright"
},
{
"name" : "power"
},
{
"name" : "tonestack"
},
{
"name" : "bass"
},
{
"name" : "mid"
},
{
"name" : "treble"
},
{
"name" : "attack"
},
{
"name" : "squash"
},
{
"name" : "lowcut"
}
]
},
{
"code" : "el:CabinetIV",
"count" : 2,
"display" : "field",
"name" : "C* CabinetIV - Idealised loudspeaker cabinet",
"number" : "52",
"params" : [
{
"name" : "model"
},
{
"name" : "gain (dB)"
}
]
},
{
"code" : "el:Plate",
"count" : 4,
"display" : "field",
"name" : "C* Plate - Versatile plate reverb",
"number" : "53",
"params" : [
{
"name" : "bandwidth"
},
{
"name" : "tail"
},
{
"name" : "damping"
},
{
"name" : "blend"
}
]
},
{
"code" : "el:PlateX2",
"count" : 4,
"display" : "field",
"name" : "C* PlateX2 - Versatile plate reverb, stereo inputs",
"number" : "54",
"params" : [
{
"name" : "bandwidth"
},
{
"name" : "tail"
},
{
"name" : "damping"
},
{
"name" : "blend"
}
]
},
{
"code" : "el:Saturate",
"count" : 3,
"display" : "field",
"name" : "C* Saturate - Various overdrive models, 8x oversampled",
"number" : "55",
"params" : [
{
"name" : "mode"
},
{
"name" : "gain (dB)"
},
{
"name" : "bias"
}
]
},
{
"code" : "el:Spice",
"count" : 5,
"display" : "field",
"name" : "C* Spice - Not an exciter",
"number" : "56",
"params" : [
{
"name" : "lo.f (Hz)"
},
{
"name" : "lo.compress"
},
{
"name" : "lo.gain"
},
{
"name" : "hi.f (Hz)"
},
{
"name" : "hi.gain"
}
]
},
{
"code" : "el:SpiceX2",
"count" : 5,
"display" : "field",
"name" : "C* SpiceX2 - Not an exciter either",
"number" : "57",
"params" : [
{
"name" : "lo.f (Hz)"
},
{
"name" : "lo.compress"
},
{
"name" : "lo.gain"
},
{
"name" : "hi.f (Hz)"
},
{
"name" : "hi.gain"
}
]
},
{
"code" : "el:ChorusI",
"count" : 6,
"display" : "field",
"name" : "C* ChorusI - Mono chorus/flanger",
"number" : "58",
"params" : [
{
"name" : "t (ms)"
},
{
"name" : "width (ms)"
},
{
"name" : "rate (Hz)"
},
{
"name" : "blend"
},
{
"name" : "feedforward"
},
{
"name" : "feedback"
}
]
},
{
"code" : "el:PhaserII",
"count" : 5,
"display" : "field",
"name" : "C* PhaserII - Mono phaser",
"number" : "59",
"params" : [
{
"name" : "rate"
},
{
"name" : "lfo"
},
{
"name" : "depth"
},
{
"name" : "spread"
},
{
"name" : "resonance"
}
]
},
{
"code" : "el:AutoFilter",
"count" : 9,
"display" : "field",
"name" : "C* AutoFilter - Modulated filter cascade",
"number" : "60",
"params" : [
{
"name" : "over"
},
{
"name" : "mode"
},
{
"name" : "filter"
},
{
"name" : "gain (dB)"
},
{
"name" : "f (Hz)"
},
{
"name" : "Q"
},
{
"name" : "range"
},
{
"name" : "lfo/env"
},
{
"name" : "rate"
}
]
},
{
"code" : "el:Scape",
"count" : 6,
"display" : "field",
"name" : "C* Scape - Stereo delay with chromatic resonances",
"number" : "61",
"params" : [
{
"name" : "bpm"
},
{
"name" : "divider"
},
{
"name" : "feedback"
},
{
"name" : "dry"
},
{
"name" : "blend"
},
{
"name" : "tune (Hz)"
}
]
},
{
"code" : "el:Eq10",
"count" : 10,
"display" : "field",
"name" : "C* Eq10 - 10-band equaliser",
"number" : "62",
"params" : [
{
"name" : "31 Hz"
},
{
"name" : "63 Hz"
},
{
"name" : "125 Hz"
},
{
"name" : "250 Hz"
},
{
"name" : "500 Hz"
},
{
"name" : "1 kHz"
},
{
"name" : "2 kHz"
},
{
"name" : "4 kHz"
},
{
"name" : "8 kHz"
},
{
"name" : "16 kHz"
}
]
},
{
"code" : "el:Eq10X2",
"count" : 10,
"display" : "field",
"name" : "C* Eq10X2 - Stereo 10-band equaliser",
"number" : "63",
"params" : [
{
"name" : "31 Hz"
},
{
"name" : "63 Hz"
},
{
"name" : "125 Hz"
},
{
"name" : "250 Hz"
},
{
"name" : "500 Hz"
},
{
"name" : "1 kHz"
},
{
"name" : "2 kHz"
},
{
"name" : "4 kHz"
},
{
"name" : "8 kHz"
},
{
"name" : "16 kHz"
}
]
},
{
"code" : "el:Eq4p",
"count" : 16,
"display" : "field",
"name" : "C* Eq4p - 4-band parametric equaliser",
"number" : "64",
"params" : [
{
"name" : "a.mode"
},
{
"name" : "a.f (Hz)"
},
{
"name" : "a.Q"
},
{
"name" : "a.gain (dB)"
},
{
"name" : "b.mode"
},
{
"name" : "b.f (Hz)"
},
{
"name" : "b.Q"
},
{
"name" : "b.gain (dB)"
},
{
"name" : "c.mode"
},
{
"name" : "c.f (Hz)"
},
{
"name" : "c.Q"
},
{
"name" : "c.gain (dB)"
},
{
"name" : "d.mode"
},
{
"name" : "d.f (Hz)"
},
{
"name" : "d.Q"
},
{
"name" : "d.gain (dB)"
}
]
},
{
"code" : "el:Wider",
"count" : 2,
"display" : "field",
"name" : "C* Wider - Stereo image synthesis",
"number" : "65",
"params" : [
{
"name" : "pan"
},
{
"name" : "width"
}
]
},
{
"code" : "el:Narrower",
"count" : 2,
"display" : "field",
"name" : "C* Narrower - Stereo image width reduction",
"number" : "66",
"params" : [
{
"name" : "mode"
},
{
"name" : "strength"
}
]
},
{
"code" : "el:Sin",
"count" : 2,
"display" : "field",
"name" : "C* Sin - Sine wave generator",
"number" : "67",
"params" : [
{
"name" : "f (Hz)"
},
{
"name" : "volume"
}
]
},
{
"code" : "el:White",
"count" : 1,
"display" : "field",
"name" : "C* White - Noise generator",
"number" : "68",
"params" : [
{
"name" : "volume"
}
]
},
{
"code" : "el:Fractal",
"count" : 7,
"display" : "field",
"name" : "C* Fractal - Audio stream from deterministic chaos",
"number" : "69",
"params" : [
{
"name" : "rate"
},
{
"name" : "mode"
},
{
"name" : "x"
},
{
"name" : "y"
},
{
"name" : "z"
},
{
"name" : "hp"
},
{
"name" : "volume"
}
]
},
{
"code" : "el:Click",
"count" : 4,
"display" : "field",
"name" : "C* Click - Metronome",
"number" : "70",
"params" : [
{
"name" : "model"
},
{
"name" : "bpm"
},
{
"name" : "volume"
},
{
"name" : "damping"
}
]
},
{
"code" : "el:CEO",
"count" : 3,
"display" : "field",
"name" : "C* CEO - Chief Executive Oscillator",
"number" : "71",
"params" : [
{
"name" : "ppm"
},
{
"name" : "volume"
},
{
"name" : "damping"
}
]
},
{
"code" : "el:transient",
"count" : 2,
"display" : "field",
"name" : "Transient mangler",
"number" : "72",
"params" : [
{
"name" : "Attack speed"
},
{
"name" : "Sustain time"
}
]
},
{
"code" : "el:waveTerrain",
"count" : 0,
"display" : "field",
"name" : "Wave Terrain Oscillator",
"number" : "73",
"params" : []
},
{
"code" : "el:fadDelay",
"count" : 2,
"display" : "field",
"name" : "Fractionally Addressed Delay Line",
"number" : "74",
"params" : [
{
"name" : "Delay (seconds)"
},
{
"name" : "Feedback (dB)"
}
]
},
{
"code" : "el:tap_stereo_echo",
"count" : 10,
"display" : "field",
"name" : "TAP Stereo Echo",
"number" : "75",
"params" : [
{
"name" : "L Delay [ms]"
},
{
"name" : "L Feedback [%]"
},
{
"name" : "R/Haas Delay [ms]"
},
{
"name" : "R/Haas Feedback [%]"
},
{
"name" : "L Echo Level [dB]"
},
{
"name" : "R Echo Level [dB]"
},
{
"name" : "Dry Level [dB]"
},
{
"name" : "Cross Mode"
},
{
"name" : "Haas Effect"
},
{
"name" : "Swap Outputs"
}
]
},
{
"code" : "el:smoothDecimate",
"count" : 2,
"display" : "field",
"name" : "Smooth Decimator",
"number" : "76",
"params" : [
{
"name" : "Resample rate"
},
{
"name" : "Smoothing"
}
]
},
{
"code" : "el:tap_chorusflanger",
"count" : 7,
"display" : "field",
"name" : "TAP Chorus/Flanger",
"number" : "77",
"params" : [
{
"name" : "Frequency [Hz]"
},
{
"name" : "L/R Phase Shift [deg]"
},
{
"name" : "Depth [%]"
},
{
"name" : "Delay [ms]"
},
{
"name" : "Contour [Hz]"
},
{
"name" : "Dry Level [dB]"
},
{
"name" : "Wet Level [dB]"
}
]
},
{
"code" : "el:vynil",
"count" : 5,
"display" : "field",
"name" : "VyNil (Vinyl Effect)",
"number" : "78",
"params" : [
{
"name" : "Year"
},
{
"name" : "RPM"
},
{
"name" : "Surface warping"
},
{
"name" : "Crackle"
},
{
"name" : "Wear"
}
]
},
{
"code" : "el:retroFlange",
"count" : 2,
"display" : "field",
"name" : "Retro Flanger",
"number" : "79",
"params" : [
{
"name" : "Average stall (ms)"
},
{
"name" : "Flange frequency (Hz)"
}
]
},
{
"code" : "el:harmonicGen",
"count" : 10,
"display" : "field",
"name" : "Harmonic generator",
"number" : "80",
"params" : [
{
"name" : "Fundamental magnitude"
},
{
"name" : "2nd harmonic magnitude"
},
{
"name" : "3rd harmonic magnitude"
},
{
"name" : "4th harmonic magnitude"
},
{
"name" : "5th harmonic magnitude"
},
{
"name" : "6th harmonic magnitude"
},
{
"name" : "7th harmonic magnitude"
},
{
"name" : "8th harmonic magnitude"
},
{
"name" : "9th harmonic magnitude"
},
{
"name" : "10th harmonic magnitude"
}
]
},
{
"code" : "el:Parametric1",
"count" : 18,
"display" : "field",
"name" : "4-band parametric filter",
"number" : "81",
"params" : [
{
"name" : "Filter"
},
{
"name" : "Gain"
},
{
"name" : "Section 1"
},
{
"name" : "Frequency 1"
},
{
"name" : "Bandwidth 1"
},
{
"name" : "Gain 1"
},
{
"name" : "Section 2"
},
{
"name" : "Frequency 2"
},
{
"name" : "Bandwidth 2"
},
{
"name" : "Gain 2"
},
{
"name" : "Section 3"
},
{
"name" : "Frequency 3"
},
{
"name" : "Bandwidth 3"
},
{
"name" : "Gain 3"
},
{
"name" : "Section 4"
},
{
"name" : "Frequency 4"
},
{
"name" : "Bandwidth 4"
},
{
"name" : "Gain 4"
}
]
},
{
"code" : "el:tap_equalizer",
"count" : 16,
"display" : "field",
"name" : "TAP Equalizer",
"number" : "82",
"params" : [
{
"name" : "Band 1 Gain [dB]"
},
{
"name" : "Band 2 Gain [dB]"
},
{
"name" : "Band 3 Gain [dB]"
},
{
"name" : "Band 4 Gain [dB]"
},
{
"name" : "Band 5 Gain [dB]"
},
{
"name" : "Band 6 Gain [dB]"
},
{
"name" : "Band 7 Gain [dB]"
},
{
"name" : "Band 8 Gain [dB]"
},
{
"name" : "Band 1 Freq [Hz]"
},
{
"name" : "Band 2 Freq [Hz]"
},
{
"name" : "Band 3 Freq [Hz]"
},
{
"name" : "Band 4 Freq [Hz]"
},
{
"name" : "Band 5 Freq [Hz]"
},
{
"name" : "Band 6 Freq [Hz]"
},
{
"name" : "Band 7 Freq [Hz]"
},
{
"name" : "Band 8 Freq [Hz]"
}
]
},
{
"code" : "el:matrixMSSt",
"count" : 1,
"display" : "field",
"name" : "Matrix: MS to Stereo",
"number" : "83",
"params" : [
{
"name" : "Width"
}
]
},
{
"code" : "el:invada_mono_tube_module_0_1",
"count" : 4,
"display" : "field",
"name" : ":: Invada :: Tube - Mono",
"number" : "84",
"params" : [
{
"name" : "Drive (dB)"
},
{
"name" : "DC Offset"
},
{
"name" : "Phase"
},
{
"name" : "Wet/Dry Mix (%)"
}
]
},
{
"code" : "el:invada_stereo_tube_module_0_1",
"count" : 4,
"display" : "field",
"name" : ":: Invada :: Tube - Stereo",
"number" : "85",
"params" : [
{
"name" : "Drive (dB)"
},
{
"name" : "DC Offset"
},
{
"name" : "Phase"
},
{
"name" : "Wet/Dry Mix (%)"
}
]
},
{
"code" : "el:declip",
"count" : 0,
"display" : "field",
"name" : "Declipper",
"number" : "86",
"params" : []
},
{
"code" : "el:bandpass_iir",
"count" : 3,
"display" : "field",
"name" : "Glame Bandpass Filter",
"number" : "87",
"params" : [
{
"name" : "Center Frequency (Hz)"
},
{
"name" : "Bandwidth (Hz)"
},
{
"name" : "Stages(2 poles per stage)"
}
]
},
{
"code" : "el:artificialLatency",
"count" : 2,
"display" : "field",
"name" : "Artificial latency",
"number" : "88",
"params" : [
{
"name" : "Delay (ms)"
},
{
"name" : "latency"
}
]
},
{
"code" : "el:satanMaximiser",
"count" : 2,
"display" : "field",
"name" : "Barry's Satan Maximiser",
"number" : "89",
"params" : [
{
"name" : "Decay time (samples)"
},
{
"name" : "Knee point (dB)"
}
]
},
{
"code" : "el:singlePara",
"count" : 3,
"display" : "field",
"name" : "Single band parametric",
"number" : "90",
"params" : [
{
"name" : "Gain (dB)"
},
{
"name" : "Frequency (Hz)"
},
{
"name" : "Bandwidth (octaves)"
}
]
},
{
"code" : "el:decimator",
"count" : 2,
"display" : "field",
"name" : "Decimator",
"number" : "91",
"params" : [
{
"name" : "Bit depth"
},
{
"name" : "Sample rate (Hz)"
}
]
},
{
"code" : "el:mbeq",
"count" : 16,
"display" : "field",
"name" : "Multiband EQ",
"number" : "92",
"params" : [
{
"name" : "50Hz gain (low shelving)"
},
{
"name" : "100Hz gain"
},
{
"name" : "156Hz gain"
},
{
"name" : "220Hz gain"
},
{
"name" : "311Hz gain"
},
{
"name" : "440Hz gain"
},
{
"name" : "622Hz gain"
},
{
"name" : "880Hz gain"
},
{
"name" : "1250Hz gain"
},
{
"name" : "1750Hz gain"
},
{
"name" : "2500Hz gain"
},
{
"name" : "3500Hz gain"
},
{
"name" : "5000Hz gain"
},
{
"name" : "10000Hz gain"
},
{
"name" : "20000Hz gain"
},
{
"name" : "latency"
}
]
},
{
"code" : "el:svf",
"count" : 4,
"display" : "field",
"name" : "State Variable Filter",
"number" : "93",
"params" : [
{
"name" : "Filter type (0=none, 1=LP, 2=HP, 3=BP, 4=BR, 5=AP)"
},
{
"name" : "Filter freq"
},
{
"name" : "Filter Q"
},
{
"name" : "Filter resonance"
}
]
},
{
"code" : "el:giantFlange",
"count" : 7,
"display" : "field",
"name" : "Giant flange",
"number" : "94",
"params" : [
{
"name" : "Double delay"
},
{
"name" : "LFO frequency 1 (Hz)"
},
{
"name" : "Delay 1 range (s)"
},
{
"name" : "LFO frequency 2 (Hz)"
},
{
"name" : "Delay 2 range (s)"
},
{
"name" : "Feedback"
},
{
"name" : "Dry/Wet level"
}
]
},
{
"code" : "el:Ambisonics-21-panner",
"count" : 2,
"display" : "field",
"name" : "AMB order 2,1 panner",
"number" : "95",
"params" : [
{
"name" : "Elevation"
},
{
"name" : "Azimuth"
}
]
},
{
"code" : "el:Ambisonics-21-rotator",
"count" : 1,
"display" : "field",
"name" : "AMB order 2,1 rotator",
"number" : "96",
"params" : [
{
"name" : "Angle"
}
]
},
{
"code" : "el:Ambisonics-22-panner",
"count" : 2,
"display" : "field",
"name" : "AMB order 2,2 panner",
"number" : "97",
"params" : [
{
"name" : "Elevation"
},
{
"name" : "Azimuth"
}
]
},
{
"code" : "el:Ambisonics-22-rotator",
"count" : 1,
"display" : "field",
"name" : "AMB order 2,2 rotator",
"number" : "98",
"params" : [
{
"name" : "Angle"
}
]
},
{
"code" : "el:delay_5s",
"count" : 2,
"display" : "field",
"name" : "Simple Delay Line",
"number" : "99",
"params" : [
{
"name" : "Delay (Seconds)"
},
{
"name" : "Dry/Wet Balance"
}
]
},
{
"code" : "el:rateShifter",
"count" : 1,
"display" : "field",
"name" : "Rate shifter",
"number" : "100",
"params" : [
{
"name" : "Rate"
}
]
},
{
"code" : "el:invada_stereo_input_module_0_1",
"count" : 6,
"display" : "field",
"name" : ":: Invada :: Input Module",
"number" : "101",
"params" : [
{
"name" : "Phase Reverse (Left)"
},
{
"name" : "Phase Reverse (Right)"
},
{
"name" : "Gain (dB)"
},
{
"name" : "Pan (L-R)"
},
{
"name" : "Width (M-S)"
},
{
"name" : "Soft Clip"
}
]
},
{
"code" : "el:amp",
"count" : 1,
"display" : "field",
"name" : "Simple amplifier",
"number" : "102",
"params" : [
{
"name" : "Amps gain (dB)"
}
]
},
{
"code" : "el:const",
"count" : 1,
"display" : "field",
"name" : "Constant Signal Generator",
"number" : "103",
"params" : [
{
"name" : "Signal amplitude"
}
]
},
{
"code" : "el:matrixStMS",
"count" : 0,
"display" : "field",
"name" : "Matrix: Stereo to MS",
"number" : "104",
"params" : []
},
{
"code" : "el:lfoPhaser",
"count" : 4,
"display" : "field",
"name" : "LFO Phaser",
"number" : "105",
"params" : [
{
"name" : "LFO rate (Hz)"
},
{
"name" : "LFO depth"
},
{
"name" : "Feedback"
},
{
"name" : "Spread (octaves)"
}
]
},
{
"code" : "el:fourByFourPole",
"count" : 8,
"display" : "field",
"name" : "4 x 4 pole allpass",
"number" : "106",
"params" : [
{
"name" : "Frequency 1"
},
{
"name" : "Feedback 1"
},
{
"name" : "Frequency 2"
},
{
"name" : "Feedback 2"
},
{
"name" : "Frequency 3"
},
{
"name" : "Feedback 3"
},
{
"name" : "Frequency 4"
},
{
"name" : "Feedback 4"
}
]
},
{
"code" : "el:autoPhaser",
"count" : 5,
"display" : "field",
"name" : "Auto phaser",
"number" : "107",
"params" : [
{
"name" : "Attack time (s)"
},
{
"name" : "Decay time (s)"
},
{
"name" : "Modulation depth"
},
{
"name" : "Feedback"
},
{
"name" : "Spread (octaves)"
}
]
},
{
"code" : "el:se4",
"count" : 9,
"display" : "field",
"name" : "SE4",
"number" : "108",
"params" : [
{
"name" : "RMS/peak"
},
{
"name" : "Attack time (ms)"
},
{
"name" : "Release time (ms)"
},
{
"name" : "Threshold level (dB)"
},
{
"name" : "Ratio (1:n)"
},
{
"name" : "Knee radius (dB)"
},
{
"name" : "Attenuation (dB)"
},
{
"name" : "Amplitude (dB)"
},
{
"name" : "Gain expansion (dB)"
}
]
},
{
"code" : "el:amPitchshift",
"count" : 3,
"display" : "field",
"name" : "AM pitchshifter",
"number" : "109",
"params" : [
{
"name" : "Pitch shift"
},
{
"name" : "Buffer size"
},
{
"name" : "latency"
}
]
},
{
"code" : "el:valveRect",
"count" : 2,
"display" : "field",
"name" : "Valve rectifier",
"number" : "110",
"params" : [
{
"name" : "Sag level"
},
{
"name" : "Distortion"
}
]
},
{
"code" : "el:tap_doubler",
"count" : 8,
"display" : "field",
"name" : "TAP Fractal Doubler",
"number" : "111",
"params" : [
{
"name" : "Time Tracking"
},
{
"name" : "Pitch Tracking"
},
{
"name" : "Dry Level [dB]"
},
{
"name" : "Dry Left Position"
},
{
"name" : "Dry Right Position"
},
{
"name" : "Wet Level [dB]"
},
{
"name" : "Wet Left Position"
},
{
"name" : "Wet Right Position"
}
]
},
{
"code" : "el:gong",
"count" : 27,
"display" : "field",
"name" : "Gong model",
"number" : "112",
"params" : [
{
"name" : "Inner damping"
},
{
"name" : "Outer damping"
},
{
"name" : "Mic position"
},
{
"name" : "Inner size 1"
},
{
"name" : "Inner stiffness 1 +"
},
{
"name" : "Inner stiffness 1 -"
},
{
"name" : "Inner size 2"
},
{
"name" : "Inner stiffness 2 +"
},
{
"name" : "Inner stiffness 2 -"
},
{
"name" : "Inner size 3"
},
{
"name" : "Inner stiffness 3 +"
},
{
"name" : "Inner stiffness 3 -"
},
{
"name" : "Inner size 4"
},
{
"name" : "Inner stiffness 4 +"
},
{
"name" : "Inner stiffness 4 -"
},
{
"name" : "Outer size 1"
},
{
"name" : "Outer stiffness 1 +"
},
{
"name" : "Outer stiffness 1 -"
},
{
"name" : "Outer size 2"
},
{
"name" : "Outer stiffness 2 +"
},
{
"name" : "Outer stiffness 2 -"
},
{
"name" : "Outer size 3"
},
{
"name" : "Outer stiffness 3 +"
},
{
"name" : "Outer stiffness 3 -"
},
{
"name" : "Outer size 4"
},
{
"name" : "Outer stiffness 4 +"
},
{
"name" : "Outer stiffness 4 -"
}
]
},
{
"code" : "el:invada_mono_compressor_module_0_1",
"count" : 8,
"display" : "field",
"name" : ":: Invada :: Compressor - Mono",
"number" : "113",
"params" : [
{
"name" : "Tight / Sloppy"
},
{
"name" : "Attack (ms)"
},
{
"name" : "Release (ms)"
},
{
"name" : "Threshold (dB)"
},
{
"name" : "Ratio"
},
{
"name" : "Gain (dB)"
},
{
"name" : "Soft Clip"
},
{
"name" : "Gain Reduction"
}
]
},
{
"code" : "el:invada_stereo_compressor_module_0_1",
"count" : 8,
"display" : "field",
"name" : ":: Invada :: Compressor - Stereo",
"number" : "114",
"params" : [
{
"name" : "Tight / Sloppy"
},
{
"name" : "Attack (ms)"
},
{
"name" : "Release (ms)"
},
{
"name" : "Threshold (dB)"
},
{
"name" : "Ratio"
},
{
"name" : "Gain (dB)"
},
{
"name" : "Soft Clip"
},
{
"name" : "Gain Reduction"
}
]
},
{
"code" : "el:gate",
"count" : 8,
"display" : "field",
"name" : "Gate",
"number" : "115",
"params" : [
{
"name" : "LF key filter (Hz)"
},
{
"name" : "HF key filter (Hz)"
},
{
"name" : "Threshold (dB)"
},
{
"name" : "Attack (ms)"
},
{
"name" : "Hold (ms)"
},
{
"name" : "Decay (ms)"
},
{
"name" : "Range (dB)"
},
{
"name" : "Output select (-1 = key listen, 0 = gate, 1 = bypass)"
}
]
},
{
"code" : "el:stepMuxer",
"count" : 1,
"display" : "field",
"name" : "Step Demuxer",
"number" : "116",
"params" : [
{
"name" : "Crossfade time (in ms)"
}
]
},
{
"code" : "el:dj_eq_mono",
"count" : 4,
"display" : "field",
"name" : "DJ EQ (mono)",
"number" : "117",
"params" : [
{
"name" : "Lo gain (dB)"
},
{
"name" : "Mid gain (dB)"
},
{
"name" : "Hi gain (dB)"
},
{
"name" : "latency"
}
]
},
{
"code" : "el:dj_eq",
"count" : 4,
"display" : "field",
"name" : "DJ EQ",
"number" : "118",
"params" : [
{
"name" : "Lo gain (dB)"
},
{
"name" : "Mid gain (dB)"
},
{
"name" : "Hi gain (dB)"
},
{
"name" : "latency"
}
]
},
{
"code" : "el:djFlanger",
"count" : 4,
"display" : "field",
"name" : "DJ flanger",
"number" : "119",
"params" : [
{
"name" : "LFO sync"
},
{
"name" : "LFO period (s)"
},
{
"name" : "LFO depth (ms)"
},
{
"name" : "Feedback (%)"
}
]
},
{
"code" : "el:dysonCompress",
"count" : 4,
"display" : "field",
"name" : "Dyson compressor",
"number" : "120",
"params" : [
{
"name" : "Peak limit (dB)"
},
{
"name" : "Release time (s)"
},
{
"name" : "Fast compression ratio"
},
{
"name" : "Compression ratio"
}
]
},
{
"code" : "el:sinusWavewrapper",
"count" : 1,
"display" : "field",
"name" : "Sinus wavewrapper",
"number" : "121",
"params" : [
{
"name" : "Wrap degree"
}
]
},
{
"code" : "el:alias",
"count" : 1,
"display" : "field",
"name" : "Aliasing",
"number" : "122",
"params" : [
{
"name" : "Aliasing level"
}
]
},
{
"code" : "el:gverb",
"count" : 7,
"display" : "field",
"name" : "GVerb",
"number" : "123",
"params" : [
{
"name" : "Roomsize (m)"
},
{
"name" : "Reverb time (s)"
},
{
"name" : "Damping"
},
{
"name" : "Input bandwidth"
},
{
"name" : "Dry signal level (dB)"
},
{
"name" : "Early reflection level (dB)"
},
{
"name" : "Tail level (dB)"
}
]
},
{
"code" : "el:freqTracker",
"count" : 1,
"display" : "field",
"name" : "Frequency tracker",
"number" : "124",
"params" : [
{
"name" : "Tracking speed"
}
]
},
{
"code" : "el:pointerCastDistortion",
"count" : 2,
"display" : "field",
"name" : "Pointer cast distortion",
"number" : "125",
"params" : [
{
"name" : "Effect cutoff freq (Hz)"
},
{
"name" : "Dry/wet mix"
}
]
},
{
"code" : "el:tap_equalizer_bw",
"count" : 24,
"display" : "field",
"name" : "TAP Equalizer/BW",
"number" : "126",
"params" : [
{
"name" : "Band 1 Gain [dB]"
},
{
"name" : "Band 2 Gain [dB]"
},
{
"name" : "Band 3 Gain [dB]"
},
{
"name" : "Band 4 Gain [dB]"
},
{
"name" : "Band 5 Gain [dB]"
},
{
"name" : "Band 6 Gain [dB]"
},
{
"name" : "Band 7 Gain [dB]"
},
{
"name" : "Band 8 Gain [dB]"
},
{
"name" : "Band 1 Freq [Hz]"
},
{
"name" : "Band 2 Freq [Hz]"
},
{
"name" : "Band 3 Freq [Hz]"
},
{
"name" : "Band 4 Freq [Hz]"
},
{
"name" : "Band 5 Freq [Hz]"
},
{
"name" : "Band 6 Freq [Hz]"
},
{
"name" : "Band 7 Freq [Hz]"
},
{
"name" : "Band 8 Freq [Hz]"
},
{
"name" : "Band 1 Bandwidth [octaves]"
},
{
"name" : "Band 2 Bandwidth [octaves]"
},
{
"name" : "Band 3 Bandwidth [octaves]"
},
{
"name" : "Band 4 Bandwidth [octaves]"
},
{
"name" : "Band 5 Bandwidth [octaves]"
},
{
"name" : "Band 6 Bandwidth [octaves]"
},
{
"name" : "Band 7 Bandwidth [octaves]"
},
{
"name" : "Band 8 Bandwidth [octaves]"
}
]
},
{
"code" : "el:gsm",
"count" : 4,
"display" : "field",
"name" : "GSM simulator",
"number" : "127",
"params" : [
{
"name" : "Dry/wet mix"
},
{
"name" : "Number of passes"
},
{
"name" : "Error rate (bits/block)"
},
{
"name" : "latency"
}
]
},
{
"code" : "el:revdelay",
"count" : 5,
"display" : "field",
"name" : "Reverse Delay (5s max)",
"number" : "128",
"params" : [
{
"name" : "Delay Time (s)"
},
{
"name" : "Dry Level (dB)"
},
{
"name" : "Wet Level (dB)"
},
{
"name" : "Feedback"
},
{
"name" : "Crossfade samples"
}
]
},
{
"code" : "el:karaoke",
"count" : 1,
"display" : "field",
"name" : "Karaoke",
"number" : "129",
"params" : [
{
"name" : "Vocal volume (dB)"
}
]
},
{
"code" : "el:dcRemove",
"count" : 0,
"display" : "field",
"name" : "DC Offset Remover",
"number" : "130",
"params" : []
},
{
"code" : "el:Ambisonics-31-panner",
"count" : 2,
"display" : "field",
"name" : "AMB order 3,1 panner",
"number" : "131",
"params" : [
{
"name" : "Elevation"
},
{
"name" : "Azimuth"
}
]
},
{
"code" : "el:Ambisonics-31-rotator",
"count" : 1,
"display" : "field",
"name" : "AMB order 3,1 rotator",
"number" : "132",
"params" : [
{
"name" : "Angle"
}
]
},
{
"code" : "el:Ambisonics-33-panner",
"count" : 2,
"display" : "field",
"name" : "AMB order 3,3 panner",
"number" : "133",
"params" : [
{
"name" : "Elevation"
},
{
"name" : "Azimuth"
}
]
},
{
"code" : "el:Ambisonics-33-rotator",
"count" : 1,
"display" : "field",
"name" : "AMB order 3,3 rotator",
"number" : "134",
"params" : [
{
"name" : "Angle"
}
]
},
{
"code" : "el:sc1",
"count" : 6,
"display" : "field",
"name" : "SC1",
"number" : "135",
"params" : [
{
"name" : "Attack time (ms)"
},
{
"name" : "Release time (ms)"
},
{
"name" : "Threshold level (dB)"
},
{
"name" : "Ratio (1:n)"
},
{
"name" : "Knee radius (dB)"
},
{
"name" : "Makeup gain (dB)"
}
]
},
{
"code" : "el:foldover",
"count" : 2,
"display" : "field",
"name" : "Foldover distortion",
"number" : "136",
"params" : [
{
"name" : "Drive"
},
{
"name" : "Skew"
}
]
},
{
"code" : "el:hardLimiter",
"count" : 3,
"display" : "field",
"name" : "Hard Limiter",
"number" : "137",
"params" : [
{
"name" : "dB limit"
},
{
"name" : "Wet level"
},
{
"name" : "Residue level"
}
]
},
{
"code" : "el:lsFilter",
"count" : 3,
"display" : "field",
"name" : "LS Filter",
"number" : "138",
"params" : [
{
"name" : "Filter type (0=LP, 1=BP, 2=HP)"
},
{
"name" : "Cutoff frequency (Hz)"
},
{
"name" : "Resonance"
}
]
},
{
"code" : "el:matrixSpatialiser",
"count" : 1,
"display" : "field",
"name" : "Matrix Spatialiser",
"number" : "139",
"params" : [
{
"name" : "Width"
}
]
},
{
"code" : "el:invada_mono_reverbER_module_0_1",
"count" : 10,
"display" : "field",
"name" : ":: Invada :: ER Reverb - Mono In",
"number" : "140",
"params" : [
{
"name" : "Room Length"
},
{
"name" : "Room Width"
},
{
"name" : "Room Height"
},
{
"name" : "Source (L/R)"
},
{
"name" : "Source (F/B)"
},
{
"name" : "Listener (L/R)"
},
{
"name" : "Listener (F/B)"
},
{
"name" : "HPF (Hz)"
},
{
"name" : "Warmth"
},
{
"name" : "Diffusion"
}
]
},
{
"code" : "el:invada_sum_reverbER_module_0_1",
"count" : 10,
"display" : "field",
"name" : ":: Invada :: ER Reverb - Sum L+R In",
"number" : "141",
"params" : [
{
"name" : "Room Length"
},
{
"name" : "Room Width"
},
{
"name" : "Room Height"
},
{
"name" : "Source (L/R)"
},
{
"name" : "Source (F/B)"
},
{
"name" : "Listener (L/R)"
},
{
"name" : "Listener (F/B)"
},
{
"name" : "HPF (Hz)"
},
{
"name" : "Warmth"
},
{
"name" : "Diffusion"
}
]
},
{
"code" : "el:imp",
"count" : 4,
"display" : "field",
"name" : "Impulse convolver",
"number" : "142",
"params" : [
{
"name" : "Impulse ID"
},
{
"name" : "High latency mode"
},
{
"name" : "Gain (dB)"
},
{
"name" : "latency"
}
]
},
{
"code" : "el:highpass_iir",
"count" : 2,
"display" : "field",
"name" : "Glame Highpass Filter",
"number" : "143",
"params" : [
{
"name" : "Cutoff Frequency"
},
{
"name" : "Stages(2 poles per stage)"
}
]
},
{
"code" : "el:pitchScale",
"count" : 2,
"display" : "field",
"name" : "Pitch Scaler",
"number" : "144",
"params" : [
{
"name" : "Pitch co-efficient"
},
{
"name" : "latency"
}
]
},
{
"code" : "el:G2reverb",
"count" : 7,
"display" : "field",
"name" : "Stereo reverb",
"number" : "145",
"params" : [
{
"name" : "Room size"
},
{
"name" : "Reverb time"
},
{
"name" : "Input BW"
},
{
"name" : "Damping"
},
{
"name" : "Dry sound"
},
{
"name" : "Reflections"
},
{
"name" : "Reverb tail"
}
]
},
{
"code" : "el:zita-reverb",
"count" : 10,
"display" : "field",
"name" : "zita-reverb",
"number" : "146",
"params" : [
{
"name" : "Delay"
},
{
"name" : "Xover"
},
{
"name" : "RT-low"
},
{
"name" : "RT-mid"
},
{
"name" : "Damping"
},
{
"name" : "F1-freq"
},
{
"name" : "F1-gain"
},
{
"name" : "F2-freq"
},
{
"name" : "F2-gain"
},
{
"name" : "Output mix"
}
]
},
{
"code" : "el:zita-reverb-amb",
"count" : 10,
"display" : "field",
"name" : "zita-reverb-amb",
"number" : "147",
"params" : [
{
"name" : "Delay"
},
{
"name" : "Xover"
},
{
"name" : "RT-low"
},
{
"name" : "RT-mid"
},
{
"name" : "Damping"
},
{
"name" : "F1-freq"
},
{
"name" : "F1-gain"
},
{
"name" : "F2-freq"
},
{
"name" : "F2-gain"
},
{
"name" : "XYZ gain"
}
]
},
{
"code" : "el:tap_autopan",
"count" : 3,
"display" : "field",
"name" : "TAP AutoPanner",
"number" : "148",
"params" : [
{
"name" : "Frequency [Hz]"
},
{
"name" : "Depth [%]"
},
{
"name" : "Gain [dB]"
}
]
},
{
"code" : "el:flanger",
"count" : 4,
"display" : "field",
"name" : "Flanger",
"number" : "149",
"params" : [
{
"name" : "Delay base (ms)"
},
{
"name" : "Max slowdown (ms)"
},
{
"name" : "LFO frequency (Hz)"
},
{
"name" : "Feedback"
}
]
},
{
"code" : "el:tap_reverb",
"count" : 8,
"display" : "field",
"name" : "TAP Reverberator",
"number" : "150",
"params" : [
{
"name" : "Decay [ms]"
},
{
"name" : "Dry Level [dB]"
},
{
"name" : "Wet Level [dB]"
},
{
"name" : "Comb Filters"
},
{
"name" : "Allpass Filters"
},
{
"name" : "Bandpass Filter"
},
{
"name" : "Enhanced Stereo"
},
{
"name" : "Reverb Type"
}
]
},
{
"code" : "el:split",
"count" : 0,
"display" : "field",
"name" : "Mono to Stereo splitter",
"number" : "151",
"params" : []
},
{
"code" : "el:plate",
"count" : 3,
"display" : "field",
"name" : "Plate reverb",
"number" : "152",
"params" : [
{
"name" : "Reverb time"
},
{
"name" : "Damping"
},
{
"name" : "Dry/wet mix"
}
]
},
{
"code" : "el:triplePara",
"count" : 15,
"display" : "field",
"name" : "Triple band parametric with shelves",
"number" : "153",
"params" : [
{
"name" : "Low-shelving gain (dB)"
},
{
"name" : "Low-shelving frequency (Hz)"
},
{
"name" : "Low-shelving slope"
},
{
"name" : "Band 1 gain (dB)"
},
{
"name" : "Band 1 frequency (Hz)"
},
{
"name" : "Band 1 bandwidth (octaves)"
},
{
"name" : "Band 2 gain (dB)"
},
{
"name" : "Band 2 frequency (Hz)"
},
{
"name" : "Band 2 bandwidth (octaves)"
},
{
"name" : "Band 3 gain (dB)"
},
{
"name" : "Band 3 frequency (Hz)"
},
{
"name" : "Band 3 bandwidth (octaves)"
},
{
"name" : "High-shelving gain (dB)"
},
{
"name" : "High-shelving frequency (Hz)"
},
{
"name" : "High-shelving slope"
}
]
},
{
"code" : "el:tap_dynamics_m",
"count" : 7,
"display" : "field",
"name" : "TAP Dynamics (M)",
"number" : "154",
"params" : [
{
"name" : "Attack [ms]"
},
{
"name" : "Release [ms]"
},
{
"name" : "Offset Gain [dB]"
},
{
"name" : "Makeup Gain [dB]"
},
{
"name" : "Envelope Volume [dB]"
},
{
"name" : "Gain Adjustment [dB]"
},
{
"name" : "Function"
}
]
},
{
"code" : "el:xfade",
"count" : 1,
"display" : "field",
"name" : "Crossfade",
"number" : "155",
"params" : [
{
"name" : "Crossfade"
}
]
},
{
"code" : "el:xfade4",
"count" : 1,
"display" : "field",
"name" : "Crossfade (4 outs)",
"number" : "156",
"params" : [
{
"name" : "Crossfade"
}
]
},
{
"code" : "el:tap_dynamics_st",
"count" : 10,
"display" : "field",
"name" : "TAP Dynamics (St)",
"number" : "157",
"params" : [
{
"name" : "Attack [ms]"
},
{
"name" : "Release [ms]"
},
{
"name" : "Offset Gain [dB]"
},
{
"name" : "Makeup Gain [dB]"
},
{
"name" : "Envelope Volume (L) [dB]"
},
{
"name" : "Envelope Volume (R) [dB]"
},
{
"name" : "Gain Adjustment (L) [dB]"
},
{
"name" : "Gain Adjustment (R) [dB]"
},
{
"name" : "Stereo Mode"
},
{
"name" : "Function"
}
]
},
{
"code" : "el:lpf",
"count" : 1,
"display" : "field",
"name" : "Simple Low Pass Filter",
"number" : "158",
"params" : [
{
"name" : "Cutoff Frequency (Hz)"
}
]
},
{
"code" : "el:hpf",
"count" : 1,
"display" : "field",
"name" : "Simple High Pass Filter",
"number" : "159",
"params" : [
{
"name" : "Cutoff Frequency (Hz)"
}
]
},
{
"code" : "el:ringmod_2i1o",
"count" : 1,
"display" : "field",
"name" : "Ringmod with two inputs",
"number" : "160",
"params" : [
{
"name" : "Modulation depth (0=none, 1=AM, 2=RM)"
}
]
},
{
"code" : "el:ringmod_1i1o1l",
"count" : 6,
"display" : "field",
"name" : "Ringmod with LFO",
"number" : "161",
"params" : [
{
"name" : "Modulation depth (0=none, 1=AM, 2=RM)"
},
{
"name" : "Frequency (Hz)"
},
{
"name" : "Sine level"
},
{
"name" : "Triangle level"
},
{
"name" : "Sawtooth level"
},
{
"name" : "Square level"
}
]
},
{
"code" : "el:comb",
"count" : 2,
"display" : "field",
"name" : "Comb Filter",
"number" : "162",
"params" : [
{
"name" : "Band separation (Hz)"
},
{
"name" : "Feedback"
}
]
},
{
"code" : "el:tapeDelay",
"count" : 10,
"display" : "field",
"name" : "Tape Delay Simulation",
"number" : "163",
"params" : [
{
"name" : "Tape speed (inches/sec, 1=normal)"
},
{
"name" : "Dry level (dB)"
},
{
"name" : "Tap 1 distance (inches)"
},
{
"name" : "Tap 1 level (dB)"
},
{
"name" : "Tap 2 distance (inches)"
},
{
"name" : "Tap 2 level (dB)"
},
{
"name" : "Tap 3 distance (inches)"
},
{
"name" : "Tap 3 level (dB)"
},
{
"name" : "Tap 4 distance (inches)"
},
{
"name" : "Tap 4 level (dB)"
}
]
},
{
"code" : "el:shaper",
"count" : 1,
"display" : "field",
"name" : "Wave shaper",
"number" : "164",
"params" : [
{
"name" : "Waveshape"
}
]
},
{
"code" : "el:tap_deesser",
"count" : 5,
"display" : "field",
"name" : "TAP DeEsser",
"number" : "165",
"params" : [
{
"name" : "Threshold Level [dB]"
},
{
"name" : "Frequency [Hz]"
},
{
"name" : "Sidechain Filter"
},
{
"name" : "Monitor"
},
{
"name" : "Attenuation [dB]"
}
]
},
{
"code" : "el:bodeShifterCV",
"count" : 4,
"display" : "field",
"name" : "Bode frequency shifter (CV)",
"number" : "166",
"params" : [
{
"name" : "Base shift"
},
{
"name" : "Mix (-1=down, +1=up)"
},
{
"name" : "CV Attenuation"
},
{
"name" : "latency"
}
]
},
{
"code" : "el:chebstortion",
"count" : 1,
"display" : "field",
"name" : "Chebyshev distortion",
"number" : "167",
"params" : [
{
"name" : "Distortion"
}
]
},
{
"code" : "el:surroundEncoder",
"count" : 0,
"display" : "field",
"name" : "Surround matrix encoder",
"number" : "168",
"params" : []
},
{
"code" : "el:divider",
"count" : 1,
"display" : "field",
"name" : "Audio Divider (Suboctave Generator)",
"number" : "169",
"params" : [
{
"name" : "Denominator"
}
]
},
{
"code" : "el:modDelay",
"count" : 1,
"display" : "field",
"name" : "Modulatable delay",
"number" : "170",
"params" : [
{
"name" : "Base delay (s)"
}
]
},
{
"code" : "el:combSplitter",
"count" : 1,
"display" : "field",
"name" : "Comb Splitter",
"number" : "171",
"params" : [
{
"name" : "Band separation (Hz)"
}
]
},
{
"code" : "el:sc2",
"count" : 6,
"display" : "field",
"name" : "SC2",
"number" : "172",
"params" : [
{
"name" : "Attack time (ms)"
},
{
"name" : "Release time (ms)"
},
{
"name" : "Threshold level (dB)"
},
{
"name" : "Ratio (1:n)"
},
{
"name" : "Knee radius (dB)"
},
{
"name" : "Makeup gain (dB)"
}
]
},
{
"code" : "el:allpass_n",
"count" : 3,
"display" : "field",
"name" : "Allpass delay line, noninterpolating",
"number" : "173",
"params" : [
{
"name" : "Max Delay (s)"
},
{
"name" : "Delay Time (s)"
},
{
"name" : "Decay Time (s)"
}
]
},
{
"code" : "el:allpass_l",
"count" : 3,
"display" : "field",
"name" : "Allpass delay line, linear interpolation",
"number" : "174",
"params" : [
{
"name" : "Max Delay (s)"
},
{
"name" : "Delay Time (s)"
},
{
"name" : "Decay Time (s)"
}
]
},
{
"code" : "el:allpass_c",
"count" : 3,
"display" : "field",
"name" : "Allpass delay line, cubic spline interpolation",
"number" : "175",
"params" : [
{
"name" : "Max Delay (s)"
},
{
"name" : "Delay Time (s)"
},
{
"name" : "Decay Time (s)"
}
]
},
{
"code" : "el:tap_tubewarmth",
"count" : 2,
"display" : "field",
"name" : "TAP TubeWarmth",
"number" : "176",
"params" : [
{
"name" : "Drive"
},
{
"name" : "Tape--Tube Blend"
}
]
},
{
"code" : "el:sinCos",
"count" : 2,
"display" : "field",
"name" : "Sine + cosine oscillator",
"number" : "177",
"params" : [
{
"name" : "Base frequency (Hz)"
},
{
"name" : "Pitch offset"
}
]
},
{
"code" : "el:sifter",
"count" : 1,
"display" : "field",
"name" : "Signal sifter",
"number" : "178",
"params" : [
{
"name" : "Sift size"
}
]
},
{
"code" : "el:notch_iir",
"count" : 3,
"display" : "field",
"name" : "Mag's Notch Filter",
"number" : "179",
"params" : [
{
"name" : "Center Frequency (Hz)"
},
{
"name" : "Bandwidth (Hz)"
},
{
"name" : "Stages(2 poles per stage)"
}
]
},
{
"code" : "el:Tricardioid-to-AMB",
"count" : 0,
"display" : "field",
"name" : "Three cardioids to AMB matrix",
"number" : "180",
"params" : []
},
{
"code" : "el:Virtualmic",
"count" : 4,
"display" : "field",
"name" : "Virtual stereo microphone",
"number" : "181",
"params" : [
{
"name" : "Elevation"
},
{
"name" : "Azimuth"
},
{
"name" : "Angle"
},
{
"name" : "Polar"
}
]
},
{
"code" : "el:UHJ-encoder",
"count" : 0,
"display" : "field",
"name" : "UHJ Encoder",
"number" : "182",
"params" : []
},
{
"code" : "el:UHJ-decoder",
"count" : 0,
"display" : "field",
"name" : "UHJ Decoder",
"number" : "183",
"params" : []
},
{
"code" : "el:pitchScaleHQ",
"count" : 2,
"display" : "field",
"name" : "Higher Quality Pitch Scaler",
"number" : "184",
"params" : [
{
"name" : "Pitch co-efficient"
},
{
"name" : "latency"
}
]
},
{
"code" : "el:crossoverDist",
"count" : 2,
"display" : "field",
"name" : "Crossover distortion",
"number" : "185",
"params" : [
{
"name" : "Crossover amplitude"
},
{
"name" : "Smoothing"
}
]
},
{
"code" : "el:Ambisonics-11-mono-panner",
"count" : 2,
"display" : "field",
"name" : "AMB order 1,1 mono panner",
"number" : "186",
"params" : [
{
"name" : "Elevation"
},
{
"name" : "Azimuth"
}
]
},
{
"code" : "el:Ambisonics-11-stereo-panner",
"count" : 3,
"display" : "field",
"name" : "AMB order 1,1 stereo panner",
"number" : "187",
"params" : [
{
"name" : "Elevation"
},
{
"name" : "Width"
},
{
"name" : "Azimuth"
}
]
},
{
"code" : "el:Ambisonics-11-rotator",
"count" : 1,
"display" : "field",
"name" : "AMB order 1,1 rotator",
"number" : "188",
"params" : [
{
"name" : "Angle"
}
]
},
{
"code" : "el:Ambisonics-11-square-decoder",
"count" : 6,
"display" : "field",
"name" : "AMB order 1,1 square decoder",
"number" : "189",
"params" : [
{
"name" : "Front spkr"
},
{
"name" : "Shelf filt"
},
{
"name" : "HF XY gain"
},
{
"name" : "LF XY gain"
},
{
"name" : "Shelf freq"
},
{
"name" : "Distance"
}
]
},
{
"code" : "el:Ambisonics-11-hexagon-decoder",
"count" : 6,
"display" : "field",
"name" : "AMB order 1,1 hexagon decoder",
"number" : "190",
"params" : [
{
"name" : "Front spkr"
},
{
"name" : "Shelf filt"
},
{
"name" : "HF XY gain"
},
{
"name" : "LF XY gain"
},
{
"name" : "Shelf freq"
},
{
"name" : "Distance"
}
]
},
{
"code" : "el:Ambisonics-11-cube-decoder",
"count" : 5,
"display" : "field",
"name" : "AMB order 1,1 cube decoder",
"number" : "191",
"params" : [
{
"name" : "Shelf filt"
},
{
"name" : "HF XYZ gain"
},
{
"name" : "LF XYZ gain"
},
{
"name" : "Shelf freq"
},
{
"name" : "Distance"
}
]
},
{
"code" : "el:tap_pinknoise",
"count" : 3,
"display" : "field",
"name" : "TAP Pink/Fractal Noise",
"number" : "192",
"params" : [
{
"name" : "Fractal Dimension"
},
{
"name" : "Signal Level [dB]"
},
{
"name" : "Noise Level [dB]"
}
]
},
{
"code" : "el:tap_reflector",
"count" : 3,
"display" : "field",
"name" : "TAP Reflector",
"number" : "193",
"params" : [
{
"name" : "Fragment Length [ms]"
},
{
"name" : "Dry Level [dB]"
},
{
"name" : "Wet Level [dB]"
}
]
},
{
"code" : "el:noise_white",
"count" : 1,
"display" : "field",
"name" : "White Noise Source",
"number" : "194",
"params" : [
{
"name" : "Amplitude"
}
]
},
{
"code" : "el:diode",
"count" : 1,
"display" : "field",
"name" : "Diode Processor",
"number" : "195",
"params" : [
{
"name" : "Mode (0 for none, 1 for half wave, 2 for full wave)"
}
]
},
{
"code" : "pn:dyn_compress_brutal",
"count" : 1,
"display" : "field",
"name" : "dyn_compress_brutal",
"number" : "1",
"params" : [
{
"name" : "gain-%"
}
]
},
{
"code" : "pn:dyn_compress_hard",
"count" : 1,
"display" : "field",
"name" : "dyn_compress_hard",
"number" : "2",
"params" : [
{
"name" : "gain-%"
}
]
},
{
"code" : "pn:dyn_compress_infinite",
"count" : 1,
"display" : "field",
"name" : "dyn_compress_infinite",
"number" : "3",
"params" : [
{
"name" : "gain-%"
}
]
},
{
"code" : "pn:dyn_compress_medium",
"count" : 1,
"display" : "field",
"name" : "dyn_compress_medium",
"number" : "4",
"params" : [
{
"name" : "gain-%"
}
]
},
{
"code" : "pn:dyn_compress_soft",
"count" : 1,
"display" : "field",
"name" : "dyn_compress_soft",
"number" : "5",
"params" : [
{
"name" : "gain-%"
}
]
},
{
"code" : "pn:dyn_compress_supersoft",
"count" : 1,
"display" : "field",
"name" : "dyn_compress_supersoft",
"number" : "6",
"params" : [
{
"name" : "gain-%"
}
]
},
{
"code" : "pn:eq_template",
"count" : 10,
"display" : "field",
"name" : "eq_template",
"number" : "7",
"params" : [
{
"name" : "10hz"
},
{
"name" : "40hz"
},
{
"name" : "100hz"
},
{
"name" : "220hz"
},
{
"name" : "460hz"
},
{
"name" : "940hz"
},
{
"name" : "1900hz"
},
{
"name" : "3800hz"
},
{
"name" : "7620hz"
},
{
"name" : "15300hz"
}
]
},
{
"code" : "pn:eq_template2",
"count" : 2,
"display" : "field",
"name" : "eq_template2",
"number" : "8",
"params" : [
{
"name" : "1000hz"
},
{
"name" : "4000hz"
}
]
},
{
"code" : "pn:f_bandpass",
"count" : 2,
"display" : "field",
"name" : "f_bandpass",
"number" : "9",
"params" : [
{
"name" : "freq"
},
{
"name" : "width"
}
]
},
{
"code" : "pn:f_filtertest",
"count" : 2,
"display" : "field",
"name" : "f_filtertest",
"number" : "10",
"params" : [
{
"name" : "freq1"
},
{
"name" : "freq2"
}
]
},
{
"code" : "pn:f_high_and_low",
"count" : 0,
"display" : "field",
"name" : "f_high_and_low",
"number" : "11",
"params" : []
},
{
"code" : "pn:f_highpass",
"count" : 0,
"display" : "field",
"name" : "f_highpass",
"number" : "12",
"params" : []
},
{
"code" : "pn:f_inverse_comb",
"count" : 0,
"display" : "field",
"name" : "f_inverse_comb",
"number" : "13",
"params" : []
},
{
"code" : "pn:f_lowp_sine",
"count" : 0,
"display" : "field",
"name" : "f_lowp_sine",
"number" : "14",
"params" : []
},
{
"code" : "pn:f_lowp_sine2",
"count" : 0,
"display" : "field",
"name" : "f_lowp_sine2",
"number" : "15",
"params" : []
},
{
"code" : "pn:f_lowpass",
"count" : 1,
"display" : "field",
"name" : "f_lowpass",
"number" : "16",
"params" : [
{
"name" : "freq_hz"
}
]
},
{
"code" : "pn:f_rejectband",
"count" : 0,
"display" : "field",
"name" : "f_rejectband",
"number" : "17",
"params" : []
},
{
"code" : "pn:f_res_bandpass",
"count" : 2,
"display" : "field",
"name" : "f_res_bandpass",
"number" : "18",
"params" : [
{
"name" : "freq"
},
{
"name" : "width"
}
]
},
{
"code" : "pn:f_res_lowpass",
"count" : 1,
"display" : "field",
"name" : "f_res_lowpass",
"number" : "19",
"params" : [
{
"name" : "arg-1"
}
]
},
{
"code" : "pn:f_resonator",
"count" : 0,
"display" : "field",
"name" : "f_resonator",
"number" : "20",
"params" : []
},
{
"code" : "pn:f_two_filters",
"count" : 2,
"display" : "field",
"name" : "f_two_filters",
"number" : "21",
"params" : [
{
"name" : "lowgain"
},
{
"name" : "highgain"
}
]
},
{
"code" : "pn:f_two_filters_pareq",
"count" : 4,
"display" : "field",
"name" : "f_two_filters_pareq",
"number" : "22",
"params" : [
{
"name" : "lowfreq"
},
{
"name" : "lowgain"
},
{
"name" : "highfreq"
},
{
"name" : "highgain"
}
]
},
{
"code" : "pn:gate_crop",
"count" : 0,
"display" : "field",
"name" : "gate_crop",
"number" : "23",
"params" : []
},
{
"code" : "pn:gate_noisegate_1",
"count" : 0,
"display" : "field",
"name" : "gate_noisegate_1",
"number" : "24",
"params" : []
},
{
"code" : "pn:gate_noisegate_delanalog",
"count" : 0,
"display" : "field",
"name" : "gate_noisegate_delanalog",
"number" : "25",
"params" : []
},
{
"code" : "pn:gate_threshold",
"count" : 0,
"display" : "field",
"name" : "gate_threshold",
"number" : "26",
"params" : []
},
{
"code" : "pn:lad_hermes",
"count" : 4,
"display" : "field",
"name" : "lad_hermes",
"number" : "27",
"params" : [
{
"name" : "p1"
},
{
"name" : "p2"
},
{
"name" : "p3"
},
{
"name" : "p4"
}
]
},
{
"code" : "pn:lad_metronome",
"count" : 1,
"display" : "field",
"name" : "lad_metronome",
"number" : "28",
"params" : [
{
"name" : "bpm"
}
]
},
{
"code" : "pn:lad_oscillator_stack",
"count" : 5,
"display" : "field",
"name" : "lad_oscillator_stack",
"number" : "29",
"params" : [
{
"name" : "freq"
},
{
"name" : "osctype1"
},
{
"name" : "osctype2"
},
{
"name" : "gain1"
},
{
"name" : "gain2"
}
]
},
{
"code" : "pn:lad_oscillator_test",
"count" : 2,
"display" : "field",
"name" : "lad_oscillator_test",
"number" : "30",
"params" : [
{
"name" : "freq"
},
{
"name" : "gain1"
}
]
},
{
"code" : "pn:lad_sc4",
"count" : 2,
"display" : "field",
"name" : "lad_sc4",
"number" : "31",
"params" : [
{
"name" : "output-amplitude-dB"
},
{
"name" : "output-gain-reduction-dB"
}
]
},
{
"code" : "pn:lad_sc4_rg",
"count" : 4,
"display" : "field",
"name" : "lad_sc4_rg",
"number" : "32",
"params" : [
{
"name" : "ratio"
},
{
"name" : "gain-dB"
},
{
"name" : "output-amplitude-dB"
},
{
"name" : "output-gain-reduction-dB"
}
]
},
{
"code" : "pn:metronome",
"count" : "1",
"display" : "scale",
"name" : "Metronome",
"params" : [
{
"begin" : "30",
"default" : "120",
"end" : "300",
"name" : "BPM",
"resolution" : "1"
}
]
},
{
"code" : "pn:time_chorus1",
"count" : 0,
"display" : "field",
"name" : "time_chorus1",
"number" : "34",
"params" : []
},
{
"code" : "pn:time_delay1",
"count" : 0,
"display" : "field",
"name" : "time_delay1",
"number" : "35",
"params" : []
},
{
"code" : "pn:time_delay2",
"count" : 0,
"display" : "field",
"name" : "time_delay2",
"number" : "36",
"params" : []
},
{
"code" : "pn:time_flanger1",
"count" : 0,
"display" : "field",
"name" : "time_flanger1",
"number" : "37",
"params" : []
},
{
"code" : "pn:time_phaser1",
"count" : 0,
"display" : "field",
"name" : "time_phaser1",
"number" : "38",
"params" : []
},
{
"code" : "pn:time_reverb1",
"count" : 0,
"display" : "field",
"name" : "time_reverb1",
"number" : "39",
"params" : []
},
{
"code" : "pn:time_reverb2",
"count" : 0,
"display" : "field",
"name" : "time_reverb2",
"number" : "40",
"params" : []
},
{
"code" : "pn:time_reverb3",
"count" : 0,
"display" : "field",
"name" : "time_reverb3",
"number" : "41",
"params" : []
},
{
"code" : "pn:time_reverb4",
"count" : 0,
"display" : "field",
"name" : "time_reverb4",
"number" : "42",
"params" : []
},
{
"code" : "pn:time_wicked_dub",
"count" : 0,
"display" : "field",
"name" : "time_wicked_dub",
"number" : "43",
"params" : []
},
{
"code" : "pn:var_aw",
"count" : 1,
"display" : "field",
"name" : "var_aw",
"number" : "44",
"params" : [
{
"name" : "speed"
}
]
},
{
"code" : "pn:var_aw_custom",
"count" : 3,
"display" : "field",
"name" : "var_aw_custom",
"number" : "45",
"params" : [
{
"name" : "low"
},
{
"name" : "high"
},
{
"name" : "speed"
}
]
},
{
"code" : "pn:var_aw_ksv",
"count" : 0,
"display" : "field",
"name" : "var_aw_ksv",
"number" : "46",
"params" : []
},
{
"code" : "pn:var_aw_tri",
"count" : 1,
"display" : "field",
"name" : "var_aw_tri",
"number" : "47",
"params" : [
{
"name" : "speed"
}
]
},
{
"code" : "pn:var_aw_tri_custom",
"count" : 1,
"display" : "field",
"name" : "var_aw_tri_custom",
"number" : "48",
"params" : [
{
"name" : "speed"
}
]
},
{
"code" : "pn:var_chipmunk",
"count" : 0,
"display" : "field",
"name" : "var_chipmunk",
"number" : "49",
"params" : []
},
{
"code" : "pn:var_dali",
"count" : 0,
"display" : "field",
"name" : "var_dali",
"number" : "50",
"params" : []
},
{
"code" : "pn:var_molten_tape",
"count" : 0,
"display" : "field",
"name" : "var_molten_tape",
"number" : "51",
"params" : []
},
{
"code" : "pn:var_paralmadness",
"count" : 3,
"display" : "field",
"name" : "var_paralmadness",
"number" : "52",
"params" : [
{
"name" : "freq1"
},
{
"name" : "freq2"
},
{
"name" : "freq3"
}
]
},
{
"code" : "pn:var_parchip",
"count" : 2,
"display" : "field",
"name" : "var_parchip",
"number" : "53",
"params" : [
{
"name" : "pitch"
},
{
"name" : "modfreq"
}
]
},
{
"code" : "pn:var_stretched_tape",
"count" : 0,
"display" : "field",
"name" : "var_stretched_tape",
"number" : "54",
"params" : []
},
{
"code" : "pn:var_sweeping_pan",
"count" : 1,
"display" : "field",
"name" : "var_sweeping_pan",
"number" : "55",
"params" : [
{
"name" : "speed_hz"
}
]
},
{
"code" : "pn:var_switching_pan",
"count" : 1,
"display" : "field",
"name" : "var_switching_pan",
"number" : "56",
"params" : [
{
"name" : "speed_hz"
}
]
},
{
"code" : "kf",
"count" : 6,
"display" : "field",
"name" : "Generic oscillator (preset)",
"number" : "1",
"params" : [
{
"name" : "param-id"
},
{
"name" : "range-low"
},
{
"name" : "range-high"
},
{
"name" : "freq"
},
{
"name" : "mode"
},
{
"name" : "preset-number"
}
]
},
{
"code" : "kog",
"count" : 8,
"display" : "field",
"name" : "Generic oscillator",
"number" : "2",
"params" : [
{
"name" : "param-id"
},
{
"name" : "range-low"
},
{
"name" : "range-high"
},
{
"name" : "freq"
},
{
"name" : "mode"
},
{
"name" : "pcount"
},
{
"name" : "start_val"
},
{
"name" : "end_val"
}
]
},
{
"code" : "kl",
"count" : 4,
"display" : "field",
"name" : "Linear envelope",
"number" : "3",
"params" : [
{
"name" : "param-id"
},
{
"name" : "range-low"
},
{
"name" : "range-high"
},
{
"name" : "length-sec"
}
]
},
{
"code" : "kl2",
"count" : 5,
"display" : "field",
"name" : "Two-stage linear envelope",
"number" : "4",
"params" : [
{
"name" : "param-id"
},
{
"name" : "range-low"
},
{
"name" : "range-high"
},
{
"name" : "1st-stage-sec"
},
{
"name" : "2nd-stage-sec"
}
]
},
{
"code" : "klg",
"count" : 4,
"display" : "field",
"name" : "Generic linear envelope",
"number" : "5",
"params" : [
{
"name" : "param-id"
},
{
"name" : "range-low"
},
{
"name" : "range-high"
},
{
"name" : "point_count"
}
]
},
{
"code" : "km",
"count" : 5,
"display" : "field",
"name" : "MIDI-Controller",
"number" : "6",
"params" : [
{
"name" : "param-id"
},
{
"name" : "range-low"
},
{
"name" : "range-high"
},
{
"name" : "controller"
},
{
"name" : "channel"
}
]
},
{
"code" : "kos",
"count" : 5,
"display" : "field",
"name" : "Sine oscillator",
"number" : "7",
"params" : [
{
"name" : "param-id"
},
{
"name" : "range-low"
},
{
"name" : "range-high"
},
{
"name" : "freq"
},
{
"name" : "phase-offset"
}
]
},
{
"code" : "ksv",
"count" : 5,
"display" : "field",
"name" : "Volume analyze controller",
"number" : "8",
"params" : [
{
"name" : "param-id"
},
{
"name" : "range-low"
},
{
"name" : "range-high"
},
{
"name" : "stamp-id"
},
{
"name" : "rms-toggle"
}
]
},
{
"code" : "elv2:http://gareus.org/oss/lv2/b_overdrive",
"count" : 7,
"display" : "field",
"name" : "B Organ Overdrive",
"number" : "1",
"params" : [
{
"name" : "Bias"
},
{
"name" : "Feedback"
},
{
"name" : "SagToBias"
},
{
"name" : "Postdiff feedback"
},
{
"name" : "Global feedback"
},
{
"name" : "Input Gain"
},
{
"name" : "Output Gain"
}
]
},
{
"code" : "elv2:http://gareus.org/oss/lv2/b_reverb",
"count" : 2,
"display" : "field",
"name" : "B Organ Reverb",
"number" : "2",
"params" : [
{
"name" : "Dry/Wet"
},
{
"name" : "Input Gain"
}
]
},
{
"code" : "elv2:http://gareus.org/oss/lv2/b_whirl#extended",
"count" : 26,
"display" : "field",
"name" : "B Organ Whirl Speaker Extended Version",
"number" : "3",
"params" : [
{
"name" : "Motors (horn, drum speed: off/slow/fast)"
},
{
"name" : "Horn Level [dB]"
},
{
"name" : "Drum Level [dB]"
},
{
"name" : "Drum Stereo Width"
},
{
"name" : "Horn Speed Slow [rpm]"
},
{
"name" : "Horn Speed Fast [rpm]"
},
{
"name" : "Horn Acceleration [s]"
},
{
"name" : "Horn Deceleration [s]"
},
{
"name" : "Horn Brake"
},
{
"name" : "Horn Filter-1 Type:"
},
{
"name" : "Horn Filter-1 Frequency [Hz]"
},
{
"name" : "Horn Filter-1 Quality"
},
{
"name" : "Horn Filter-1 Gain (shelf) [dB]"
},
{
"name" : "Horn Filter-2 Type:"
},
{
"name" : "Horn Filter-2 Frequency [Hz]"
},
{
"name" : "Horn Filter-2 Quality"
},
{
"name" : "Horn Filter-2 Gain (shelf) [dB]"
},
{
"name" : "Drum Speed Slow [rpm]"
},
{
"name" : "Drum Speed Fast [rpm]"
},
{
"name" : "Drum Acceleration [s]"
},
{
"name" : "Drum Deceleration [s]"
},
{
"name" : "Drum Brake Position"
},
{
"name" : "Drum Filter Type:"
},
{
"name" : "Drum Filter Frequency [Hz]"
},
{
"name" : "Drum Filter Quality"
},
{
"name" : "Drum Filter Gain (shelf) [dB]"
}
]
},
{
"code" : "elv2:http://gareus.org/oss/lv2/b_whirl#simple",
"count" : 4,
"display" : "field",
"name" : "B Organ Whirl Speaker",
"number" : "4",
"params" : [
{
"name" : "Motors (horn, drum speed: off/slow/fast)"
},
{
"name" : "Horn Level [dB]"
},
{
"name" : "Drum Level [dB]"
},
{
"name" : "Drum Stereo Width"
}
]
},
{
"code" : "elv2:http://hyperglitch.com/dev/VocProc",
"count" : 21,
"display" : "field",
"name" : "VocProc",
"number" : "5",
"params" : [
{
"name" : "Pitch Factor"
},
{
"name" : "Robotize/Whisperize"
},
{
"name" : "formant correction/vocoder"
},
{
"name" : "0 - formant correction, 1 - vocoder"
},
{
"name" : "Automatic pitch correction"
},
{
"name" : "Threshold"
},
{
"name" : "Attack"
},
{
"name" : "Transpose"
},
{
"name" : "C"
},
{
"name" : "C#"
},
{
"name" : "D"
},
{
"name" : "D#"
},
{
"name" : "E"
},
{
"name" : "F"
},
{
"name" : "F#"
},
{
"name" : "G"
},
{
"name" : "G#"
},
{
"name" : "A"
},
{
"name" : "A#"
},
{
"name" : "B"
},
{
"name" : "Offset from tone"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/alaw",
"count" : 0,
"display" : "field",
"name" : "A-Law Compressor",
"number" : "6",
"params" : []
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/alias",
"count" : 1,
"display" : "field",
"name" : "Aliasing",
"number" : "7",
"params" : [
{
"name" : "Aliasing level"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/allpass_c",
"count" : 3,
"display" : "field",
"name" : "Allpass delay line, cubic spline interpolation",
"number" : "8",
"params" : [
{
"name" : "Max Delay (s)"
},
{
"name" : "Delay Time (s)"
},
{
"name" : "Decay Time (s)"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/allpass_l",
"count" : 3,
"display" : "field",
"name" : "Allpass delay line, linear interpolation",
"number" : "9",
"params" : [
{
"name" : "Max Delay (s)"
},
{
"name" : "Delay Time (s)"
},
{
"name" : "Decay Time (s)"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/allpass_n",
"count" : 3,
"display" : "field",
"name" : "Allpass delay line, noninterpolating",
"number" : "10",
"params" : [
{
"name" : "Max Delay (s)"
},
{
"name" : "Delay Time (s)"
},
{
"name" : "Decay Time (s)"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/amPitchshift",
"count" : 3,
"display" : "field",
"name" : "AM pitchshifter",
"number" : "11",
"params" : [
{
"name" : "Pitch shift"
},
{
"name" : "Buffer size"
},
{
"name" : "latency"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/amp",
"count" : 1,
"display" : "field",
"name" : "Simple amplifier",
"number" : "12",
"params" : [
{
"name" : "Amps gain (dB)"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/analogueOsc",
"count" : 4,
"display" : "field",
"name" : "Analogue Oscillator",
"number" : "13",
"params" : [
{
"name" : "Waveform (1=sin, 2=tri, 3=squ, 4=saw)"
},
{
"name" : "Frequency (Hz)"
},
{
"name" : "Warmth"
},
{
"name" : "Instability"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/artificialLatency",
"count" : 2,
"display" : "field",
"name" : "Artificial latency",
"number" : "14",
"params" : [
{
"name" : "Delay (ms)"
},
{
"name" : "latency"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/autoPhaser",
"count" : 5,
"display" : "field",
"name" : "Auto phaser",
"number" : "15",
"params" : [
{
"name" : "Attack time (s)"
},
{
"name" : "Decay time (s)"
},
{
"name" : "Modulation depth"
},
{
"name" : "Feedback"
},
{
"name" : "Spread (octaves)"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/bandpass_a_iir",
"count" : 2,
"display" : "field",
"name" : "Glame Bandpass Analog Filter",
"number" : "16",
"params" : [
{
"name" : "Center Frequency (Hz)"
},
{
"name" : "Bandwidth (Hz)"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/bandpass_iir",
"count" : 3,
"display" : "field",
"name" : "Glame Bandpass Filter",
"number" : "17",
"params" : [
{
"name" : "Center Frequency (Hz)"
},
{
"name" : "Bandwidth (Hz)"
},
{
"name" : "Stages(2 poles per stage)"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/bodeShifter",
"count" : 2,
"display" : "field",
"name" : "Bode frequency shifter",
"number" : "18",
"params" : [
{
"name" : "Frequency shift"
},
{
"name" : "latency"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/bodeShifterCV",
"count" : 4,
"display" : "field",
"name" : "Bode frequency shifter (CV)",
"number" : "19",
"params" : [
{
"name" : "Base shift"
},
{
"name" : "Mix (-1=down, +1=up)"
},
{
"name" : "CV Attenuation"
},
{
"name" : "latency"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/butthigh_iir",
"count" : 2,
"display" : "field",
"name" : "GLAME Butterworth Highpass",
"number" : "20",
"params" : [
{
"name" : "Cutoff Frequency (Hz)"
},
{
"name" : "Resonance"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/buttlow_iir",
"count" : 2,
"display" : "field",
"name" : "GLAME Butterworth Lowpass",
"number" : "21",
"params" : [
{
"name" : "Cutoff Frequency (Hz)"
},
{
"name" : "Resonance"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/bwxover_iir",
"count" : 2,
"display" : "field",
"name" : "Glame Butterworth X-over Filter",
"number" : "22",
"params" : [
{
"name" : "Cutoff Frequency (Hz)"
},
{
"name" : "Resonance"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/chebstortion",
"count" : 1,
"display" : "field",
"name" : "Chebyshev distortion",
"number" : "23",
"params" : [
{
"name" : "Distortion"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/comb",
"count" : 2,
"display" : "field",
"name" : "Comb Filter",
"number" : "24",
"params" : [
{
"name" : "Band separation (Hz)"
},
{
"name" : "Feedback"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/combSplitter",
"count" : 1,
"display" : "field",
"name" : "Comb Splitter",
"number" : "25",
"params" : [
{
"name" : "Band separation (Hz)"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/comb_c",
"count" : 3,
"display" : "field",
"name" : "Comb delay line, cubic spline interpolation",
"number" : "26",
"params" : [
{
"name" : "Max Delay (s)"
},
{
"name" : "Delay Time (s)"
},
{
"name" : "Decay Time (s)"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/comb_l",
"count" : 3,
"display" : "field",
"name" : "Comb delay line, linear interpolation",
"number" : "27",
"params" : [
{
"name" : "Max Delay (s)"
},
{
"name" : "Delay Time (s)"
},
{
"name" : "Decay Time (s)"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/comb_n",
"count" : 3,
"display" : "field",
"name" : "Comb delay line, noninterpolating",
"number" : "28",
"params" : [
{
"name" : "Max Delay (s)"
},
{
"name" : "Delay Time (s)"
},
{
"name" : "Decay Time (s)"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/const",
"count" : 1,
"display" : "field",
"name" : "Constant Signal Generator",
"number" : "29",
"params" : [
{
"name" : "Signal amplitude"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/crossoverDist",
"count" : 2,
"display" : "field",
"name" : "Crossover distortion",
"number" : "30",
"params" : [
{
"name" : "Crossover amplitude"
},
{
"name" : "Smoothing"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/dcRemove",
"count" : 0,
"display" : "field",
"name" : "DC Offset Remover",
"number" : "31",
"params" : []
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/decay",
"count" : 1,
"display" : "field",
"name" : "Exponential signal decay",
"number" : "32",
"params" : [
{
"name" : "Decay Time (s)"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/decimator",
"count" : 2,
"display" : "field",
"name" : "Decimator",
"number" : "33",
"params" : [
{
"name" : "Bit depth"
},
{
"name" : "Sample rate (Hz)"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/declip",
"count" : 0,
"display" : "field",
"name" : "Declipper",
"number" : "34",
"params" : []
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/delay_c",
"count" : 2,
"display" : "field",
"name" : "Simple delay line, cubic spline interpolation",
"number" : "35",
"params" : [
{
"name" : "Max Delay (s)"
},
{
"name" : "Delay Time (s)"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/delay_l",
"count" : 2,
"display" : "field",
"name" : "Simple delay line, linear interpolation",
"number" : "36",
"params" : [
{
"name" : "Max Delay (s)"
},
{
"name" : "Delay Time (s)"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/delay_n",
"count" : 2,
"display" : "field",
"name" : "Simple delay line, noninterpolating",
"number" : "37",
"params" : [
{
"name" : "Max Delay (s)"
},
{
"name" : "Delay Time (s)"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/delayorama",
"count" : 11,
"display" : "field",
"name" : "Delayorama",
"number" : "38",
"params" : [
{
"name" : "Random seed"
},
{
"name" : "Input gain (dB)"
},
{
"name" : "Feedback (%)"
},
{
"name" : "Number of taps"
},
{
"name" : "First delay (s)"
},
{
"name" : "Delay range (s)"
},
{
"name" : "Delay change"
},
{
"name" : "Delay random (%)"
},
{
"name" : "Amplitude change"
},
{
"name" : "Amplitude random (%)"
},
{
"name" : "Dry/wet mix"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/diode",
"count" : 1,
"display" : "field",
"name" : "Diode Processor",
"number" : "39",
"params" : [
{
"name" : "Mode (0 for none, 1 for half wave, 2 for full wave)"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/divider",
"count" : 1,
"display" : "field",
"name" : "Audio Divider (Suboctave Generator)",
"number" : "40",
"params" : [
{
"name" : "Denominator"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/djFlanger",
"count" : 4,
"display" : "field",
"name" : "DJ flanger",
"number" : "41",
"params" : [
{
"name" : "LFO sync"
},
{
"name" : "LFO period (s)"
},
{
"name" : "LFO depth (ms)"
},
{
"name" : "Feedback (%)"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/dj_eq",
"count" : 4,
"display" : "field",
"name" : "DJ EQ",
"number" : "42",
"params" : [
{
"name" : "Lo gain (dB)"
},
{
"name" : "Mid gain (dB)"
},
{
"name" : "Hi gain (dB)"
},
{
"name" : "latency"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/dj_eq_mono",
"count" : 4,
"display" : "field",
"name" : "DJ EQ (mono)",
"number" : "43",
"params" : [
{
"name" : "Lo gain (dB)"
},
{
"name" : "Mid gain (dB)"
},
{
"name" : "Hi gain (dB)"
},
{
"name" : "latency"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/dysonCompress",
"count" : 4,
"display" : "field",
"name" : "Dyson compressor",
"number" : "44",
"params" : [
{
"name" : "Peak limit (dB)"
},
{
"name" : "Release time (s)"
},
{
"name" : "Fast compression ratio"
},
{
"name" : "Compression ratio"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/fadDelay",
"count" : 2,
"display" : "field",
"name" : "Fractionally Addressed Delay Line",
"number" : "45",
"params" : [
{
"name" : "Delay (seconds)"
},
{
"name" : "Feedback (dB)"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/fastLookaheadLimiter",
"count" : 5,
"display" : "field",
"name" : "Fast Lookahead limiter",
"number" : "46",
"params" : [
{
"name" : "Input gain (dB)"
},
{
"name" : "Limit (dB)"
},
{
"name" : "Release time (s)"
},
{
"name" : "Attenuation (dB)"
},
{
"name" : "latency"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/flanger",
"count" : 4,
"display" : "field",
"name" : "Flanger",
"number" : "47",
"params" : [
{
"name" : "Delay base (ms)"
},
{
"name" : "Max slowdown (ms)"
},
{
"name" : "LFO frequency (Hz)"
},
{
"name" : "Feedback"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/fmOsc",
"count" : 1,
"display" : "field",
"name" : "FM Oscillator",
"number" : "48",
"params" : [
{
"name" : "Waveform (1=sin, 2=tri, 3=squ, 4=saw)"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/foldover",
"count" : 2,
"display" : "field",
"name" : "Foldover distortion",
"number" : "49",
"params" : [
{
"name" : "Drive"
},
{
"name" : "Skew"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/fourByFourPole",
"count" : 8,
"display" : "field",
"name" : "4 x 4 pole allpass",
"number" : "50",
"params" : [
{
"name" : "Frequency 1"
},
{
"name" : "Feedback 1"
},
{
"name" : "Frequency 2"
},
{
"name" : "Feedback 2"
},
{
"name" : "Frequency 3"
},
{
"name" : "Feedback 3"
},
{
"name" : "Frequency 4"
},
{
"name" : "Feedback 4"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/foverdrive",
"count" : 1,
"display" : "field",
"name" : "Fast overdrive",
"number" : "51",
"params" : [
{
"name" : "Drive level"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/freqTracker",
"count" : 1,
"display" : "field",
"name" : "Frequency tracker",
"number" : "52",
"params" : [
{
"name" : "Tracking speed"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/gate",
"count" : 10,
"display" : "field",
"name" : "Gate",
"number" : "53",
"params" : [
{
"name" : "LF key filter (Hz)"
},
{
"name" : "HF key filter (Hz)"
},
{
"name" : "Threshold (dB)"
},
{
"name" : "Attack (ms)"
},
{
"name" : "Hold (ms)"
},
{
"name" : "Decay (ms)"
},
{
"name" : "Range (dB)"
},
{
"name" : "Output select (-1 = key listen, 0 = gate, 1 = bypass)"
},
{
"name" : "Key level (dB)"
},
{
"name" : "Gate state"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/giantFlange",
"count" : 7,
"display" : "field",
"name" : "Giant flange",
"number" : "54",
"params" : [
{
"name" : "Double delay"
},
{
"name" : "LFO frequency 1 (Hz)"
},
{
"name" : "Delay 1 range (s)"
},
{
"name" : "LFO frequency 2 (Hz)"
},
{
"name" : "Delay 2 range (s)"
},
{
"name" : "Feedback"
},
{
"name" : "Dry/Wet level"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/gong",
"count" : 27,
"display" : "field",
"name" : "Gong model",
"number" : "55",
"params" : [
{
"name" : "Inner damping"
},
{
"name" : "Outer damping"
},
{
"name" : "Mic position"
},
{
"name" : "Inner size 1"
},
{
"name" : "Inner stiffness 1 +"
},
{
"name" : "Inner stiffness 1 -"
},
{
"name" : "Inner size 2"
},
{
"name" : "Inner stiffness 2 +"
},
{
"name" : "Inner stiffness 2 -"
},
{
"name" : "Inner size 3"
},
{
"name" : "Inner stiffness 3 +"
},
{
"name" : "Inner stiffness 3 -"
},
{
"name" : "Inner size 4"
},
{
"name" : "Inner stiffness 4 +"
},
{
"name" : "Inner stiffness 4 -"
},
{
"name" : "Outer size 1"
},
{
"name" : "Outer stiffness 1 +"
},
{
"name" : "Outer stiffness 1 -"
},
{
"name" : "Outer size 2"
},
{
"name" : "Outer stiffness 2 +"
},
{
"name" : "Outer stiffness 2 -"
},
{
"name" : "Outer size 3"
},
{
"name" : "Outer stiffness 3 +"
},
{
"name" : "Outer stiffness 3 -"
},
{
"name" : "Outer size 4"
},
{
"name" : "Outer stiffness 4 +"
},
{
"name" : "Outer stiffness 4 -"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/gongBeater",
"count" : 3,
"display" : "field",
"name" : "Gong beater",
"number" : "56",
"params" : [
{
"name" : "Impulse gain (dB)"
},
{
"name" : "Strike gain (dB)"
},
{
"name" : "Strike duration (s)"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/gverb",
"count" : 7,
"display" : "field",
"name" : "GVerb",
"number" : "57",
"params" : [
{
"name" : "Roomsize (m)"
},
{
"name" : "Reverb time (s)"
},
{
"name" : "Damping"
},
{
"name" : "Input bandwidth"
},
{
"name" : "Dry signal level (dB)"
},
{
"name" : "Early reflection level (dB)"
},
{
"name" : "Tail level (dB)"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/hardLimiter",
"count" : 3,
"display" : "field",
"name" : "Hard Limiter",
"number" : "58",
"params" : [
{
"name" : "dB limit"
},
{
"name" : "Wet level"
},
{
"name" : "Residue level"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/harmonicGen",
"count" : 10,
"display" : "field",
"name" : "Harmonic generator",
"number" : "59",
"params" : [
{
"name" : "Fundamental magnitude"
},
{
"name" : "2nd harmonic magnitude"
},
{
"name" : "3rd harmonic magnitude"
},
{
"name" : "4th harmonic magnitude"
},
{
"name" : "5th harmonic magnitude"
},
{
"name" : "6th harmonic magnitude"
},
{
"name" : "7th harmonic magnitude"
},
{
"name" : "8th harmonic magnitude"
},
{
"name" : "9th harmonic magnitude"
},
{
"name" : "10th harmonic magnitude"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/hermesFilter",
"count" : 52,
"display" : "field",
"name" : "Hermes Filter",
"number" : "60",
"params" : [
{
"name" : "LFO1 freq (Hz)"
},
{
"name" : "LFO1 wave (0 = sin, 1 = tri, 2 = saw, 3 = squ, 4 = s&h)"
},
{
"name" : "LFO2 freq (Hz)"
},
{
"name" : "LFO2 wave (0 = sin, 1 = tri, 2 = saw, 3 = squ, 4 = s&h)"
},
{
"name" : "Osc1 freq (Hz)"
},
{
"name" : "Osc1 wave (0 = sin, 1 = tri, 2 = saw, 3 = squ, 4 = noise)"
},
{
"name" : "Osc2 freq (Hz)"
},
{
"name" : "Osc2 wave (0 = sin, 1 = tri, 2 = saw, 3 = squ, 4 = noise)"
},
{
"name" : "Ringmod 1 depth (0=none, 1=AM, 2=RM)"
},
{
"name" : "Ringmod 2 depth (0=none, 1=AM, 2=RM)"
},
{
"name" : "Ringmod 3 depth (0=none, 1=AM, 2=RM)"
},
{
"name" : "Osc1 gain (dB)"
},
{
"name" : "RM1 gain (dB)"
},
{
"name" : "Osc2 gain (dB)"
},
{
"name" : "RM2 gain (dB)"
},
{
"name" : "Input gain (dB)"
},
{
"name" : "RM3 gain (dB)"
},
{
"name" : "Xover lower freq"
},
{
"name" : "Xover upper freq"
},
{
"name" : "Dist1 drive"
},
{
"name" : "Dist2 drive"
},
{
"name" : "Dist3 drive"
},
{
"name" : "Filt1 type (0=none, 1=LP, 2=HP, 3=BP, 4=BR, 5=AP)"
},
{
"name" : "Filt1 freq"
},
{
"name" : "Filt1 q"
},
{
"name" : "Filt1 resonance"
},
{
"name" : "Filt1 LFO1 level"
},
{
"name" : "Filt1 LFO2 level"
},
{
"name" : "Filt2 type (0=none, 1=LP, 2=HP, 3=BP, 4=BR, 5=AP)"
},
{
"name" : "Filt2 freq"
},
{
"name" : "Filt2 q"
},
{
"name" : "Filt2 resonance"
},
{
"name" : "Filt2 LFO1 level"
},
{
"name" : "Filt2 LFO2 level"
},
{
"name" : "Filt3 type (0=none, 1=LP, 2=HP, 3=BP, 4=BR, 5=AP)"
},
{
"name" : "Filt3 freq"
},
{
"name" : "Filt3 q"
},
{
"name" : "Filt3 resonance"
},
{
"name" : "Filt3 LFO1 level"
},
{
"name" : "Filt3 LFO2 level"
},
{
"name" : "Delay1 length (s)"
},
{
"name" : "Delay1 feedback"
},
{
"name" : "Delay1 wetness"
},
{
"name" : "Delay2 length (s)"
},
{
"name" : "Delay2 feedback"
},
{
"name" : "Delay2 wetness"
},
{
"name" : "Delay3 length (s)"
},
{
"name" : "Delay3 feedback"
},
{
"name" : "Delay3 wetness"
},
{
"name" : "Band 1 gain (dB)"
},
{
"name" : "Band 2 gain (dB)"
},
{
"name" : "Band 3 gain (dB)"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/highpass_iir",
"count" : 2,
"display" : "field",
"name" : "Glame Highpass Filter",
"number" : "61",
"params" : [
{
"name" : "Cutoff Frequency"
},
{
"name" : "Stages(2 poles per stage)"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/hilbert",
"count" : 1,
"display" : "field",
"name" : "Hilbert transformer",
"number" : "62",
"params" : [
{
"name" : "latency"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/impulse_fc",
"count" : 1,
"display" : "field",
"name" : "Non-bandlimited single-sample impulses",
"number" : "63",
"params" : [
{
"name" : "Frequency (Hz)"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/inv",
"count" : 0,
"display" : "field",
"name" : "Inverter",
"number" : "64",
"params" : []
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/karaoke",
"count" : 1,
"display" : "field",
"name" : "Karaoke",
"number" : "65",
"params" : [
{
"name" : "Vocal volume (dB)"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/lcrDelay",
"count" : 11,
"display" : "field",
"name" : "L/C/R Delay",
"number" : "66",
"params" : [
{
"name" : "L delay (ms)"
},
{
"name" : "L level"
},
{
"name" : "C delay (ms)"
},
{
"name" : "C level"
},
{
"name" : "R delay (ms)"
},
{
"name" : "R level"
},
{
"name" : "Feedback"
},
{
"name" : "High damp (%)"
},
{
"name" : "Low damp (%)"
},
{
"name" : "Spread"
},
{
"name" : "Dry/Wet level"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/lfoPhaser",
"count" : 4,
"display" : "field",
"name" : "LFO Phaser",
"number" : "67",
"params" : [
{
"name" : "LFO rate (Hz)"
},
{
"name" : "LFO depth"
},
{
"name" : "Feedback"
},
{
"name" : "Spread (octaves)"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/lookaheadLimiter",
"count" : 4,
"display" : "field",
"name" : "Lookahead limiter",
"number" : "68",
"params" : [
{
"name" : "Limit (dB)"
},
{
"name" : "Lookahead delay"
},
{
"name" : "Attenuation (dB)"
},
{
"name" : "latency"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/lookaheadLimiterConst",
"count" : 4,
"display" : "field",
"name" : "Lookahead limiter (fixed latency)",
"number" : "69",
"params" : [
{
"name" : "Limit (dB)"
},
{
"name" : "Lookahead time (s)"
},
{
"name" : "Attenuation (dB)"
},
{
"name" : "latency"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/lowpass_iir",
"count" : 2,
"display" : "field",
"name" : "Glame Lowpass Filter",
"number" : "70",
"params" : [
{
"name" : "Cutoff Frequency"
},
{
"name" : "Stages(2 poles per stage)"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/lsFilter",
"count" : 3,
"display" : "field",
"name" : "LS Filter",
"number" : "71",
"params" : [
{
"name" : "Filter type (0=LP, 1=BP, 2=HP)"
},
{
"name" : "Cutoff frequency (Hz)"
},
{
"name" : "Resonance"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/matrixMSSt",
"count" : 1,
"display" : "field",
"name" : "Matrix: MS to Stereo",
"number" : "72",
"params" : [
{
"name" : "Width"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/matrixSpatialiser",
"count" : 1,
"display" : "field",
"name" : "Matrix Spatialiser",
"number" : "73",
"params" : [
{
"name" : "Width"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/matrixStMS",
"count" : 0,
"display" : "field",
"name" : "Matrix: Stereo to MS",
"number" : "74",
"params" : []
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/mbeq",
"count" : 16,
"display" : "field",
"name" : "Multiband EQ",
"number" : "75",
"params" : [
{
"name" : "50Hz gain (low shelving)"
},
{
"name" : "100Hz gain"
},
{
"name" : "156Hz gain"
},
{
"name" : "220Hz gain"
},
{
"name" : "311Hz gain"
},
{
"name" : "440Hz gain"
},
{
"name" : "622Hz gain"
},
{
"name" : "880Hz gain"
},
{
"name" : "1250Hz gain"
},
{
"name" : "1750Hz gain"
},
{
"name" : "2500Hz gain"
},
{
"name" : "3500Hz gain"
},
{
"name" : "5000Hz gain"
},
{
"name" : "10000Hz gain"
},
{
"name" : "20000Hz gain"
},
{
"name" : "latency"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/modDelay",
"count" : 1,
"display" : "field",
"name" : "Modulatable delay",
"number" : "76",
"params" : [
{
"name" : "Base delay (s)"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/multivoiceChorus",
"count" : 6,
"display" : "field",
"name" : "Multivoice Chorus",
"number" : "77",
"params" : [
{
"name" : "Number of voices"
},
{
"name" : "Delay base (ms)"
},
{
"name" : "Voice separation (ms)"
},
{
"name" : "Detune (%)"
},
{
"name" : "LFO frequency (Hz)"
},
{
"name" : "Output attenuation (dB)"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/pitchScaleHQ",
"count" : 2,
"display" : "field",
"name" : "Higher Quality Pitch Scaler",
"number" : "78",
"params" : [
{
"name" : "Pitch co-efficient"
},
{
"name" : "latency"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/plate",
"count" : 3,
"display" : "field",
"name" : "Plate reverb",
"number" : "79",
"params" : [
{
"name" : "Reverb time"
},
{
"name" : "Damping"
},
{
"name" : "Dry/wet mix"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/pointerCastDistortion",
"count" : 2,
"display" : "field",
"name" : "Pointer cast distortion",
"number" : "80",
"params" : [
{
"name" : "Effect cutoff freq (Hz)"
},
{
"name" : "Dry/wet mix"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/rateShifter",
"count" : 1,
"display" : "field",
"name" : "Rate shifter",
"number" : "81",
"params" : [
{
"name" : "Rate"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/retroFlange",
"count" : 2,
"display" : "field",
"name" : "Retro Flanger",
"number" : "82",
"params" : [
{
"name" : "Average stall (ms)"
},
{
"name" : "Flange frequency (Hz)"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/revdelay",
"count" : 5,
"display" : "field",
"name" : "Reverse Delay (5s max)",
"number" : "83",
"params" : [
{
"name" : "Delay Time (s)"
},
{
"name" : "Dry Level (dB)"
},
{
"name" : "Wet Level (dB)"
},
{
"name" : "Feedback"
},
{
"name" : "Crossfade samples"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/ringmod_1i1o1l",
"count" : 6,
"display" : "field",
"name" : "Ringmod with LFO",
"number" : "84",
"params" : [
{
"name" : "Modulation depth (0=none, 1=AM, 2=RM)"
},
{
"name" : "Frequency (Hz)"
},
{
"name" : "Sine level"
},
{
"name" : "Triangle level"
},
{
"name" : "Sawtooth level"
},
{
"name" : "Square level"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/ringmod_2i1o",
"count" : 1,
"display" : "field",
"name" : "Ringmod with two inputs",
"number" : "85",
"params" : [
{
"name" : "Modulation depth (0=none, 1=AM, 2=RM)"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/satanMaximiser",
"count" : 2,
"display" : "field",
"name" : "Barry's Satan Maximiser",
"number" : "86",
"params" : [
{
"name" : "Decay time (samples)"
},
{
"name" : "Knee point (dB)"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/sc1",
"count" : 6,
"display" : "field",
"name" : "SC1",
"number" : "87",
"params" : [
{
"name" : "Attack time (ms)"
},
{
"name" : "Release time (ms)"
},
{
"name" : "Threshold level (dB)"
},
{
"name" : "Ratio (1:n)"
},
{
"name" : "Knee radius (dB)"
},
{
"name" : "Makeup gain (dB)"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/sc2",
"count" : 6,
"display" : "field",
"name" : "SC2",
"number" : "88",
"params" : [
{
"name" : "Attack time (ms)"
},
{
"name" : "Release time (ms)"
},
{
"name" : "Threshold level (dB)"
},
{
"name" : "Ratio (1:n)"
},
{
"name" : "Knee radius (dB)"
},
{
"name" : "Makeup gain (dB)"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/sc3",
"count" : 7,
"display" : "field",
"name" : "SC3",
"number" : "89",
"params" : [
{
"name" : "Attack time (ms)"
},
{
"name" : "Release time (ms)"
},
{
"name" : "Threshold level (dB)"
},
{
"name" : "Ratio (1:n)"
},
{
"name" : "Knee radius (dB)"
},
{
"name" : "Makeup gain (dB)"
},
{
"name" : "Chain balance"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/sc4",
"count" : 9,
"display" : "field",
"name" : "SC4",
"number" : "90",
"params" : [
{
"name" : "RMS/peak"
},
{
"name" : "Attack time (ms)"
},
{
"name" : "Release time (ms)"
},
{
"name" : "Threshold level (dB)"
},
{
"name" : "Ratio (1:n)"
},
{
"name" : "Knee radius (dB)"
},
{
"name" : "Makeup gain (dB)"
},
{
"name" : "Amplitude (dB)"
},
{
"name" : "Gain reduction (dB)"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/se4",
"count" : 9,
"display" : "field",
"name" : "SE4",
"number" : "91",
"params" : [
{
"name" : "RMS/peak"
},
{
"name" : "Attack time (ms)"
},
{
"name" : "Release time (ms)"
},
{
"name" : "Threshold level (dB)"
},
{
"name" : "Ratio (1:n)"
},
{
"name" : "Knee radius (dB)"
},
{
"name" : "Attenuation (dB)"
},
{
"name" : "Amplitude (dB)"
},
{
"name" : "Gain expansion (dB)"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/shaper",
"count" : 1,
"display" : "field",
"name" : "Wave shaper",
"number" : "92",
"params" : [
{
"name" : "Waveshape"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/sifter",
"count" : 1,
"display" : "field",
"name" : "Signal sifter",
"number" : "93",
"params" : [
{
"name" : "Sift size"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/sinCos",
"count" : 2,
"display" : "field",
"name" : "Sine + cosine oscillator",
"number" : "94",
"params" : [
{
"name" : "Base frequency (Hz)"
},
{
"name" : "Pitch offset"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/singlePara",
"count" : 3,
"display" : "field",
"name" : "Single band parametric",
"number" : "95",
"params" : [
{
"name" : "Gain (dB)"
},
{
"name" : "Frequency (Hz)"
},
{
"name" : "Bandwidth (octaves)"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/sinusWavewrapper",
"count" : 1,
"display" : "field",
"name" : "Sinus wavewrapper",
"number" : "96",
"params" : [
{
"name" : "Wrap degree"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/smoothDecimate",
"count" : 2,
"display" : "field",
"name" : "Smooth Decimator",
"number" : "97",
"params" : [
{
"name" : "Resample rate"
},
{
"name" : "Smoothing"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/split",
"count" : 0,
"display" : "field",
"name" : "Mono to Stereo splitter",
"number" : "98",
"params" : []
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/surroundEncoder",
"count" : 0,
"display" : "field",
"name" : "Surround matrix encoder",
"number" : "99",
"params" : []
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/svf",
"count" : 4,
"display" : "field",
"name" : "State Variable Filter",
"number" : "100",
"params" : [
{
"name" : "Filter type (0=none, 1=LP, 2=HP, 3=BP, 4=BR, 5=AP)"
},
{
"name" : "Filter freq"
},
{
"name" : "Filter Q"
},
{
"name" : "Filter resonance"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/tapeDelay",
"count" : 10,
"display" : "field",
"name" : "Tape Delay Simulation",
"number" : "101",
"params" : [
{
"name" : "Tape speed (inches/sec, 1=normal)"
},
{
"name" : "Dry level (dB)"
},
{
"name" : "Tap 1 distance (inches)"
},
{
"name" : "Tap 1 level (dB)"
},
{
"name" : "Tap 2 distance (inches)"
},
{
"name" : "Tap 2 level (dB)"
},
{
"name" : "Tap 3 distance (inches)"
},
{
"name" : "Tap 3 level (dB)"
},
{
"name" : "Tap 4 distance (inches)"
},
{
"name" : "Tap 4 level (dB)"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/transient",
"count" : 2,
"display" : "field",
"name" : "Transient mangler",
"number" : "102",
"params" : [
{
"name" : "Attack speed"
},
{
"name" : "Sustain time"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/triplePara",
"count" : 15,
"display" : "field",
"name" : "Triple band parametric with shelves",
"number" : "103",
"params" : [
{
"name" : "Low-shelving gain (dB)"
},
{
"name" : "Low-shelving frequency (Hz)"
},
{
"name" : "Low-shelving slope"
},
{
"name" : "Band 1 gain (dB)"
},
{
"name" : "Band 1 frequency (Hz)"
},
{
"name" : "Band 1 bandwidth (octaves)"
},
{
"name" : "Band 2 gain (dB)"
},
{
"name" : "Band 2 frequency (Hz)"
},
{
"name" : "Band 2 bandwidth (octaves)"
},
{
"name" : "Band 3 gain (dB)"
},
{
"name" : "Band 3 frequency (Hz)"
},
{
"name" : "Band 3 bandwidth (octaves)"
},
{
"name" : "High-shelving gain (dB)"
},
{
"name" : "High-shelving frequency (Hz)"
},
{
"name" : "High-shelving slope"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/ulaw",
"count" : 0,
"display" : "field",
"name" : "μ-Law Compressor",
"number" : "104",
"params" : []
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/valve",
"count" : 2,
"display" : "field",
"name" : "Valve saturation",
"number" : "105",
"params" : [
{
"name" : "Distortion level"
},
{
"name" : "Distortion character"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/valveRect",
"count" : 2,
"display" : "field",
"name" : "Valve rectifier",
"number" : "106",
"params" : [
{
"name" : "Sag level"
},
{
"name" : "Distortion"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/vynil",
"count" : 5,
"display" : "field",
"name" : "VyNil (Vinyl Effect)",
"number" : "107",
"params" : [
{
"name" : "Year"
},
{
"name" : "RPM"
},
{
"name" : "Surface warping"
},
{
"name" : "Crackle"
},
{
"name" : "Wear"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/waveTerrain",
"count" : 0,
"display" : "field",
"name" : "Wave Terrain Oscillator",
"number" : "108",
"params" : []
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/xfade",
"count" : 1,
"display" : "field",
"name" : "Crossfade",
"number" : "109",
"params" : [
{
"name" : "Crossfade"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/xfade4",
"count" : 1,
"display" : "field",
"name" : "Crossfade (4 outs)",
"number" : "110",
"params" : [
{
"name" : "Crossfade"
}
]
},
{
"code" : "elv2:http://plugin.org.uk/swh-plugins/zm1",
"count" : 0,
"display" : "field",
"name" : "z-1",
"number" : "111",
"params" : []
}
],
"split" : {
"cop" : {
"a" : 1,
"z" : 47
},
"ctrl" : {
"a" : 299,
"z" : 306
},
"ladspa" : {
"a" : 48,
"b" : 95,
"c" : 143,
"d" : 191,
"z" : 242
},
"lv2" : {
"a" : 307,
"z" : 417
},
"preset" : {
"a" : 243,
"b" : 270,
"z" : 298
}
},
"user_help" : [
"LV2 B Organ Overdrive -elv2:http://gareus.org/oss/lv2/b_overdrive, Bias, Feedback, SagToBias, Postdiff feedback, Global feedback, Input Gain, Output Gain",
"LV2 B Organ Reverb -elv2:http://gareus.org/oss/lv2/b_reverb, Dry/Wet, Input Gain",
"LV2 B Organ Whirl Speaker Extended Version -elv2:http://gareus.org/oss/lv2/b_whirl#extended, Motors (horn, drum speed: off/slow/fast), Horn Level [dB], Drum Level [dB], Drum Stereo Width, Horn Speed Slow [rpm], Horn Speed Fast [rpm], Horn Acceleration [s], Horn Deceleration [s], Horn Brake, Horn Filter-1 Type:, Horn Filter-1 Frequency [Hz], Horn Filter-1 Quality, Horn Filter-1 Gain (shelf) [dB], Horn Filter-2 Type:, Horn Filter-2 Frequency [Hz], Horn Filter-2 Quality, Horn Filter-2 Gain (shelf) [dB], Drum Speed Slow [rpm], Drum Speed Fast [rpm], Drum Acceleration [s], Drum Deceleration [s], Drum Brake Position, Drum Filter Type:, Drum Filter Frequency [Hz], Drum Filter Quality, Drum Filter Gain (shelf) [dB]",
"LV2 B Organ Whirl Speaker -elv2:http://gareus.org/oss/lv2/b_whirl#simple, Motors (horn, drum speed: off/slow/fast), Horn Level [dB], Drum Level [dB], Drum Stereo Width",
"LV2 VocProc -elv2:http://hyperglitch.com/dev/VocProc, Pitch Factor, Robotize/Whisperize, formant correction/vocoder, 0 - formant correction, 1 - vocoder, Automatic pitch correction, Threshold, Attack, Transpose, C, C#, D, D#, E, F, F#, G, G#, A, A#, B, Offset from tone",
"LV2 A-Law Compressor -elv2:http://plugin.org.uk/swh-plugins/alaw, ",
"LV2 Aliasing -elv2:http://plugin.org.uk/swh-plugins/alias, Aliasing level",
"LV2 Allpass delay line, cubic spline interpolation -elv2:http://plugin.org.uk/swh-plugins/allpass_c, Max Delay (s), Delay Time (s), Decay Time (s)",
"LV2 Allpass delay line, linear interpolation -elv2:http://plugin.org.uk/swh-plugins/allpass_l, Max Delay (s), Delay Time (s), Decay Time (s)",
"LV2 Allpass delay line, noninterpolating -elv2:http://plugin.org.uk/swh-plugins/allpass_n, Max Delay (s), Delay Time (s), Decay Time (s)",
"LV2 AM pitchshifter -elv2:http://plugin.org.uk/swh-plugins/amPitchshift, Pitch shift, Buffer size, latency",
"LV2 Simple amplifier -elv2:http://plugin.org.uk/swh-plugins/amp, Amps gain (dB)",
"LV2 Analogue Oscillator -elv2:http://plugin.org.uk/swh-plugins/analogueOsc, Waveform (1=sin, 2=tri, 3=squ, 4=saw), Frequency (Hz), Warmth, Instability",
"LV2 Artificial latency -elv2:http://plugin.org.uk/swh-plugins/artificialLatency, Delay (ms), latency",
"LV2 Auto phaser -elv2:http://plugin.org.uk/swh-plugins/autoPhaser, Attack time (s), Decay time (s), Modulation depth, Feedback, Spread (octaves)",
"LV2 Glame Bandpass Analog Filter -elv2:http://plugin.org.uk/swh-plugins/bandpass_a_iir, Center Frequency (Hz), Bandwidth (Hz)",
"LV2 Glame Bandpass Filter -elv2:http://plugin.org.uk/swh-plugins/bandpass_iir, Center Frequency (Hz), Bandwidth (Hz), Stages(2 poles per stage)",
"LV2 Bode frequency shifter -elv2:http://plugin.org.uk/swh-plugins/bodeShifter, Frequency shift, latency",
"LV2 Bode frequency shifter (CV) -elv2:http://plugin.org.uk/swh-plugins/bodeShifterCV, Base shift, Mix (-1=down, +1=up), CV Attenuation, latency",
"LV2 GLAME Butterworth Highpass -elv2:http://plugin.org.uk/swh-plugins/butthigh_iir, Cutoff Frequency (Hz), Resonance",
"LV2 GLAME Butterworth Lowpass -elv2:http://plugin.org.uk/swh-plugins/buttlow_iir, Cutoff Frequency (Hz), Resonance",
"LV2 Glame Butterworth X-over Filter -elv2:http://plugin.org.uk/swh-plugins/bwxover_iir, Cutoff Frequency (Hz), Resonance",
"LV2 Chebyshev distortion -elv2:http://plugin.org.uk/swh-plugins/chebstortion, Distortion",
"LV2 Comb Filter -elv2:http://plugin.org.uk/swh-plugins/comb, Band separation (Hz), Feedback",
"LV2 Comb Splitter -elv2:http://plugin.org.uk/swh-plugins/combSplitter, Band separation (Hz)",
"LV2 Comb delay line, cubic spline interpolation -elv2:http://plugin.org.uk/swh-plugins/comb_c, Max Delay (s), Delay Time (s), Decay Time (s)",
"LV2 Comb delay line, linear interpolation -elv2:http://plugin.org.uk/swh-plugins/comb_l, Max Delay (s), Delay Time (s), Decay Time (s)",
"LV2 Comb delay line, noninterpolating -elv2:http://plugin.org.uk/swh-plugins/comb_n, Max Delay (s), Delay Time (s), Decay Time (s)",
"LV2 Constant Signal Generator -elv2:http://plugin.org.uk/swh-plugins/const, Signal amplitude",
"LV2 Crossover distortion -elv2:http://plugin.org.uk/swh-plugins/crossoverDist, Crossover amplitude, Smoothing",
"LV2 DC Offset Remover -elv2:http://plugin.org.uk/swh-plugins/dcRemove, ",
"LV2 Exponential signal decay -elv2:http://plugin.org.uk/swh-plugins/decay, Decay Time (s)",
"LV2 Decimator -elv2:http://plugin.org.uk/swh-plugins/decimator, Bit depth, Sample rate (Hz)",
"LV2 Declipper -elv2:http://plugin.org.uk/swh-plugins/declip, ",
"LV2 Simple delay line, cubic spline interpolation -elv2:http://plugin.org.uk/swh-plugins/delay_c, Max Delay (s), Delay Time (s)",
"LV2 Simple delay line, linear interpolation -elv2:http://plugin.org.uk/swh-plugins/delay_l, Max Delay (s), Delay Time (s)",
"LV2 Simple delay line, noninterpolating -elv2:http://plugin.org.uk/swh-plugins/delay_n, Max Delay (s), Delay Time (s)",
"LV2 Delayorama -elv2:http://plugin.org.uk/swh-plugins/delayorama, Random seed, Input gain (dB), Feedback (%), Number of taps, First delay (s), Delay range (s), Delay change, Delay random (%), Amplitude change, Amplitude random (%), Dry/wet mix",
"LV2 Diode Processor -elv2:http://plugin.org.uk/swh-plugins/diode, Mode (0 for none, 1 for half wave, 2 for full wave)",
"LV2 Audio Divider (Suboctave Generator) -elv2:http://plugin.org.uk/swh-plugins/divider, Denominator",
"LV2 DJ flanger -elv2:http://plugin.org.uk/swh-plugins/djFlanger, LFO sync, LFO period (s), LFO depth (ms), Feedback (%)",
"LV2 DJ EQ -elv2:http://plugin.org.uk/swh-plugins/dj_eq, Lo gain (dB), Mid gain (dB), Hi gain (dB), latency",
"LV2 DJ EQ (mono) -elv2:http://plugin.org.uk/swh-plugins/dj_eq_mono, Lo gain (dB), Mid gain (dB), Hi gain (dB), latency",
"LV2 Dyson compressor -elv2:http://plugin.org.uk/swh-plugins/dysonCompress, Peak limit (dB), Release time (s), Fast compression ratio, Compression ratio",
"LV2 Fractionally Addressed Delay Line -elv2:http://plugin.org.uk/swh-plugins/fadDelay, Delay (seconds), Feedback (dB)",
"LV2 Fast Lookahead limiter -elv2:http://plugin.org.uk/swh-plugins/fastLookaheadLimiter, Input gain (dB), Limit (dB), Release time (s), Attenuation (dB), latency",
"LV2 Flanger -elv2:http://plugin.org.uk/swh-plugins/flanger, Delay base (ms), Max slowdown (ms), LFO frequency (Hz), Feedback",
"LV2 FM Oscillator -elv2:http://plugin.org.uk/swh-plugins/fmOsc, Waveform (1=sin, 2=tri, 3=squ, 4=saw)",
"LV2 Foldover distortion -elv2:http://plugin.org.uk/swh-plugins/foldover, Drive, Skew",
"LV2 4 x 4 pole allpass -elv2:http://plugin.org.uk/swh-plugins/fourByFourPole, Frequency 1, Feedback 1, Frequency 2, Feedback 2, Frequency 3, Feedback 3, Frequency 4, Feedback 4",
"LV2 Fast overdrive -elv2:http://plugin.org.uk/swh-plugins/foverdrive, Drive level",
"LV2 Frequency tracker -elv2:http://plugin.org.uk/swh-plugins/freqTracker, Tracking speed",
"LV2 Gate -elv2:http://plugin.org.uk/swh-plugins/gate, LF key filter (Hz), HF key filter (Hz), Threshold (dB), Attack (ms), Hold (ms), Decay (ms), Range (dB), Output select (-1 = key listen, 0 = gate, 1 = bypass), Key level (dB), Gate state",
"LV2 Giant flange -elv2:http://plugin.org.uk/swh-plugins/giantFlange, Double delay, LFO frequency 1 (Hz), Delay 1 range (s), LFO frequency 2 (Hz), Delay 2 range (s), Feedback, Dry/Wet level",
"LV2 Gong model -elv2:http://plugin.org.uk/swh-plugins/gong, Inner damping, Outer damping, Mic position, Inner size 1, Inner stiffness 1 +, Inner stiffness 1 -, Inner size 2, Inner stiffness 2 +, Inner stiffness 2 -, Inner size 3, Inner stiffness 3 +, Inner stiffness 3 -, Inner size 4, Inner stiffness 4 +, Inner stiffness 4 -, Outer size 1, Outer stiffness 1 +, Outer stiffness 1 -, Outer size 2, Outer stiffness 2 +, Outer stiffness 2 -, Outer size 3, Outer stiffness 3 +, Outer stiffness 3 -, Outer size 4, Outer stiffness 4 +, Outer stiffness 4 -",
"LV2 Gong beater -elv2:http://plugin.org.uk/swh-plugins/gongBeater, Impulse gain (dB), Strike gain (dB), Strike duration (s)",
"LV2 GVerb -elv2:http://plugin.org.uk/swh-plugins/gverb, Roomsize (m), Reverb time (s), Damping, Input bandwidth, Dry signal level (dB), Early reflection level (dB), Tail level (dB)",
"LV2 Hard Limiter -elv2:http://plugin.org.uk/swh-plugins/hardLimiter, dB limit, Wet level, Residue level",
"LV2 Harmonic generator -elv2:http://plugin.org.uk/swh-plugins/harmonicGen, Fundamental magnitude, 2nd harmonic magnitude, 3rd harmonic magnitude, 4th harmonic magnitude, 5th harmonic magnitude, 6th harmonic magnitude, 7th harmonic magnitude, 8th harmonic magnitude, 9th harmonic magnitude, 10th harmonic magnitude",
"LV2 Hermes Filter -elv2:http://plugin.org.uk/swh-plugins/hermesFilter, LFO1 freq (Hz), LFO1 wave (0 = sin, 1 = tri, 2 = saw, 3 = squ, 4 = s&h), LFO2 freq (Hz), LFO2 wave (0 = sin, 1 = tri, 2 = saw, 3 = squ, 4 = s&h), Osc1 freq (Hz), Osc1 wave (0 = sin, 1 = tri, 2 = saw, 3 = squ, 4 = noise), Osc2 freq (Hz), Osc2 wave (0 = sin, 1 = tri, 2 = saw, 3 = squ, 4 = noise), Ringmod 1 depth (0=none, 1=AM, 2=RM), Ringmod 2 depth (0=none, 1=AM, 2=RM), Ringmod 3 depth (0=none, 1=AM, 2=RM), Osc1 gain (dB), RM1 gain (dB), Osc2 gain (dB), RM2 gain (dB), Input gain (dB), RM3 gain (dB), Xover lower freq, Xover upper freq, Dist1 drive, Dist2 drive, Dist3 drive, Filt1 type (0=none, 1=LP, 2=HP, 3=BP, 4=BR, 5=AP), Filt1 freq, Filt1 q, Filt1 resonance, Filt1 LFO1 level, Filt1 LFO2 level, Filt2 type (0=none, 1=LP, 2=HP, 3=BP, 4=BR, 5=AP), Filt2 freq, Filt2 q, Filt2 resonance, Filt2 LFO1 level, Filt2 LFO2 level, Filt3 type (0=none, 1=LP, 2=HP, 3=BP, 4=BR, 5=AP), Filt3 freq, Filt3 q, Filt3 resonance, Filt3 LFO1 level, Filt3 LFO2 level, Delay1 length (s), Delay1 feedback, Delay1 wetness, Delay2 length (s), Delay2 feedback, Delay2 wetness, Delay3 length (s), Delay3 feedback, Delay3 wetness, Band 1 gain (dB), Band 2 gain (dB), Band 3 gain (dB)",
"LV2 Glame Highpass Filter -elv2:http://plugin.org.uk/swh-plugins/highpass_iir, Cutoff Frequency, Stages(2 poles per stage)",
"LV2 Hilbert transformer -elv2:http://plugin.org.uk/swh-plugins/hilbert, latency",
"LV2 Non-bandlimited single-sample impulses -elv2:http://plugin.org.uk/swh-plugins/impulse_fc, Frequency (Hz)",
"LV2 Inverter -elv2:http://plugin.org.uk/swh-plugins/inv, ",
"LV2 Karaoke -elv2:http://plugin.org.uk/swh-plugins/karaoke, Vocal volume (dB)",
"LV2 L/C/R Delay -elv2:http://plugin.org.uk/swh-plugins/lcrDelay, L delay (ms), L level, C delay (ms), C level, R delay (ms), R level, Feedback, High damp (%), Low damp (%), Spread, Dry/Wet level",
"LV2 LFO Phaser -elv2:http://plugin.org.uk/swh-plugins/lfoPhaser, LFO rate (Hz), LFO depth, Feedback, Spread (octaves)",
"LV2 Lookahead limiter -elv2:http://plugin.org.uk/swh-plugins/lookaheadLimiter, Limit (dB), Lookahead delay, Attenuation (dB), latency",
"LV2 Lookahead limiter (fixed latency) -elv2:http://plugin.org.uk/swh-plugins/lookaheadLimiterConst, Limit (dB), Lookahead time (s), Attenuation (dB), latency",
"LV2 Glame Lowpass Filter -elv2:http://plugin.org.uk/swh-plugins/lowpass_iir, Cutoff Frequency, Stages(2 poles per stage)",
"LV2 LS Filter -elv2:http://plugin.org.uk/swh-plugins/lsFilter, Filter type (0=LP, 1=BP, 2=HP), Cutoff frequency (Hz), Resonance",
"LV2 Matrix: MS to Stereo -elv2:http://plugin.org.uk/swh-plugins/matrixMSSt, Width",
"LV2 Matrix Spatialiser -elv2:http://plugin.org.uk/swh-plugins/matrixSpatialiser, Width",
"LV2 Matrix: Stereo to MS -elv2:http://plugin.org.uk/swh-plugins/matrixStMS, ",
"LV2 Multiband EQ -elv2:http://plugin.org.uk/swh-plugins/mbeq, 50Hz gain (low shelving), 100Hz gain, 156Hz gain, 220Hz gain, 311Hz gain, 440Hz gain, 622Hz gain, 880Hz gain, 1250Hz gain, 1750Hz gain, 2500Hz gain, 3500Hz gain, 5000Hz gain, 10000Hz gain, 20000Hz gain, latency",
"LV2 Modulatable delay -elv2:http://plugin.org.uk/swh-plugins/modDelay, Base delay (s)",
"LV2 Multivoice Chorus -elv2:http://plugin.org.uk/swh-plugins/multivoiceChorus, Number of voices, Delay base (ms), Voice separation (ms), Detune (%), LFO frequency (Hz), Output attenuation (dB)",
"LV2 Higher Quality Pitch Scaler -elv2:http://plugin.org.uk/swh-plugins/pitchScaleHQ, Pitch co-efficient, latency",
"LV2 Plate reverb -elv2:http://plugin.org.uk/swh-plugins/plate, Reverb time, Damping, Dry/wet mix",
"LV2 Pointer cast distortion -elv2:http://plugin.org.uk/swh-plugins/pointerCastDistortion, Effect cutoff freq (Hz), Dry/wet mix",
"LV2 Rate shifter -elv2:http://plugin.org.uk/swh-plugins/rateShifter, Rate",
"LV2 Retro Flanger -elv2:http://plugin.org.uk/swh-plugins/retroFlange, Average stall (ms), Flange frequency (Hz)",
"LV2 Reverse Delay (5s max) -elv2:http://plugin.org.uk/swh-plugins/revdelay, Delay Time (s), Dry Level (dB), Wet Level (dB), Feedback, Crossfade samples",
"LV2 Ringmod with LFO -elv2:http://plugin.org.uk/swh-plugins/ringmod_1i1o1l, Modulation depth (0=none, 1=AM, 2=RM), Frequency (Hz), Sine level, Triangle level, Sawtooth level, Square level",
"LV2 Ringmod with two inputs -elv2:http://plugin.org.uk/swh-plugins/ringmod_2i1o, Modulation depth (0=none, 1=AM, 2=RM)",
"LV2 Barrys Satan Maximiser -elv2:http://plugin.org.uk/swh-plugins/satanMaximiser, Decay time (samples), Knee point (dB)",
"LV2 SC1 -elv2:http://plugin.org.uk/swh-plugins/sc1, Attack time (ms), Release time (ms), Threshold level (dB), Ratio (1:n), Knee radius (dB), Makeup gain (dB)",
"LV2 SC2 -elv2:http://plugin.org.uk/swh-plugins/sc2, Attack time (ms), Release time (ms), Threshold level (dB), Ratio (1:n), Knee radius (dB), Makeup gain (dB)",
"LV2 SC3 -elv2:http://plugin.org.uk/swh-plugins/sc3, Attack time (ms), Release time (ms), Threshold level (dB), Ratio (1:n), Knee radius (dB), Makeup gain (dB), Chain balance",
"LV2 SC4 -elv2:http://plugin.org.uk/swh-plugins/sc4, RMS/peak, Attack time (ms), Release time (ms), Threshold level (dB), Ratio (1:n), Knee radius (dB), Makeup gain (dB), Amplitude (dB), Gain reduction (dB)",
"LV2 SE4 -elv2:http://plugin.org.uk/swh-plugins/se4, RMS/peak, Attack time (ms), Release time (ms), Threshold level (dB), Ratio (1:n), Knee radius (dB), Attenuation (dB), Amplitude (dB), Gain expansion (dB)",
"LV2 Wave shaper -elv2:http://plugin.org.uk/swh-plugins/shaper, Waveshape",
"LV2 Signal sifter -elv2:http://plugin.org.uk/swh-plugins/sifter, Sift size",
"LV2 Sine + cosine oscillator -elv2:http://plugin.org.uk/swh-plugins/sinCos, Base frequency (Hz), Pitch offset",
"LV2 Single band parametric -elv2:http://plugin.org.uk/swh-plugins/singlePara, Gain (dB), Frequency (Hz), Bandwidth (octaves)",
"LV2 Sinus wavewrapper -elv2:http://plugin.org.uk/swh-plugins/sinusWavewrapper, Wrap degree",
"LV2 Smooth Decimator -elv2:http://plugin.org.uk/swh-plugins/smoothDecimate, Resample rate, Smoothing",
"LV2 Mono to Stereo splitter -elv2:http://plugin.org.uk/swh-plugins/split, ",
"LV2 Surround matrix encoder -elv2:http://plugin.org.uk/swh-plugins/surroundEncoder, ",
"LV2 State Variable Filter -elv2:http://plugin.org.uk/swh-plugins/svf, Filter type (0=none, 1=LP, 2=HP, 3=BP, 4=BR, 5=AP), Filter freq, Filter Q, Filter resonance",
"LV2 Tape Delay Simulation -elv2:http://plugin.org.uk/swh-plugins/tapeDelay, Tape speed (inches/sec, 1=normal), Dry level (dB), Tap 1 distance (inches), Tap 1 level (dB), Tap 2 distance (inches), Tap 2 level (dB), Tap 3 distance (inches), Tap 3 level (dB), Tap 4 distance (inches), Tap 4 level (dB)",
"LV2 Transient mangler -elv2:http://plugin.org.uk/swh-plugins/transient, Attack speed, Sustain time",
"LV2 Triple band parametric with shelves -elv2:http://plugin.org.uk/swh-plugins/triplePara, Low-shelving gain (dB), Low-shelving frequency (Hz), Low-shelving slope, Band 1 gain (dB), Band 1 frequency (Hz), Band 1 bandwidth (octaves), Band 2 gain (dB), Band 2 frequency (Hz), Band 2 bandwidth (octaves), Band 3 gain (dB), Band 3 frequency (Hz), Band 3 bandwidth (octaves), High-shelving gain (dB), High-shelving frequency (Hz), High-shelving slope",
"LV2 μ-Law Compressor -elv2:http://plugin.org.uk/swh-plugins/ulaw, ",
"LV2 Valve saturation -elv2:http://plugin.org.uk/swh-plugins/valve, Distortion level, Distortion character",
"LV2 Valve rectifier -elv2:http://plugin.org.uk/swh-plugins/valveRect, Sag level, Distortion",
"LV2 VyNil (Vinyl Effect) -elv2:http://plugin.org.uk/swh-plugins/vynil, Year, RPM, Surface warping, Crackle, Wear",
"LV2 Wave Terrain Oscillator -elv2:http://plugin.org.uk/swh-plugins/waveTerrain, ",
"LV2 Crossfade -elv2:http://plugin.org.uk/swh-plugins/xfade, Crossfade",
"LV2 Crossfade (4 outs) -elv2:http://plugin.org.uk/swh-plugins/xfade4, Crossfade",
"LV2 z-1 -elv2:http://plugin.org.uk/swh-plugins/zm1, ",
"dyn_compress_brutal, -pn:dyn_compress_brutal:gain-%\n",
"dyn_compress_hard, -pn:dyn_compress_hard:gain-%\n",
"dyn_compress_infinite, -pn:dyn_compress_infinite:gain-%\n",
"dyn_compress_medium, -pn:dyn_compress_medium:gain-%\n",
"dyn_compress_soft, -pn:dyn_compress_soft:gain-%\n",
"dyn_compress_supersoft, -pn:dyn_compress_supersoft:gain-%\n",
"eq_template, -pn:eq_template:10hz, 40hz, 100hz, 220hz, 460hz, 940hz, 1900hz, 3800hz, 7620hz, 15300hz\n",
"eq_template2, -pn:eq_template2:1000hz, 4000hz\n",
"f_bandpass, -pn:f_bandpass:freq, width\n",
"f_filtertest, -pn:f_filtertest:freq1, freq2\n",
"f_high_and_low, -pn:f_high_and_low\n",
"f_highpass, -pn:f_highpass\n",
"f_inverse_comb, -pn:f_inverse_comb\n",
"f_lowp_sine, -pn:f_lowp_sine\n",
"f_lowp_sine2, -pn:f_lowp_sine2\n",
"f_lowpass, -pn:f_lowpass:freq_hz\n",
"f_rejectband, -pn:f_rejectband\n",
"f_res_bandpass, -pn:f_res_bandpass:freq, width\n",
"f_res_lowpass, -pn:f_res_lowpass:arg-1\n",
"f_resonator, -pn:f_resonator\n",
"f_two_filters, -pn:f_two_filters:lowgain, highgain\n",
"f_two_filters_pareq, -pn:f_two_filters_pareq:lowfreq, lowgain, highfreq, highgain\n",
"gate_crop, -pn:gate_crop\n",
"gate_noisegate_1, -pn:gate_noisegate_1\n",
"gate_noisegate_delanalog, -pn:gate_noisegate_delanalog\n",
"gate_threshold, -pn:gate_threshold\n",
"lad_hermes, -pn:lad_hermes:p1, p2, p3, p4\n",
"lad_metronome, -pn:lad_metronome:bpm\n",
"lad_oscillator_stack, -pn:lad_oscillator_stack:freq, osctype1, osctype2, gain1, gain2\n",
"lad_oscillator_test, -pn:lad_oscillator_test:freq, gain1\n",
"lad_sc4, -pn:lad_sc4:output-amplitude-dB, output-gain-reduction-dB\n",
"lad_sc4_rg, -pn:lad_sc4_rg:ratio, gain-dB, output-amplitude-dB, output-gain-reduction-dB\n",
"metronome, -pn:metronome:bpm\n",
"time_chorus1, -pn:time_chorus1\n",
"time_delay1, -pn:time_delay1\n",
"time_delay2, -pn:time_delay2\n",
"time_flanger1, -pn:time_flanger1\n",
"time_phaser1, -pn:time_phaser1\n",
"time_reverb1, -pn:time_reverb1\n",
"time_reverb2, -pn:time_reverb2\n",
"time_reverb3, -pn:time_reverb3\n",
"time_reverb4, -pn:time_reverb4\n",
"time_wicked_dub, -pn:time_wicked_dub\n",
"var_aw, -pn:var_aw:speed\n",
"var_aw_custom, -pn:var_aw_custom:low, high, speed\n",
"var_aw_ksv, -pn:var_aw_ksv\n",
"var_aw_tri, -pn:var_aw_tri:speed\n",
"var_aw_tri_custom, -pn:var_aw_tri_custom:speed\n",
"var_chipmunk, -pn:var_chipmunk\n",
"var_dali, -pn:var_dali\n",
"var_molten_tape, -pn:var_molten_tape\n",
"var_paralmadness, -pn:var_paralmadness:freq1, freq2, freq3\n",
"var_parchip, -pn:var_parchip:pitch, modfreq\n",
"var_stretched_tape, -pn:var_stretched_tape\n",
"var_sweeping_pan, -pn:var_sweeping_pan:speed_hz\n",
"var_switching_pan, -pn:var_switching_pan:speed_hz\n",
". Diode Processor -el:diode, Mode (0 for none, 1 for half wave, 2 for full wave)\n",
". White Noise Source -el:noise_white, Amplitude\n",
". TAP Reflector -el:tap_reflector, Fragment Length [ms], Dry Level [dB], Wet Level [dB]\n",
". TAP Pink/Fractal Noise -el:tap_pinknoise, Fractal Dimension, Signal Level [dB], Noise Level [dB]\n",
". AMB order 1, 1 cube decoder -el:Ambisonics-11-cube-decoder, Shelf filt, HF XYZ gain, LF XYZ gain, Shelf freq, Distance\n",
". AMB order 1, 1 hexagon decoder -el:Ambisonics-11-hexagon-decoder, Front spkr, Shelf filt, HF XY gain, LF XY gain, Shelf freq, Distance\n",
". AMB order 1, 1 square decoder -el:Ambisonics-11-square-decoder, Front spkr, Shelf filt, HF XY gain, LF XY gain, Shelf freq, Distance\n",
". AMB order 1, 1 rotator -el:Ambisonics-11-rotator, Angle\n",
". AMB order 1, 1 stereo panner -el:Ambisonics-11-stereo-panner, Elevation, Width, Azimuth\n",
". AMB order 1, 1 mono panner -el:Ambisonics-11-mono-panner, Elevation, Azimuth\n",
". Crossover distortion -el:crossoverDist, Crossover amplitude, Smoothing\n",
". Higher Quality Pitch Scaler -el:pitchScaleHQ, Pitch co-efficient, latency\n",
". UHJ Decoder -el:UHJ-decoder",
". UHJ Encoder -el:UHJ-encoder",
". Virtual stereo microphone -el:Virtualmic, Elevation, Azimuth, Angle, Polar\n",
". Three cardioids to AMB matrix -el:Tricardioid-to-AMB",
". Mag's Notch Filter -el:notch_iir, Center Frequency (Hz), Bandwidth (Hz), Stages(2 poles per stage)\n",
". Signal sifter -el:sifter, Sift size\n",
". Sine + cosine oscillator -el:sinCos, Base frequency (Hz), Pitch offset\n",
". TAP TubeWarmth -el:tap_tubewarmth, Drive, Tape--Tube Blend\n",
". Allpass delay line, cubic spline interpolation -el:allpass_c, Max Delay (s), Delay Time (s), Decay Time (s)\n",
". Allpass delay line, linear interpolation -el:allpass_l, Max Delay (s), Delay Time (s), Decay Time (s)\n",
". Allpass delay line, noninterpolating -el:allpass_n, Max Delay (s), Delay Time (s), Decay Time (s)\n",
". SC2 -el:sc2, Attack time (ms), Release time (ms), Threshold level (dB), Ratio (1:n), Knee radius (dB), Makeup gain (dB)\n",
". Comb Splitter -el:combSplitter, Band separation (Hz)\n",
". Modulatable delay -el:modDelay, Base delay (s)\n",
". Audio Divider (Suboctave Generator) -el:divider, Denominator\n",
". Surround matrix encoder -el:surroundEncoder",
". Chebyshev distortion -el:chebstortion, Distortion\n",
". Bode frequency shifter (CV) -el:bodeShifterCV, Base shift, Mix (-1=down, +1=up), CV Attenuation, latency\n",
". TAP DeEsser -el:tap_deesser, Threshold Level [dB], Frequency [Hz], Sidechain Filter, Monitor, Attenuation [dB]\n",
". Wave shaper -el:shaper, Waveshape\n",
". Tape Delay Simulation -el:tapeDelay, Tape speed (inches/sec, 1=normal), Dry level (dB), Tap 1 distance (inches), Tap 1 level (dB), Tap 2 distance (inches), Tap 2 level (dB), Tap 3 distance (inches), Tap 3 level (dB), Tap 4 distance (inches), Tap 4 level (dB)\n",
". Comb Filter -el:comb, Band separation (Hz), Feedback\n",
". Ringmod with LFO -el:ringmod_1i1o1l, Modulation depth (0=none, 1=AM, 2=RM), Frequency (Hz), Sine level, Triangle level, Sawtooth level, Square level\n",
". Ringmod with two inputs -el:ringmod_2i1o, Modulation depth (0=none, 1=AM, 2=RM)\n",
". Simple High Pass Filter -el:hpf, Cutoff Frequency (Hz)\n",
". Simple Low Pass Filter -el:lpf, Cutoff Frequency (Hz)\n",
". TAP Dynamics (St) -el:tap_dynamics_st, Attack [ms], Release [ms], Offset Gain [dB], Makeup Gain [dB], Envelope Volume (L) [dB], Envelope Volume (R) [dB], Gain Adjustment (L) [dB], Gain Adjustment (R) [dB], Stereo Mode, Function\n",
". Crossfade (4 outs) -el:xfade4, Crossfade\n",
". Crossfade -el:xfade, Crossfade\n",
". TAP Dynamics (M) -el:tap_dynamics_m, Attack [ms], Release [ms], Offset Gain [dB], Makeup Gain [dB], Envelope Volume [dB], Gain Adjustment [dB], Function\n",
". Triple band parametric with shelves -el:triplePara, Low-shelving gain (dB), Low-shelving frequency (Hz), Low-shelving slope, Band 1 gain (dB), Band 1 frequency (Hz), Band 1 bandwidth (octaves), Band 2 gain (dB), Band 2 frequency (Hz), Band 2 bandwidth (octaves), Band 3 gain (dB), Band 3 frequency (Hz), Band 3 bandwidth (octaves), High-shelving gain (dB), High-shelving frequency (Hz), High-shelving slope\n",
". Plate reverb -el:plate, Reverb time, Damping, Dry/wet mix\n",
". Mono to Stereo splitter -el:split",
". TAP Reverberator -el:tap_reverb, Decay [ms], Dry Level [dB], Wet Level [dB], Comb Filters, Allpass Filters, Bandpass Filter, Enhanced Stereo, Reverb Type\n",
". Flanger -el:flanger, Delay base (ms), Max slowdown (ms), LFO frequency (Hz), Feedback\n",
". TAP AutoPanner -el:tap_autopan, Frequency [Hz], Depth [%], Gain [dB]\n",
". zita-reverb-amb -el:zita-reverb-amb, Delay, Xover, RT-low, RT-mid, Damping, F1-freq, F1-gain, F2-freq, F2-gain, XYZ gain\n",
". zita-reverb -el:zita-reverb, Delay, Xover, RT-low, RT-mid, Damping, F1-freq, F1-gain, F2-freq, F2-gain, Output mix\n",
". Stereo reverb -el:G2reverb, Room size, Reverb time, Input BW, Damping, Dry sound, Reflections, Reverb tail\n",
". Pitch Scaler -el:pitchScale, Pitch co-efficient, latency\n",
". Glame Highpass Filter -el:highpass_iir, Cutoff Frequency, Stages(2 poles per stage)\n",
". Impulse convolver -el:imp, Impulse ID, High latency mode, Gain (dB), latency\n",
". :: Invada :: ER Reverb - Sum L+R In -el:invada_sum_reverbER_module_0_1, Room Length, Room Width, Room Height, Source (L/R), Source (F/B), Listener (L/R), Listener (F/B), HPF (Hz), Warmth, Diffusion\n",
". :: Invada :: ER Reverb - Mono In -el:invada_mono_reverbER_module_0_1, Room Length, Room Width, Room Height, Source (L/R), Source (F/B), Listener (L/R), Listener (F/B), HPF (Hz), Warmth, Diffusion\n",
". Matrix Spatialiser -el:matrixSpatialiser, Width\n",
". LS Filter -el:lsFilter, Filter type (0=LP, 1=BP, 2=HP), Cutoff frequency (Hz), Resonance\n",
". Hard Limiter -el:hardLimiter, dB limit, Wet level, Residue level\n",
". Foldover distortion -el:foldover, Drive, Skew\n",
". SC1 -el:sc1, Attack time (ms), Release time (ms), Threshold level (dB), Ratio (1:n), Knee radius (dB), Makeup gain (dB)\n",
". AMB order 3, 3 rotator -el:Ambisonics-33-rotator, Angle\n",
". AMB order 3, 3 panner -el:Ambisonics-33-panner, Elevation, Azimuth\n",
". AMB order 3, 1 rotator -el:Ambisonics-31-rotator, Angle\n",
". AMB order 3, 1 panner -el:Ambisonics-31-panner, Elevation, Azimuth\n",
". DC Offset Remover -el:dcRemove",
". Karaoke -el:karaoke, Vocal volume (dB)\n",
". Reverse Delay (5s max) -el:revdelay, Delay Time (s), Dry Level (dB), Wet Level (dB), Feedback, Crossfade samples\n",
". GSM simulator -el:gsm, Dry/wet mix, Number of passes, Error rate (bits/block), latency\n",
". TAP Equalizer/BW -el:tap_equalizer_bw, Band 1 Gain [dB], Band 2 Gain [dB], Band 3 Gain [dB], Band 4 Gain [dB], Band 5 Gain [dB], Band 6 Gain [dB], Band 7 Gain [dB], Band 8 Gain [dB], Band 1 Freq [Hz], Band 2 Freq [Hz], Band 3 Freq [Hz], Band 4 Freq [Hz], Band 5 Freq [Hz], Band 6 Freq [Hz], Band 7 Freq [Hz], Band 8 Freq [Hz], Band 1 Bandwidth [octaves], Band 2 Bandwidth [octaves], Band 3 Bandwidth [octaves], Band 4 Bandwidth [octaves], Band 5 Bandwidth [octaves], Band 6 Bandwidth [octaves], Band 7 Bandwidth [octaves], Band 8 Bandwidth [octaves]\n",
". Pointer cast distortion -el:pointerCastDistortion, Effect cutoff freq (Hz), Dry/wet mix\n",
". Frequency tracker -el:freqTracker, Tracking speed\n",
". GVerb -el:gverb, Roomsize (m), Reverb time (s), Damping, Input bandwidth, Dry signal level (dB), Early reflection level (dB), Tail level (dB)\n",
". Aliasing -el:alias, Aliasing level\n",
". Sinus wavewrapper -el:sinusWavewrapper, Wrap degree\n",
". Dyson compressor -el:dysonCompress, Peak limit (dB), Release time (s), Fast compression ratio, Compression ratio\n",
". DJ flanger -el:djFlanger, LFO sync, LFO period (s), LFO depth (ms), Feedback (%)\n",
". DJ EQ -el:dj_eq, Lo gain (dB), Mid gain (dB), Hi gain (dB), latency\n",
". DJ EQ (mono) -el:dj_eq_mono, Lo gain (dB), Mid gain (dB), Hi gain (dB), latency\n",
". Step Demuxer -el:stepMuxer, Crossfade time (in ms)\n",
". Gate -el:gate, LF key filter (Hz), HF key filter (Hz), Threshold (dB), Attack (ms), Hold (ms), Decay (ms), Range (dB), Output select (-1 = key listen, 0 = gate, 1 = bypass)\n",
". :: Invada :: Compressor - Stereo -el:invada_stereo_compressor_module_0_1, Tight / Sloppy, Attack (ms), Release (ms), Threshold (dB), Ratio, Gain (dB), Soft Clip, Gain Reduction\n",
". :: Invada :: Compressor - Mono -el:invada_mono_compressor_module_0_1, Tight / Sloppy, Attack (ms), Release (ms), Threshold (dB), Ratio, Gain (dB), Soft Clip, Gain Reduction\n",
". Gong model -el:gong, Inner damping, Outer damping, Mic position, Inner size 1, Inner stiffness 1 +, Inner stiffness 1 -, Inner size 2, Inner stiffness 2 +, Inner stiffness 2 -, Inner size 3, Inner stiffness 3 +, Inner stiffness 3 -, Inner size 4, Inner stiffness 4 +, Inner stiffness 4 -, Outer size 1, Outer stiffness 1 +, Outer stiffness 1 -, Outer size 2, Outer stiffness 2 +, Outer stiffness 2 -, Outer size 3, Outer stiffness 3 +, Outer stiffness 3 -, Outer size 4, Outer stiffness 4 +, Outer stiffness 4 -\n",
". TAP Fractal Doubler -el:tap_doubler, Time Tracking, Pitch Tracking, Dry Level [dB], Dry Left Position, Dry Right Position, Wet Level [dB], Wet Left Position, Wet Right Position\n",
". Valve rectifier -el:valveRect, Sag level, Distortion\n",
". AM pitchshifter -el:amPitchshift, Pitch shift, Buffer size, latency\n",
". SE4 -el:se4, RMS/peak, Attack time (ms), Release time (ms), Threshold level (dB), Ratio (1:n), Knee radius (dB), Attenuation (dB), Amplitude (dB), Gain expansion (dB)\n",
". Auto phaser -el:autoPhaser, Attack time (s), Decay time (s), Modulation depth, Feedback, Spread (octaves)\n",
". 4 x 4 pole allpass -el:fourByFourPole, Frequency 1, Feedback 1, Frequency 2, Feedback 2, Frequency 3, Feedback 3, Frequency 4, Feedback 4\n",
". LFO Phaser -el:lfoPhaser, LFO rate (Hz), LFO depth, Feedback, Spread (octaves)\n",
". Matrix: Stereo to MS -el:matrixStMS",
". Constant Signal Generator -el:const, Signal amplitude\n",
". Simple amplifier -el:amp, Amps gain (dB)\n",
". :: Invada :: Input Module -el:invada_stereo_input_module_0_1, Phase Reverse (Left), Phase Reverse (Right), Gain (dB), Pan (L-R), Width (M-S), Soft Clip\n",
". Rate shifter -el:rateShifter, Rate\n",
". Simple Delay Line -el:delay_5s, Delay (Seconds), Dry/Wet Balance\n",
". AMB order 2, 2 rotator -el:Ambisonics-22-rotator, Angle\n",
". AMB order 2, 2 panner -el:Ambisonics-22-panner, Elevation, Azimuth\n",
". AMB order 2, 1 rotator -el:Ambisonics-21-rotator, Angle\n",
". AMB order 2, 1 panner -el:Ambisonics-21-panner, Elevation, Azimuth\n",
". Giant flange -el:giantFlange, Double delay, LFO frequency 1 (Hz), Delay 1 range (s), LFO frequency 2 (Hz), Delay 2 range (s), Feedback, Dry/Wet level\n",
". State Variable Filter -el:svf, Filter type (0=none, 1=LP, 2=HP, 3=BP, 4=BR, 5=AP), Filter freq, Filter Q, Filter resonance\n",
". Multiband EQ -el:mbeq, 50Hz gain (low shelving), 100Hz gain, 156Hz gain, 220Hz gain, 311Hz gain, 440Hz gain, 622Hz gain, 880Hz gain, 1250Hz gain, 1750Hz gain, 2500Hz gain, 3500Hz gain, 5000Hz gain, 10000Hz gain, 20000Hz gain, latency\n",
". Decimator -el:decimator, Bit depth, Sample rate (Hz)\n",
". Single band parametric -el:singlePara, Gain (dB), Frequency (Hz), Bandwidth (octaves)\n",
". Barry's Satan Maximiser -el:satanMaximiser, Decay time (samples), Knee point (dB)\n",
". Artificial latency -el:artificialLatency, Delay (ms), latency\n",
". Glame Bandpass Filter -el:bandpass_iir, Center Frequency (Hz), Bandwidth (Hz), Stages(2 poles per stage)\n",
". Declipper -el:declip",
". :: Invada :: Tube - Stereo -el:invada_stereo_tube_module_0_1, Drive (dB), DC Offset, Phase, Wet/Dry Mix (%)\n",
". :: Invada :: Tube - Mono -el:invada_mono_tube_module_0_1, Drive (dB), DC Offset, Phase, Wet/Dry Mix (%)\n",
". Matrix: MS to Stereo -el:matrixMSSt, Width\n",
". TAP Equalizer -el:tap_equalizer, Band 1 Gain [dB], Band 2 Gain [dB], Band 3 Gain [dB], Band 4 Gain [dB], Band 5 Gain [dB], Band 6 Gain [dB], Band 7 Gain [dB], Band 8 Gain [dB], Band 1 Freq [Hz], Band 2 Freq [Hz], Band 3 Freq [Hz], Band 4 Freq [Hz], Band 5 Freq [Hz], Band 6 Freq [Hz], Band 7 Freq [Hz], Band 8 Freq [Hz]\n",
". 4-band parametric filter -el:Parametric1, Filter, Gain, Section 1, Frequency 1, Bandwidth 1, Gain 1, Section 2, Frequency 2, Bandwidth 2, Gain 2, Section 3, Frequency 3, Bandwidth 3, Gain 3, Section 4, Frequency 4, Bandwidth 4, Gain 4\n",
". Harmonic generator -el:harmonicGen, Fundamental magnitude, 2nd harmonic magnitude, 3rd harmonic magnitude, 4th harmonic magnitude, 5th harmonic magnitude, 6th harmonic magnitude, 7th harmonic magnitude, 8th harmonic magnitude, 9th harmonic magnitude, 10th harmonic magnitude\n",
". Retro Flanger -el:retroFlange, Average stall (ms), Flange frequency (Hz)\n",
". VyNil (Vinyl Effect) -el:vynil, Year, RPM, Surface warping, Crackle, Wear\n",
". TAP Chorus/Flanger -el:tap_chorusflanger, Frequency [Hz], L/R Phase Shift [deg], Depth [%], Delay [ms], Contour [Hz], Dry Level [dB], Wet Level [dB]\n",
". Smooth Decimator -el:smoothDecimate, Resample rate, Smoothing\n",
". TAP Stereo Echo -el:tap_stereo_echo, L Delay [ms], L Feedback [%], R/Haas Delay [ms], R/Haas Feedback [%], L Echo Level [dB], R Echo Level [dB], Dry Level [dB], Cross Mode, Haas Effect, Swap Outputs\n",
". Fractionally Addressed Delay Line -el:fadDelay, Delay (seconds), Feedback (dB)\n",
". Wave Terrain Oscillator -el:waveTerrain",
". Transient mangler -el:transient, Attack speed, Sustain time\n",
". C* CEO - Chief Executive Oscillator -el:CEO, ppm, volume, damping\n",
". C* Click - Metronome -el:Click, model, bpm, volume, damping\n",
". C* Fractal - Audio stream from deterministic chaos -el:Fractal, rate, mode, x, y, z, hp, volume\n",
". C* White - Noise generator -el:White, volume\n",
". C* Sin - Sine wave generator -el:Sin, f (Hz), volume\n",
". C* Narrower - Stereo image width reduction -el:Narrower, mode, strength\n",
". C* Wider - Stereo image synthesis -el:Wider, pan, width\n",
". C* Eq4p - 4-band parametric equaliser -el:Eq4p, a.mode, a.f (Hz), a.Q, a.gain (dB), b.mode, b.f (Hz), b.Q, b.gain (dB), c.mode, c.f (Hz), c.Q, c.gain (dB), d.mode, d.f (Hz), d.Q, d.gain (dB)\n",
". C* Eq10X2 - Stereo 10-band equaliser -el:Eq10X2, 31 Hz, 63 Hz, 125 Hz, 250 Hz, 500 Hz, 1 kHz, 2 kHz, 4 kHz, 8 kHz, 16 kHz\n",
". C* Eq10 - 10-band equaliser -el:Eq10, 31 Hz, 63 Hz, 125 Hz, 250 Hz, 500 Hz, 1 kHz, 2 kHz, 4 kHz, 8 kHz, 16 kHz\n",
". C* Scape - Stereo delay with chromatic resonances -el:Scape, bpm, divider, feedback, dry, blend, tune (Hz)\n",
". C* AutoFilter - Modulated filter cascade -el:AutoFilter, over, mode, filter, gain (dB), f (Hz), Q, range, lfo/env, rate\n",
". C* PhaserII - Mono phaser -el:PhaserII, rate, lfo, depth, spread, resonance\n",
". C* ChorusI - Mono chorus/flanger -el:ChorusI, t (ms), width (ms), rate (Hz), blend, feedforward, feedback\n",
". C* SpiceX2 - Not an exciter either -el:SpiceX2, lo.f (Hz), lo.compress, lo.gain, hi.f (Hz), hi.gain\n",
". C* Spice - Not an exciter -el:Spice, lo.f (Hz), lo.compress, lo.gain, hi.f (Hz), hi.gain\n",
". C* Saturate - Various overdrive models, 8x oversampled -el:Saturate, mode, gain (dB), bias\n",
". C* PlateX2 - Versatile plate reverb, stereo inputs -el:PlateX2, bandwidth, tail, damping, blend\n",
". C* Plate - Versatile plate reverb -el:Plate, bandwidth, tail, damping, blend\n",
". C* CabinetIV - Idealised loudspeaker cabinet -el:CabinetIV, model, gain (dB)\n",
". C* AmpVTS - Idealised guitar amplification -el:AmpVTS, over, gain, bright, power, tonestack, bass, mid, treble, attack, squash, lowcut\n",
". C* ToneStack - Classic amplifier tone stack emulation -el:ToneStack, model, bass, mid, treble\n",
". C* CompressX2 - Stereo compressor and saturating limiter -el:CompressX2, measure, mode, threshold, strength, attack, release, gain (dB)\n",
". C* Compress - Compressor and saturating limiter -el:Compress, measure, mode, threshold, strength, attack, release, gain (dB)\n",
". C* NoiseGate - Attenuate hum and noise -el:NoiseGate, open (dB), attack (ms), close (dB), mains (Hz)\n",
". TAP Pitch Shifter -el:tap_pitch, Semitone Shift, Rate Shift [%], Dry Level [dB], Wet Level [dB], latency\n",
". Glame Lowpass Filter -el:lowpass_iir, Cutoff Frequency, Stages(2 poles per stage)\n",
". Nonbandlimited single-sample impulses (Frequency: Control) -el:impulse_fc, Frequency (Hz)\n",
". Fast Lookahead limiter -el:fastLookaheadLimiter, Input gain (dB), Limit (dB), Release time (s), Attenuation (dB), latency\n",
". TAP Vibrato -el:tap_vibrato, Frequency [Hz], Depth [%], Dry Level [dB], Wet Level [dB], latency\n",
". Simple delay line, cubic spline interpolation -el:delay_c, Max Delay (s), Delay Time (s)\n",
". Simple delay line, linear interpolation -el:delay_l, Max Delay (s), Delay Time (s)\n",
". Simple delay line, noninterpolating -el:delay_n, Max Delay (s), Delay Time (s)\n",
". Gong beater -el:gongBeater, Impulse gain (dB), Strike gain (dB), Strike duration (s)\n",
". SC4 mono -el:sc4m, RMS/peak, Attack time (ms), Release time (ms), Threshold level (dB), Ratio (1:n), Knee radius (dB), Makeup gain (dB), Amplitude (dB), Gain reduction (dB)\n",
". FM Oscillator -el:fmOsc, Waveform (1=sin, 2=tri, 3=squ, 4=saw)\n",
". Multivoice Chorus -el:multivoiceChorus, Number of voices, Delay base (ms), Voice separation (ms), Detune (%), LFO frequency (Hz), Output attenuation (dB)\n",
". z-1 -el:zm1",
". TAP Rotary Speaker -el:tap_rotspeak, Rotor Frequency [Hz], Horn Frequency [Hz], Mic Distance [%], Rotor/Horn Mix, latency\n",
". TAP Scaling Limiter -el:tap_limiter, Limit Level [dB], Output Volume [dB], latency\n",
". Sine Oscillator (Freq:control, Amp:control) -el:sine_fcac, Frequency (Hz), Amplitude\n",
". Sine Oscillator (Freq:control, Amp:audio) -el:sine_fcaa, Frequency (Hz)\n",
". Sine Oscillator (Freq:audio, Amp:control) -el:sine_faac, Amplitude\n",
". Sine Oscillator (Freq:audio, Amp:audio) -el:sine_faaa",
". Bode frequency shifter -el:bodeShifter, Frequency shift, latency\n",
". Hermes Filter -el:hermesFilter, LFO1 freq (Hz), LFO1 wave (0 = sin, 1 = tri, 2 = saw, 3 = squ, 4 = s&h), LFO2 freq (Hz), LFO2 wave (0 = sin, 1 = tri, 2 = saw, 3 = squ, 4 = s&h), Osc1 freq (Hz), Osc1 wave (0 = sin, 1 = tri, 2 = saw, 3 = squ, 4 = noise), Osc2 freq (Hz), Osc2 wave (0 = sin, 1 = tri, 2 = saw, 3 = squ, 4 = noise), Ringmod 1 depth (0=none, 1=AM, 2=RM), Ringmod 2 depth (0=none, 1=AM, 2=RM), Ringmod 3 depth (0=none, 1=AM, 2=RM), Osc1 gain (dB), RM1 gain (dB), Osc2 gain (dB), RM2 gain (dB), Input gain (dB), RM3 gain (dB), Xover lower freq, Xover upper freq, Dist1 drive, Dist2 drive, Dist3 drive, Filt1 type (0=none, 1=LP, 2=HP, 3=BP, 4=BR, 5=AP), Filt1 freq, Filt1 q, Filt1 resonance, Filt1 LFO1 level, Filt1 LFO2 level, Filt2 type (0=none, 1=LP, 2=HP, 3=BP, 4=BR, 5=AP), Filt2 freq, Filt2 q, Filt2 resonance, Filt2 LFO1 level, Filt2 LFO2 level, Filt3 type (0=none, 1=LP, 2=HP, 3=BP, 4=BR, 5=AP), Filt3 freq, Filt3 q, Filt3 resonance, Filt3 LFO1 level, Filt3 LFO2 level, Delay1 length (s), Delay1 feedback, Delay1 wetness, Delay2 length (s), Delay2 feedback, Delay2 wetness, Delay3 length (s), Delay3 feedback, Delay3 wetness, Band 1 gain (dB), Band 2 gain (dB), Band 3 gain (dB)\n",
". SC3 -el:sc3, Attack time (ms), Release time (ms), Threshold level (dB), Ratio (1:n), Knee radius (dB), Makeup gain (dB), Chain balance\n",
". Comb delay line, cubic spline interpolation -el:comb_c, Max Delay (s), Delay Time (s), Decay Time (s)\n",
". Comb delay line, linear interpolation -el:comb_l, Max Delay (s), Delay Time (s), Decay Time (s)\n",
". Comb delay line, noninterpolating -el:comb_n, Max Delay (s), Delay Time (s), Decay Time (s)\n",
". Delayorama -el:delayorama, Random seed, Input gain (dB), Feedback (%), Number of taps, First delay (s), Delay range (s), Delay change, Delay random (%), Amplitude change, Amplitude random (%), Dry/wet mix\n",
". Fast overdrive -el:foverdrive, Drive level\n",
". GLAME Butterworth Highpass -el:butthigh_iir, Cutoff Frequency (Hz), Resonance\n",
". GLAME Butterworth Lowpass -el:buttlow_iir, Cutoff Frequency (Hz), Resonance\n",
". Glame Butterworth X-over Filter -el:bwxover_iir, Cutoff Frequency (Hz), Resonance\n",
". Exponential signal decay -el:decay, Decay Time (s)\n",
". TAP Sigmoid Booster -el:tap_sigmoid, Pre Gain [dB], Post Gain [dB]\n",
". L/C/R Delay -el:lcrDelay, L delay (ms), L level, C delay (ms), C level, R delay (ms), R level, Feedback, High damp (%), Low damp (%), Spread, Dry/Wet level\n",
". Stereo Amplifier -el:amp_stereo, Gain\n",
". Mono Amplifier -el:amp_mono, Gain\n",
". SC4 -el:sc4, RMS/peak, Attack time (ms), Release time (ms), Threshold level (dB), Ratio (1:n), Knee radius (dB), Makeup gain (dB), Amplitude (dB), Gain reduction (dB)\n",
". Valve saturation -el:valve, Distortion level, Distortion character\n",
". TAP Tremolo -el:tap_tremolo, Frequency [Hz], Depth [%], Gain [dB]\n",
". Inverter -el:inv",
". Analogue Oscillator -el:analogueOsc, Waveform (1=sin, 2=tri, 3=squ, 4=saw), Frequency (Hz), Warmth, Instability\n",
". :: Invada :: Filter - High Pass Stereo -el:invada_hp_stereo_filter_module_0_1, Frequency (Hz), Gain (dB), Soft Clip\n",
". :: Invada :: Filter - Low Pass Stereo -el:invada_lp_stereo_filter_module_0_1, Frequency (Hz), Gain (dB), Soft Clip\n",
". :: Invada :: Filter - High Pass Mono -el:invada_hp_mono_filter_module_0_1, Frequency (Hz), Gain (dB), Soft Clip\n",
". :: Invada :: Filter - Low Pass Mono -el:invada_lp_mono_filter_module_0_1, Frequency (Hz), Gain (dB), Soft Clip\n",
". Hilbert transformer -el:hilbert, latency\n",
". Glame Bandpass Analog Filter -el:bandpass_a_iir, Center Frequency (Hz), Bandwidth (Hz)\n"
]
}
}
Audio-Nama-1.216/inc/ 0000755 0001750 0001750 00000000000 13544212627 013253 5 ustar jroth jroth Audio-Nama-1.216/inc/Module/ 0000755 0001750 0001750 00000000000 13544212627 014500 5 ustar jroth jroth Audio-Nama-1.216/inc/Module/Install.pm 0000644 0001750 0001750 00000027145 13412473751 016456 0 ustar jroth jroth #line 1
package Module::Install;
# For any maintainers:
# The load order for Module::Install is a bit magic.
# It goes something like this...
#
# IF ( host has Module::Install installed, creating author mode ) {
# 1. Makefile.PL calls "use inc::Module::Install"
# 2. $INC{inc/Module/Install.pm} set to installed version of inc::Module::Install
# 3. The installed version of inc::Module::Install loads
# 4. inc::Module::Install calls "require Module::Install"
# 5. The ./inc/ version of Module::Install loads
# } ELSE {
# 1. Makefile.PL calls "use inc::Module::Install"
# 2. $INC{inc/Module/Install.pm} set to ./inc/ version of Module::Install
# 3. The ./inc/ version of Module::Install loads
# }
use 5.006;
use strict 'vars';
use Cwd ();
use File::Find ();
use File::Path ();
use vars qw{$VERSION $MAIN};
BEGIN {
# All Module::Install core packages now require synchronised versions.
# This will be used to ensure we don't accidentally load old or
# different versions of modules.
# This is not enforced yet, but will be some time in the next few
# releases once we can make sure it won't clash with custom
# Module::Install extensions.
$VERSION = '1.17';
# Storage for the pseudo-singleton
$MAIN = undef;
*inc::Module::Install::VERSION = *VERSION;
@inc::Module::Install::ISA = __PACKAGE__;
}
sub import {
my $class = shift;
my $self = $class->new(@_);
my $who = $self->_caller;
#-------------------------------------------------------------
# all of the following checks should be included in import(),
# to allow "eval 'require Module::Install; 1' to test
# installation of Module::Install. (RT #51267)
#-------------------------------------------------------------
# Whether or not inc::Module::Install is actually loaded, the
# $INC{inc/Module/Install.pm} is what will still get set as long as
# the caller loaded module this in the documented manner.
# If not set, the caller may NOT have loaded the bundled version, and thus
# they may not have a MI version that works with the Makefile.PL. This would
# result in false errors or unexpected behaviour. And we don't want that.
my $file = join( '/', 'inc', split /::/, __PACKAGE__ ) . '.pm';
unless ( $INC{$file} ) { die <<"END_DIE" }
Please invoke ${\__PACKAGE__} with:
use inc::${\__PACKAGE__};
not:
use ${\__PACKAGE__};
END_DIE
# This reportedly fixes a rare Win32 UTC file time issue, but
# as this is a non-cross-platform XS module not in the core,
# we shouldn't really depend on it. See RT #24194 for detail.
# (Also, this module only supports Perl 5.6 and above).
eval "use Win32::UTCFileTime" if $^O eq 'MSWin32' && $] >= 5.006;
# If the script that is loading Module::Install is from the future,
# then make will detect this and cause it to re-run over and over
# again. This is bad. Rather than taking action to touch it (which
# is unreliable on some platforms and requires write permissions)
# for now we should catch this and refuse to run.
if ( -f $0 ) {
my $s = (stat($0))[9];
# If the modification time is only slightly in the future,
# sleep briefly to remove the problem.
my $a = $s - time;
if ( $a > 0 and $a < 5 ) { sleep 5 }
# Too far in the future, throw an error.
my $t = time;
if ( $s > $t ) { die <<"END_DIE" }
Your installer $0 has a modification time in the future ($s > $t).
This is known to create infinite loops in make.
Please correct this, then run $0 again.
END_DIE
}
# Build.PL was formerly supported, but no longer is due to excessive
# difficulty in implementing every single feature twice.
if ( $0 =~ /Build.PL$/i ) { die <<"END_DIE" }
Module::Install no longer supports Build.PL.
It was impossible to maintain duel backends, and has been deprecated.
Please remove all Build.PL files and only use the Makefile.PL installer.
END_DIE
#-------------------------------------------------------------
# To save some more typing in Module::Install installers, every...
# use inc::Module::Install
# ...also acts as an implicit use strict.
$^H |= strict::bits(qw(refs subs vars));
#-------------------------------------------------------------
unless ( -f $self->{file} ) {
foreach my $key (keys %INC) {
delete $INC{$key} if $key =~ /Module\/Install/;
}
local $^W;
require "$self->{path}/$self->{dispatch}.pm";
File::Path::mkpath("$self->{prefix}/$self->{author}");
$self->{admin} = "$self->{name}::$self->{dispatch}"->new( _top => $self );
$self->{admin}->init;
@_ = ($class, _self => $self);
goto &{"$self->{name}::import"};
}
local $^W;
*{"${who}::AUTOLOAD"} = $self->autoload;
$self->preload;
# Unregister loader and worker packages so subdirs can use them again
delete $INC{'inc/Module/Install.pm'};
delete $INC{'Module/Install.pm'};
# Save to the singleton
$MAIN = $self;
return 1;
}
sub autoload {
my $self = shift;
my $who = $self->_caller;
my $cwd = Cwd::getcwd();
my $sym = "${who}::AUTOLOAD";
$sym->{$cwd} = sub {
my $pwd = Cwd::getcwd();
if ( my $code = $sym->{$pwd} ) {
# Delegate back to parent dirs
goto &$code unless $cwd eq $pwd;
}
unless ($$sym =~ s/([^:]+)$//) {
# XXX: it looks like we can't retrieve the missing function
# via $$sym (usually $main::AUTOLOAD) in this case.
# I'm still wondering if we should slurp Makefile.PL to
# get some context or not ...
my ($package, $file, $line) = caller;
die <<"EOT";
Unknown function is found at $file line $line.
Execution of $file aborted due to runtime errors.
If you're a contributor to a project, you may need to install
some Module::Install extensions from CPAN (or other repository).
If you're a user of a module, please contact the author.
EOT
}
my $method = $1;
if ( uc($method) eq $method ) {
# Do nothing
return;
} elsif ( $method =~ /^_/ and $self->can($method) ) {
# Dispatch to the root M:I class
return $self->$method(@_);
}
# Dispatch to the appropriate plugin
unshift @_, ( $self, $1 );
goto &{$self->can('call')};
};
}
sub preload {
my $self = shift;
unless ( $self->{extensions} ) {
$self->load_extensions(
"$self->{prefix}/$self->{path}", $self
);
}
my @exts = @{$self->{extensions}};
unless ( @exts ) {
@exts = $self->{admin}->load_all_extensions;
}
my %seen;
foreach my $obj ( @exts ) {
while (my ($method, $glob) = each %{ref($obj) . '::'}) {
next unless $obj->can($method);
next if $method =~ /^_/;
next if $method eq uc($method);
$seen{$method}++;
}
}
my $who = $self->_caller;
foreach my $name ( sort keys %seen ) {
local $^W;
*{"${who}::$name"} = sub {
${"${who}::AUTOLOAD"} = "${who}::$name";
goto &{"${who}::AUTOLOAD"};
};
}
}
sub new {
my ($class, %args) = @_;
delete $INC{'FindBin.pm'};
{
# to suppress the redefine warning
local $SIG{__WARN__} = sub {};
require FindBin;
}
# ignore the prefix on extension modules built from top level.
my $base_path = Cwd::abs_path($FindBin::Bin);
unless ( Cwd::abs_path(Cwd::getcwd()) eq $base_path ) {
delete $args{prefix};
}
return $args{_self} if $args{_self};
$base_path = VMS::Filespec::unixify($base_path) if $^O eq 'VMS';
$args{dispatch} ||= 'Admin';
$args{prefix} ||= 'inc';
$args{author} ||= ($^O eq 'VMS' ? '_author' : '.author');
$args{bundle} ||= 'inc/BUNDLES';
$args{base} ||= $base_path;
$class =~ s/^\Q$args{prefix}\E:://;
$args{name} ||= $class;
$args{version} ||= $class->VERSION;
unless ( $args{path} ) {
$args{path} = $args{name};
$args{path} =~ s!::!/!g;
}
$args{file} ||= "$args{base}/$args{prefix}/$args{path}.pm";
$args{wrote} = 0;
bless( \%args, $class );
}
sub call {
my ($self, $method) = @_;
my $obj = $self->load($method) or return;
splice(@_, 0, 2, $obj);
goto &{$obj->can($method)};
}
sub load {
my ($self, $method) = @_;
$self->load_extensions(
"$self->{prefix}/$self->{path}", $self
) unless $self->{extensions};
foreach my $obj (@{$self->{extensions}}) {
return $obj if $obj->can($method);
}
my $admin = $self->{admin} or die <<"END_DIE";
The '$method' method does not exist in the '$self->{prefix}' path!
Please remove the '$self->{prefix}' directory and run $0 again to load it.
END_DIE
my $obj = $admin->load($method, 1);
push @{$self->{extensions}}, $obj;
$obj;
}
sub load_extensions {
my ($self, $path, $top) = @_;
my $should_reload = 0;
unless ( grep { ! ref $_ and lc $_ eq lc $self->{prefix} } @INC ) {
unshift @INC, $self->{prefix};
$should_reload = 1;
}
foreach my $rv ( $self->find_extensions($path) ) {
my ($file, $pkg) = @{$rv};
next if $self->{pathnames}{$pkg};
local $@;
my $new = eval { local $^W; require $file; $pkg->can('new') };
unless ( $new ) {
warn $@ if $@;
next;
}
$self->{pathnames}{$pkg} =
$should_reload ? delete $INC{$file} : $INC{$file};
push @{$self->{extensions}}, &{$new}($pkg, _top => $top );
}
$self->{extensions} ||= [];
}
sub find_extensions {
my ($self, $path) = @_;
my @found;
File::Find::find( {no_chdir => 1, wanted => sub {
my $file = $File::Find::name;
return unless $file =~ m!^\Q$path\E/(.+)\.pm\Z!is;
my $subpath = $1;
return if lc($subpath) eq lc($self->{dispatch});
$file = "$self->{path}/$subpath.pm";
my $pkg = "$self->{name}::$subpath";
$pkg =~ s!/!::!g;
# If we have a mixed-case package name, assume case has been preserved
# correctly. Otherwise, root through the file to locate the case-preserved
# version of the package name.
if ( $subpath eq lc($subpath) || $subpath eq uc($subpath) ) {
my $content = Module::Install::_read($File::Find::name);
my $in_pod = 0;
foreach ( split /\n/, $content ) {
$in_pod = 1 if /^=\w/;
$in_pod = 0 if /^=cut/;
next if ($in_pod || /^=cut/); # skip pod text
next if /^\s*#/; # and comments
if ( m/^\s*package\s+($pkg)\s*;/i ) {
$pkg = $1;
last;
}
}
}
push @found, [ $file, $pkg ];
}}, $path ) if -d $path;
@found;
}
#####################################################################
# Common Utility Functions
sub _caller {
my $depth = 0;
my $call = caller($depth);
while ( $call eq __PACKAGE__ ) {
$depth++;
$call = caller($depth);
}
return $call;
}
sub _read {
local *FH;
open( FH, '<', $_[0] ) or die "open($_[0]): $!";
binmode FH;
my $string = do { local $/; };
close FH or die "close($_[0]): $!";
return $string;
}
sub _readperl {
my $string = Module::Install::_read($_[0]);
$string =~ s/(?:\015{1,2}\012|\015|\012)/\n/sg;
$string =~ s/(\n)\n*__(?:DATA|END)__\b.*\z/$1/s;
$string =~ s/\n\n=\w+.+?\n\n=cut\b.+?\n+/\n\n/sg;
return $string;
}
sub _readpod {
my $string = Module::Install::_read($_[0]);
$string =~ s/(?:\015{1,2}\012|\015|\012)/\n/sg;
return $string if $_[0] =~ /\.pod\z/;
$string =~ s/(^|\n=cut\b.+?\n+)[^=\s].+?\n(\n=\w+|\z)/$1$2/sg;
$string =~ s/\n*=pod\b[^\n]*\n+/\n\n/sg;
$string =~ s/\n*=cut\b[^\n]*\n+/\n\n/sg;
$string =~ s/^\n+//s;
return $string;
}
sub _write {
local *FH;
open( FH, '>', $_[0] ) or die "open($_[0]): $!";
binmode FH;
foreach ( 1 .. $#_ ) {
print FH $_[$_] or die "print($_[0]): $!";
}
close FH or die "close($_[0]): $!";
}
# _version is for processing module versions (eg, 1.03_05) not
# Perl versions (eg, 5.8.1).
sub _version {
my $s = shift || 0;
my $d =()= $s =~ /(\.)/g;
if ( $d >= 2 ) {
# Normalise multipart versions
$s =~ s/(\.)(\d{1,3})/sprintf("$1%03d",$2)/eg;
}
$s =~ s/^(\d+)\.?//;
my $l = $1 || 0;
my @v = map {
$_ . '0' x (3 - length $_)
} $s =~ /(\d{1,3})\D?/g;
$l = $l . '.' . join '', @v if @v;
return $l + 0;
}
sub _cmp {
_version($_[1]) <=> _version($_[2]);
}
# Cloned from Params::Util::_CLASS
sub _CLASS {
(
defined $_[0]
and
! ref $_[0]
and
$_[0] =~ m/^[^\W\d]\w*(?:::\w+)*\z/s
) ? $_[0] : undef;
}
1;
# Copyright 2008 - 2012 Adam Kennedy.
Audio-Nama-1.216/inc/Module/Install/ 0000755 0001750 0001750 00000000000 13544212627 016106 5 ustar jroth jroth Audio-Nama-1.216/inc/Module/Install/Makefile.pm 0000644 0001750 0001750 00000027437 13412473751 020177 0 ustar jroth jroth #line 1
package Module::Install::Makefile;
use strict 'vars';
use ExtUtils::MakeMaker ();
use Module::Install::Base ();
use Fcntl qw/:flock :seek/;
use vars qw{$VERSION @ISA $ISCORE};
BEGIN {
$VERSION = '1.17';
@ISA = 'Module::Install::Base';
$ISCORE = 1;
}
sub Makefile { $_[0] }
my %seen = ();
sub prompt {
shift;
# Infinite loop protection
my @c = caller();
if ( ++$seen{"$c[1]|$c[2]|$_[0]"} > 3 ) {
die "Caught an potential prompt infinite loop ($c[1]|$c[2]|$_[0])";
}
# In automated testing or non-interactive session, always use defaults
if ( ($ENV{AUTOMATED_TESTING} or -! -t STDIN) and ! $ENV{PERL_MM_USE_DEFAULT} ) {
local $ENV{PERL_MM_USE_DEFAULT} = 1;
goto &ExtUtils::MakeMaker::prompt;
} else {
goto &ExtUtils::MakeMaker::prompt;
}
}
# Store a cleaned up version of the MakeMaker version,
# since we need to behave differently in a variety of
# ways based on the MM version.
my $makemaker = eval $ExtUtils::MakeMaker::VERSION;
# If we are passed a param, do a "newer than" comparison.
# Otherwise, just return the MakeMaker version.
sub makemaker {
( @_ < 2 or $makemaker >= eval($_[1]) ) ? $makemaker : 0
}
# Ripped from ExtUtils::MakeMaker 6.56, and slightly modified
# as we only need to know here whether the attribute is an array
# or a hash or something else (which may or may not be appendable).
my %makemaker_argtype = (
C => 'ARRAY',
CONFIG => 'ARRAY',
# CONFIGURE => 'CODE', # ignore
DIR => 'ARRAY',
DL_FUNCS => 'HASH',
DL_VARS => 'ARRAY',
EXCLUDE_EXT => 'ARRAY',
EXE_FILES => 'ARRAY',
FUNCLIST => 'ARRAY',
H => 'ARRAY',
IMPORTS => 'HASH',
INCLUDE_EXT => 'ARRAY',
LIBS => 'ARRAY', # ignore ''
MAN1PODS => 'HASH',
MAN3PODS => 'HASH',
META_ADD => 'HASH',
META_MERGE => 'HASH',
PL_FILES => 'HASH',
PM => 'HASH',
PMLIBDIRS => 'ARRAY',
PMLIBPARENTDIRS => 'ARRAY',
PREREQ_PM => 'HASH',
CONFIGURE_REQUIRES => 'HASH',
SKIP => 'ARRAY',
TYPEMAPS => 'ARRAY',
XS => 'HASH',
# VERSION => ['version',''], # ignore
# _KEEP_AFTER_FLUSH => '',
clean => 'HASH',
depend => 'HASH',
dist => 'HASH',
dynamic_lib=> 'HASH',
linkext => 'HASH',
macro => 'HASH',
postamble => 'HASH',
realclean => 'HASH',
test => 'HASH',
tool_autosplit => 'HASH',
# special cases where you can use makemaker_append
CCFLAGS => 'APPENDABLE',
DEFINE => 'APPENDABLE',
INC => 'APPENDABLE',
LDDLFLAGS => 'APPENDABLE',
LDFROM => 'APPENDABLE',
);
sub makemaker_args {
my ($self, %new_args) = @_;
my $args = ( $self->{makemaker_args} ||= {} );
foreach my $key (keys %new_args) {
if ($makemaker_argtype{$key}) {
if ($makemaker_argtype{$key} eq 'ARRAY') {
$args->{$key} = [] unless defined $args->{$key};
unless (ref $args->{$key} eq 'ARRAY') {
$args->{$key} = [$args->{$key}]
}
push @{$args->{$key}},
ref $new_args{$key} eq 'ARRAY'
? @{$new_args{$key}}
: $new_args{$key};
}
elsif ($makemaker_argtype{$key} eq 'HASH') {
$args->{$key} = {} unless defined $args->{$key};
foreach my $skey (keys %{ $new_args{$key} }) {
$args->{$key}{$skey} = $new_args{$key}{$skey};
}
}
elsif ($makemaker_argtype{$key} eq 'APPENDABLE') {
$self->makemaker_append($key => $new_args{$key});
}
}
else {
if (defined $args->{$key}) {
warn qq{MakeMaker attribute "$key" is overriden; use "makemaker_append" to append values\n};
}
$args->{$key} = $new_args{$key};
}
}
return $args;
}
# For mm args that take multiple space-separated args,
# append an argument to the current list.
sub makemaker_append {
my $self = shift;
my $name = shift;
my $args = $self->makemaker_args;
$args->{$name} = defined $args->{$name}
? join( ' ', $args->{$name}, @_ )
: join( ' ', @_ );
}
sub build_subdirs {
my $self = shift;
my $subdirs = $self->makemaker_args->{DIR} ||= [];
for my $subdir (@_) {
push @$subdirs, $subdir;
}
}
sub clean_files {
my $self = shift;
my $clean = $self->makemaker_args->{clean} ||= {};
%$clean = (
%$clean,
FILES => join ' ', grep { length $_ } ($clean->{FILES} || (), @_),
);
}
sub realclean_files {
my $self = shift;
my $realclean = $self->makemaker_args->{realclean} ||= {};
%$realclean = (
%$realclean,
FILES => join ' ', grep { length $_ } ($realclean->{FILES} || (), @_),
);
}
sub libs {
my $self = shift;
my $libs = ref $_[0] ? shift : [ shift ];
$self->makemaker_args( LIBS => $libs );
}
sub inc {
my $self = shift;
$self->makemaker_args( INC => shift );
}
sub _wanted_t {
}
sub tests_recursive {
my $self = shift;
my $dir = shift || 't';
unless ( -d $dir ) {
die "tests_recursive dir '$dir' does not exist";
}
my %tests = map { $_ => 1 } split / /, ($self->tests || '');
require File::Find;
File::Find::find(
sub { /\.t$/ and -f $_ and $tests{"$File::Find::dir/*.t"} = 1 },
$dir
);
$self->tests( join ' ', sort keys %tests );
}
sub write {
my $self = shift;
die "&Makefile->write() takes no arguments\n" if @_;
# Check the current Perl version
my $perl_version = $self->perl_version;
if ( $perl_version ) {
eval "use $perl_version; 1"
or die "ERROR: perl: Version $] is installed, "
. "but we need version >= $perl_version";
}
# Make sure we have a new enough MakeMaker
require ExtUtils::MakeMaker;
if ( $perl_version and $self->_cmp($perl_version, '5.006') >= 0 ) {
# This previous attempted to inherit the version of
# ExtUtils::MakeMaker in use by the module author, but this
# was found to be untenable as some authors build releases
# using future dev versions of EU:MM that nobody else has.
# Instead, #toolchain suggests we use 6.59 which is the most
# stable version on CPAN at time of writing and is, to quote
# ribasushi, "not terminally fucked, > and tested enough".
# TODO: We will now need to maintain this over time to push
# the version up as new versions are released.
$self->build_requires( 'ExtUtils::MakeMaker' => 6.59 );
$self->configure_requires( 'ExtUtils::MakeMaker' => 6.59 );
} else {
# Allow legacy-compatibility with 5.005 by depending on the
# most recent EU:MM that supported 5.005.
$self->build_requires( 'ExtUtils::MakeMaker' => 6.36 );
$self->configure_requires( 'ExtUtils::MakeMaker' => 6.36 );
}
# Generate the MakeMaker params
my $args = $self->makemaker_args;
$args->{DISTNAME} = $self->name;
$args->{NAME} = $self->module_name || $self->name;
$args->{NAME} =~ s/-/::/g;
$args->{VERSION} = $self->version or die <<'EOT';
ERROR: Can't determine distribution version. Please specify it
explicitly via 'version' in Makefile.PL, or set a valid $VERSION
in a module, and provide its file path via 'version_from' (or
'all_from' if you prefer) in Makefile.PL.
EOT
if ( $self->tests ) {
my @tests = split ' ', $self->tests;
my %seen;
$args->{test} = {
TESTS => (join ' ', grep {!$seen{$_}++} @tests),
};
} elsif ( $Module::Install::ExtraTests::use_extratests ) {
# Module::Install::ExtraTests doesn't set $self->tests and does its own tests via harness.
# So, just ignore our xt tests here.
} elsif ( -d 'xt' and ($Module::Install::AUTHOR or $ENV{RELEASE_TESTING}) ) {
$args->{test} = {
TESTS => join( ' ', map { "$_/*.t" } grep { -d $_ } qw{ t xt } ),
};
}
if ( $] >= 5.005 ) {
$args->{ABSTRACT} = $self->abstract;
$args->{AUTHOR} = join ', ', @{$self->author || []};
}
if ( $self->makemaker(6.10) ) {
$args->{NO_META} = 1;
#$args->{NO_MYMETA} = 1;
}
if ( $self->makemaker(6.17) and $self->sign ) {
$args->{SIGN} = 1;
}
unless ( $self->is_admin ) {
delete $args->{SIGN};
}
if ( $self->makemaker(6.31) and $self->license ) {
$args->{LICENSE} = $self->license;
}
my $prereq = ($args->{PREREQ_PM} ||= {});
%$prereq = ( %$prereq,
map { @$_ } # flatten [module => version]
map { @$_ }
grep $_,
($self->requires)
);
# Remove any reference to perl, PREREQ_PM doesn't support it
delete $args->{PREREQ_PM}->{perl};
# Merge both kinds of requires into BUILD_REQUIRES
my $build_prereq = ($args->{BUILD_REQUIRES} ||= {});
%$build_prereq = ( %$build_prereq,
map { @$_ } # flatten [module => version]
map { @$_ }
grep $_,
($self->configure_requires, $self->build_requires)
);
# Remove any reference to perl, BUILD_REQUIRES doesn't support it
delete $args->{BUILD_REQUIRES}->{perl};
# Delete bundled dists from prereq_pm, add it to Makefile DIR
my $subdirs = ($args->{DIR} || []);
if ($self->bundles) {
my %processed;
foreach my $bundle (@{ $self->bundles }) {
my ($mod_name, $dist_dir) = @$bundle;
delete $prereq->{$mod_name};
$dist_dir = File::Basename::basename($dist_dir); # dir for building this module
if (not exists $processed{$dist_dir}) {
if (-d $dist_dir) {
# List as sub-directory to be processed by make
push @$subdirs, $dist_dir;
}
# Else do nothing: the module is already present on the system
$processed{$dist_dir} = undef;
}
}
}
unless ( $self->makemaker('6.55_03') ) {
%$prereq = (%$prereq,%$build_prereq);
delete $args->{BUILD_REQUIRES};
}
if ( my $perl_version = $self->perl_version ) {
eval "use $perl_version; 1"
or die "ERROR: perl: Version $] is installed, "
. "but we need version >= $perl_version";
if ( $self->makemaker(6.48) ) {
$args->{MIN_PERL_VERSION} = $perl_version;
}
}
if ($self->installdirs) {
warn qq{old INSTALLDIRS (probably set by makemaker_args) is overriden by installdirs\n} if $args->{INSTALLDIRS};
$args->{INSTALLDIRS} = $self->installdirs;
}
my %args = map {
( $_ => $args->{$_} ) } grep {defined($args->{$_} )
} keys %$args;
my $user_preop = delete $args{dist}->{PREOP};
if ( my $preop = $self->admin->preop($user_preop) ) {
foreach my $key ( keys %$preop ) {
$args{dist}->{$key} = $preop->{$key};
}
}
my $mm = ExtUtils::MakeMaker::WriteMakefile(%args);
$self->fix_up_makefile($mm->{FIRST_MAKEFILE} || 'Makefile');
}
sub fix_up_makefile {
my $self = shift;
my $makefile_name = shift;
my $top_class = ref($self->_top) || '';
my $top_version = $self->_top->VERSION || '';
my $preamble = $self->preamble
? "# Preamble by $top_class $top_version\n"
. $self->preamble
: '';
my $postamble = "# Postamble by $top_class $top_version\n"
. ($self->postamble || '');
local *MAKEFILE;
open MAKEFILE, "+< $makefile_name" or die "fix_up_makefile: Couldn't open $makefile_name: $!";
eval { flock MAKEFILE, LOCK_EX };
my $makefile = do { local $/; };
$makefile =~ s/\b(test_harness\(\$\(TEST_VERBOSE\), )/$1'inc', /;
$makefile =~ s/( -I\$\(INST_ARCHLIB\))/ -Iinc$1/g;
$makefile =~ s/( "-I\$\(INST_LIB\)")/ "-Iinc"$1/g;
$makefile =~ s/^(FULLPERL = .*)/$1 "-Iinc"/m;
$makefile =~ s/^(PERL = .*)/$1 "-Iinc"/m;
# Module::Install will never be used to build the Core Perl
# Sometimes PERL_LIB and PERL_ARCHLIB get written anyway, which breaks
# PREFIX/PERL5LIB, and thus, install_share. Blank them if they exist
$makefile =~ s/^PERL_LIB = .+/PERL_LIB =/m;
#$makefile =~ s/^PERL_ARCHLIB = .+/PERL_ARCHLIB =/m;
# Perl 5.005 mentions PERL_LIB explicitly, so we have to remove that as well.
$makefile =~ s/(\"?)-I\$\(PERL_LIB\)\1//g;
# XXX - This is currently unused; not sure if it breaks other MM-users
# $makefile =~ s/^pm_to_blib\s+:\s+/pm_to_blib :: /mg;
seek MAKEFILE, 0, SEEK_SET;
truncate MAKEFILE, 0;
print MAKEFILE "$preamble$makefile$postamble" or die $!;
close MAKEFILE or die $!;
1;
}
sub preamble {
my ($self, $text) = @_;
$self->{preamble} = $text . $self->{preamble} if defined $text;
$self->{preamble};
}
sub postamble {
my ($self, $text) = @_;
$self->{postamble} ||= $self->admin->postamble;
$self->{postamble} .= $text if defined $text;
$self->{postamble}
}
1;
__END__
#line 544
Audio-Nama-1.216/inc/Module/Install/Base.pm 0000644 0001750 0001750 00000002147 13412473751 017323 0 ustar jroth jroth #line 1
package Module::Install::Base;
use strict 'vars';
use vars qw{$VERSION};
BEGIN {
$VERSION = '1.17';
}
# Suspend handler for "redefined" warnings
BEGIN {
my $w = $SIG{__WARN__};
$SIG{__WARN__} = sub { $w };
}
#line 42
sub new {
my $class = shift;
unless ( defined &{"${class}::call"} ) {
*{"${class}::call"} = sub { shift->_top->call(@_) };
}
unless ( defined &{"${class}::load"} ) {
*{"${class}::load"} = sub { shift->_top->load(@_) };
}
bless { @_ }, $class;
}
#line 61
sub AUTOLOAD {
local $@;
my $func = eval { shift->_top->autoload } or return;
goto &$func;
}
#line 75
sub _top {
$_[0]->{_top};
}
#line 90
sub admin {
$_[0]->_top->{admin}
or
Module::Install::Base::FakeAdmin->new;
}
#line 106
sub is_admin {
! $_[0]->admin->isa('Module::Install::Base::FakeAdmin');
}
sub DESTROY {}
package Module::Install::Base::FakeAdmin;
use vars qw{$VERSION};
BEGIN {
$VERSION = $Module::Install::Base::VERSION;
}
my $fake;
sub new {
$fake ||= bless(\@_, $_[0]);
}
sub AUTOLOAD {}
sub DESTROY {}
# Restore warning handler
BEGIN {
$SIG{__WARN__} = $SIG{__WARN__}->();
}
1;
#line 159
Audio-Nama-1.216/inc/Module/Install/Scripts.pm 0000644 0001750 0001750 00000001011 13412473751 020065 0 ustar jroth jroth #line 1
package Module::Install::Scripts;
use strict 'vars';
use Module::Install::Base ();
use vars qw{$VERSION @ISA $ISCORE};
BEGIN {
$VERSION = '1.17';
@ISA = 'Module::Install::Base';
$ISCORE = 1;
}
sub install_script {
my $self = shift;
my $args = $self->makemaker_args;
my $exe = $args->{EXE_FILES} ||= [];
foreach ( @_ ) {
if ( -f $_ ) {
push @$exe, $_;
} elsif ( -d 'script' and -f "script/$_" ) {
push @$exe, "script/$_";
} else {
die("Cannot find script '$_'");
}
}
}
1;
Audio-Nama-1.216/inc/Module/Install/Win32.pm 0000644 0001750 0001750 00000003403 13412473751 017347 0 ustar jroth jroth #line 1
package Module::Install::Win32;
use strict;
use Module::Install::Base ();
use vars qw{$VERSION @ISA $ISCORE};
BEGIN {
$VERSION = '1.17';
@ISA = 'Module::Install::Base';
$ISCORE = 1;
}
# determine if the user needs nmake, and download it if needed
sub check_nmake {
my $self = shift;
$self->load('can_run');
$self->load('get_file');
require Config;
return unless (
$^O eq 'MSWin32' and
$Config::Config{make} and
$Config::Config{make} =~ /^nmake\b/i and
! $self->can_run('nmake')
);
print "The required 'nmake' executable not found, fetching it...\n";
require File::Basename;
my $rv = $self->get_file(
url => 'http://download.microsoft.com/download/vc15/Patch/1.52/W95/EN-US/Nmake15.exe',
ftp_url => 'ftp://ftp.microsoft.com/Softlib/MSLFILES/Nmake15.exe',
local_dir => File::Basename::dirname($^X),
size => 51928,
run => 'Nmake15.exe /o > nul',
check_for => 'Nmake.exe',
remove => 1,
);
die <<'END_MESSAGE' unless $rv;
-------------------------------------------------------------------------------
Since you are using Microsoft Windows, you will need the 'nmake' utility
before installation. It's available at:
http://download.microsoft.com/download/vc15/Patch/1.52/W95/EN-US/Nmake15.exe
or
ftp://ftp.microsoft.com/Softlib/MSLFILES/Nmake15.exe
Please download the file manually, save it to a directory in %PATH% (e.g.
C:\WINDOWS\COMMAND\), then launch the MS-DOS command line shell, "cd" to
that directory, and run "Nmake15.exe" from there; that will create the
'nmake.exe' file needed by this module.
You may then resume the installation process described in README.
-------------------------------------------------------------------------------
END_MESSAGE
}
1;
Audio-Nama-1.216/inc/Module/Install/Can.pm 0000644 0001750 0001750 00000006405 13412473751 017153 0 ustar jroth jroth #line 1
package Module::Install::Can;
use strict;
use Config ();
use ExtUtils::MakeMaker ();
use Module::Install::Base ();
use vars qw{$VERSION @ISA $ISCORE};
BEGIN {
$VERSION = '1.17';
@ISA = 'Module::Install::Base';
$ISCORE = 1;
}
# check if we can load some module
### Upgrade this to not have to load the module if possible
sub can_use {
my ($self, $mod, $ver) = @_;
$mod =~ s{::|\\}{/}g;
$mod .= '.pm' unless $mod =~ /\.pm$/i;
my $pkg = $mod;
$pkg =~ s{/}{::}g;
$pkg =~ s{\.pm$}{}i;
local $@;
eval { require $mod; $pkg->VERSION($ver || 0); 1 };
}
# Check if we can run some command
sub can_run {
my ($self, $cmd) = @_;
my $_cmd = $cmd;
return $_cmd if (-x $_cmd or $_cmd = MM->maybe_command($_cmd));
for my $dir ((split /$Config::Config{path_sep}/, $ENV{PATH}), '.') {
next if $dir eq '';
require File::Spec;
my $abs = File::Spec->catfile($dir, $cmd);
return $abs if (-x $abs or $abs = MM->maybe_command($abs));
}
return;
}
# Can our C compiler environment build XS files
sub can_xs {
my $self = shift;
# Ensure we have the CBuilder module
$self->configure_requires( 'ExtUtils::CBuilder' => 0.27 );
# Do we have the configure_requires checker?
local $@;
eval "require ExtUtils::CBuilder;";
if ( $@ ) {
# They don't obey configure_requires, so it is
# someone old and delicate. Try to avoid hurting
# them by falling back to an older simpler test.
return $self->can_cc();
}
# Do we have a working C compiler
my $builder = ExtUtils::CBuilder->new(
quiet => 1,
);
unless ( $builder->have_compiler ) {
# No working C compiler
return 0;
}
# Write a C file representative of what XS becomes
require File::Temp;
my ( $FH, $tmpfile ) = File::Temp::tempfile(
"compilexs-XXXXX",
SUFFIX => '.c',
);
binmode $FH;
print $FH <<'END_C';
#include "EXTERN.h"
#include "perl.h"
#include "XSUB.h"
int main(int argc, char **argv) {
return 0;
}
int boot_sanexs() {
return 1;
}
END_C
close $FH;
# Can the C compiler access the same headers XS does
my @libs = ();
my $object = undef;
eval {
local $^W = 0;
$object = $builder->compile(
source => $tmpfile,
);
@libs = $builder->link(
objects => $object,
module_name => 'sanexs',
);
};
my $result = $@ ? 0 : 1;
# Clean up all the build files
foreach ( $tmpfile, $object, @libs ) {
next unless defined $_;
1 while unlink;
}
return $result;
}
# Can we locate a (the) C compiler
sub can_cc {
my $self = shift;
if ($^O eq 'VMS') {
require ExtUtils::CBuilder;
my $builder = ExtUtils::CBuilder->new(
quiet => 1,
);
return $builder->have_compiler;
}
my @chunks = split(/ /, $Config::Config{cc}) or return;
# $Config{cc} may contain args; try to find out the program part
while (@chunks) {
return $self->can_run("@chunks") || (pop(@chunks), next);
}
return;
}
# Fix Cygwin bug on maybe_command();
if ( $^O eq 'cygwin' ) {
require ExtUtils::MM_Cygwin;
require ExtUtils::MM_Win32;
if ( ! defined(&ExtUtils::MM_Cygwin::maybe_command) ) {
*ExtUtils::MM_Cygwin::maybe_command = sub {
my ($self, $file) = @_;
if ($file =~ m{^/cygdrive/}i and ExtUtils::MM_Win32->can('maybe_command')) {
ExtUtils::MM_Win32->maybe_command($file);
} else {
ExtUtils::MM_Unix->maybe_command($file);
}
}
}
}
1;
__END__
#line 245
Audio-Nama-1.216/inc/Module/Install/Fetch.pm 0000644 0001750 0001750 00000004627 13412473751 017507 0 ustar jroth jroth #line 1
package Module::Install::Fetch;
use strict;
use Module::Install::Base ();
use vars qw{$VERSION @ISA $ISCORE};
BEGIN {
$VERSION = '1.17';
@ISA = 'Module::Install::Base';
$ISCORE = 1;
}
sub get_file {
my ($self, %args) = @_;
my ($scheme, $host, $path, $file) =
$args{url} =~ m|^(\w+)://([^/]+)(.+)/(.+)| or return;
if ( $scheme eq 'http' and ! eval { require LWP::Simple; 1 } ) {
$args{url} = $args{ftp_url}
or (warn("LWP support unavailable!\n"), return);
($scheme, $host, $path, $file) =
$args{url} =~ m|^(\w+)://([^/]+)(.+)/(.+)| or return;
}
$|++;
print "Fetching '$file' from $host... ";
unless (eval { require Socket; Socket::inet_aton($host) }) {
warn "'$host' resolve failed!\n";
return;
}
return unless $scheme eq 'ftp' or $scheme eq 'http';
require Cwd;
my $dir = Cwd::getcwd();
chdir $args{local_dir} or return if exists $args{local_dir};
if (eval { require LWP::Simple; 1 }) {
LWP::Simple::mirror($args{url}, $file);
}
elsif (eval { require Net::FTP; 1 }) { eval {
# use Net::FTP to get past firewall
my $ftp = Net::FTP->new($host, Passive => 1, Timeout => 600);
$ftp->login("anonymous", 'anonymous@example.com');
$ftp->cwd($path);
$ftp->binary;
$ftp->get($file) or (warn("$!\n"), return);
$ftp->quit;
} }
elsif (my $ftp = $self->can_run('ftp')) { eval {
# no Net::FTP, fallback to ftp.exe
require FileHandle;
my $fh = FileHandle->new;
local $SIG{CHLD} = 'IGNORE';
unless ($fh->open("|$ftp -n")) {
warn "Couldn't open ftp: $!\n";
chdir $dir; return;
}
my @dialog = split(/\n/, <<"END_FTP");
open $host
user anonymous anonymous\@example.com
cd $path
binary
get $file $file
quit
END_FTP
foreach (@dialog) { $fh->print("$_\n") }
$fh->close;
} }
else {
warn "No working 'ftp' program available!\n";
chdir $dir; return;
}
unless (-f $file) {
warn "Fetching failed: $@\n";
chdir $dir; return;
}
return if exists $args{size} and -s $file != $args{size};
system($args{run}) if exists $args{run};
unlink($file) if $args{remove};
print(((!exists $args{check_for} or -e $args{check_for})
? "done!" : "failed! ($!)"), "\n");
chdir $dir; return !$?;
}
1;
Audio-Nama-1.216/inc/Module/Install/WriteAll.pm 0000644 0001750 0001750 00000002376 13412473751 020200 0 ustar jroth jroth #line 1
package Module::Install::WriteAll;
use strict;
use Module::Install::Base ();
use vars qw{$VERSION @ISA $ISCORE};
BEGIN {
$VERSION = '1.17';
@ISA = qw{Module::Install::Base};
$ISCORE = 1;
}
sub WriteAll {
my $self = shift;
my %args = (
meta => 1,
sign => 0,
inline => 0,
check_nmake => 1,
@_,
);
$self->sign(1) if $args{sign};
$self->admin->WriteAll(%args) if $self->is_admin;
$self->check_nmake if $args{check_nmake};
unless ( $self->makemaker_args->{PL_FILES} ) {
# XXX: This still may be a bit over-defensive...
unless ($self->makemaker(6.25)) {
$self->makemaker_args( PL_FILES => {} ) if -f 'Build.PL';
}
}
# Until ExtUtils::MakeMaker support MYMETA.yml, make sure
# we clean it up properly ourself.
$self->realclean_files('MYMETA.yml');
if ( $args{inline} ) {
$self->Inline->write;
} else {
$self->Makefile->write;
}
# The Makefile write process adds a couple of dependencies,
# so write the META.yml files after the Makefile.
if ( $args{meta} ) {
$self->Meta->write;
}
# Experimental support for MYMETA
if ( $ENV{X_MYMETA} ) {
if ( $ENV{X_MYMETA} eq 'JSON' ) {
$self->Meta->write_mymeta_json;
} else {
$self->Meta->write_mymeta_yaml;
}
}
return 1;
}
1;
Audio-Nama-1.216/inc/Module/Install/Metadata.pm 0000644 0001750 0001750 00000043302 13412473751 020167 0 ustar jroth jroth #line 1
package Module::Install::Metadata;
use strict 'vars';
use Module::Install::Base ();
use vars qw{$VERSION @ISA $ISCORE};
BEGIN {
$VERSION = '1.17';
@ISA = 'Module::Install::Base';
$ISCORE = 1;
}
my @boolean_keys = qw{
sign
};
my @scalar_keys = qw{
name
module_name
abstract
version
distribution_type
tests
installdirs
};
my @tuple_keys = qw{
configure_requires
build_requires
requires
recommends
bundles
resources
};
my @resource_keys = qw{
homepage
bugtracker
repository
};
my @array_keys = qw{
keywords
author
};
*authors = \&author;
sub Meta { shift }
sub Meta_BooleanKeys { @boolean_keys }
sub Meta_ScalarKeys { @scalar_keys }
sub Meta_TupleKeys { @tuple_keys }
sub Meta_ResourceKeys { @resource_keys }
sub Meta_ArrayKeys { @array_keys }
foreach my $key ( @boolean_keys ) {
*$key = sub {
my $self = shift;
if ( defined wantarray and not @_ ) {
return $self->{values}->{$key};
}
$self->{values}->{$key} = ( @_ ? $_[0] : 1 );
return $self;
};
}
foreach my $key ( @scalar_keys ) {
*$key = sub {
my $self = shift;
return $self->{values}->{$key} if defined wantarray and !@_;
$self->{values}->{$key} = shift;
return $self;
};
}
foreach my $key ( @array_keys ) {
*$key = sub {
my $self = shift;
return $self->{values}->{$key} if defined wantarray and !@_;
$self->{values}->{$key} ||= [];
push @{$self->{values}->{$key}}, @_;
return $self;
};
}
foreach my $key ( @resource_keys ) {
*$key = sub {
my $self = shift;
unless ( @_ ) {
return () unless $self->{values}->{resources};
return map { $_->[1] }
grep { $_->[0] eq $key }
@{ $self->{values}->{resources} };
}
return $self->{values}->{resources}->{$key} unless @_;
my $uri = shift or die(
"Did not provide a value to $key()"
);
$self->resources( $key => $uri );
return 1;
};
}
foreach my $key ( grep { $_ ne "resources" } @tuple_keys) {
*$key = sub {
my $self = shift;
return $self->{values}->{$key} unless @_;
my @added;
while ( @_ ) {
my $module = shift or last;
my $version = shift || 0;
push @added, [ $module, $version ];
}
push @{ $self->{values}->{$key} }, @added;
return map {@$_} @added;
};
}
# Resource handling
my %lc_resource = map { $_ => 1 } qw{
homepage
license
bugtracker
repository
};
sub resources {
my $self = shift;
while ( @_ ) {
my $name = shift or last;
my $value = shift or next;
if ( $name eq lc $name and ! $lc_resource{$name} ) {
die("Unsupported reserved lowercase resource '$name'");
}
$self->{values}->{resources} ||= [];
push @{ $self->{values}->{resources} }, [ $name, $value ];
}
$self->{values}->{resources};
}
# Aliases for build_requires that will have alternative
# meanings in some future version of META.yml.
sub test_requires { shift->build_requires(@_) }
sub install_requires { shift->build_requires(@_) }
# Aliases for installdirs options
sub install_as_core { $_[0]->installdirs('perl') }
sub install_as_cpan { $_[0]->installdirs('site') }
sub install_as_site { $_[0]->installdirs('site') }
sub install_as_vendor { $_[0]->installdirs('vendor') }
sub dynamic_config {
my $self = shift;
my $value = @_ ? shift : 1;
if ( $self->{values}->{dynamic_config} ) {
# Once dynamic we never change to static, for safety
return 0;
}
$self->{values}->{dynamic_config} = $value ? 1 : 0;
return 1;
}
# Convenience command
sub static_config {
shift->dynamic_config(0);
}
sub perl_version {
my $self = shift;
return $self->{values}->{perl_version} unless @_;
my $version = shift or die(
"Did not provide a value to perl_version()"
);
# Normalize the version
$version = $self->_perl_version($version);
# We don't support the really old versions
unless ( $version >= 5.005 ) {
die "Module::Install only supports 5.005 or newer (use ExtUtils::MakeMaker)\n";
}
$self->{values}->{perl_version} = $version;
}
sub all_from {
my ( $self, $file ) = @_;
unless ( defined($file) ) {
my $name = $self->name or die(
"all_from called with no args without setting name() first"
);
$file = join('/', 'lib', split(/-/, $name)) . '.pm';
$file =~ s{.*/}{} unless -e $file;
unless ( -e $file ) {
die("all_from cannot find $file from $name");
}
}
unless ( -f $file ) {
die("The path '$file' does not exist, or is not a file");
}
$self->{values}{all_from} = $file;
# Some methods pull from POD instead of code.
# If there is a matching .pod, use that instead
my $pod = $file;
$pod =~ s/\.pm$/.pod/i;
$pod = $file unless -e $pod;
# Pull the different values
$self->name_from($file) unless $self->name;
$self->version_from($file) unless $self->version;
$self->perl_version_from($file) unless $self->perl_version;
$self->author_from($pod) unless @{$self->author || []};
$self->license_from($pod) unless $self->license;
$self->abstract_from($pod) unless $self->abstract;
return 1;
}
sub provides {
my $self = shift;
my $provides = ( $self->{values}->{provides} ||= {} );
%$provides = (%$provides, @_) if @_;
return $provides;
}
sub auto_provides {
my $self = shift;
return $self unless $self->is_admin;
unless (-e 'MANIFEST') {
warn "Cannot deduce auto_provides without a MANIFEST, skipping\n";
return $self;
}
# Avoid spurious warnings as we are not checking manifest here.
local $SIG{__WARN__} = sub {1};
require ExtUtils::Manifest;
local *ExtUtils::Manifest::manicheck = sub { return };
require Module::Build;
my $build = Module::Build->new(
dist_name => $self->name,
dist_version => $self->version,
license => $self->license,
);
$self->provides( %{ $build->find_dist_packages || {} } );
}
sub feature {
my $self = shift;
my $name = shift;
my $features = ( $self->{values}->{features} ||= [] );
my $mods;
if ( @_ == 1 and ref( $_[0] ) ) {
# The user used ->feature like ->features by passing in the second
# argument as a reference. Accomodate for that.
$mods = $_[0];
} else {
$mods = \@_;
}
my $count = 0;
push @$features, (
$name => [
map {
ref($_) ? ( ref($_) eq 'HASH' ) ? %$_ : @$_ : $_
} @$mods
]
);
return @$features;
}
sub features {
my $self = shift;
while ( my ( $name, $mods ) = splice( @_, 0, 2 ) ) {
$self->feature( $name, @$mods );
}
return $self->{values}->{features}
? @{ $self->{values}->{features} }
: ();
}
sub no_index {
my $self = shift;
my $type = shift;
push @{ $self->{values}->{no_index}->{$type} }, @_ if $type;
return $self->{values}->{no_index};
}
sub read {
my $self = shift;
$self->include_deps( 'YAML::Tiny', 0 );
require YAML::Tiny;
my $data = YAML::Tiny::LoadFile('META.yml');
# Call methods explicitly in case user has already set some values.
while ( my ( $key, $value ) = each %$data ) {
next unless $self->can($key);
if ( ref $value eq 'HASH' ) {
while ( my ( $module, $version ) = each %$value ) {
$self->can($key)->($self, $module => $version );
}
} else {
$self->can($key)->($self, $value);
}
}
return $self;
}
sub write {
my $self = shift;
return $self unless $self->is_admin;
$self->admin->write_meta;
return $self;
}
sub version_from {
require ExtUtils::MM_Unix;
my ( $self, $file ) = @_;
$self->version( ExtUtils::MM_Unix->parse_version($file) );
# for version integrity check
$self->makemaker_args( VERSION_FROM => $file );
}
sub abstract_from {
require ExtUtils::MM_Unix;
my ( $self, $file ) = @_;
$self->abstract(
bless(
{ DISTNAME => $self->name },
'ExtUtils::MM_Unix'
)->parse_abstract($file)
);
}
# Add both distribution and module name
sub name_from {
my ($self, $file) = @_;
if (
Module::Install::_read($file) =~ m/
^ \s*
package \s*
([\w:]+)
[\s|;]*
/ixms
) {
my ($name, $module_name) = ($1, $1);
$name =~ s{::}{-}g;
$self->name($name);
unless ( $self->module_name ) {
$self->module_name($module_name);
}
} else {
die("Cannot determine name from $file\n");
}
}
sub _extract_perl_version {
if (
$_[0] =~ m/
^\s*
(?:use|require) \s*
v?
([\d_\.]+)
\s* ;
/ixms
) {
my $perl_version = $1;
$perl_version =~ s{_}{}g;
return $perl_version;
} else {
return;
}
}
sub perl_version_from {
my $self = shift;
my $perl_version=_extract_perl_version(Module::Install::_read($_[0]));
if ($perl_version) {
$self->perl_version($perl_version);
} else {
warn "Cannot determine perl version info from $_[0]\n";
return;
}
}
sub author_from {
my $self = shift;
my $content = Module::Install::_read($_[0]);
if ($content =~ m/
=head \d \s+ (?:authors?)\b \s*
([^\n]*)
|
=head \d \s+ (?:licen[cs]e|licensing|copyright|legal)\b \s*
.*? copyright .*? \d\d\d[\d.]+ \s* (?:\bby\b)? \s*
([^\n]*)
/ixms) {
my $author = $1 || $2;
# XXX: ugly but should work anyway...
if (eval "require Pod::Escapes; 1") {
# Pod::Escapes has a mapping table.
# It's in core of perl >= 5.9.3, and should be installed
# as one of the Pod::Simple's prereqs, which is a prereq
# of Pod::Text 3.x (see also below).
$author =~ s{ E<( (\d+) | ([A-Za-z]+) )> }
{
defined $2
? chr($2)
: defined $Pod::Escapes::Name2character_number{$1}
? chr($Pod::Escapes::Name2character_number{$1})
: do {
warn "Unknown escape: E<$1>";
"E<$1>";
};
}gex;
}
elsif (eval "require Pod::Text; 1" && $Pod::Text::VERSION < 3) {
# Pod::Text < 3.0 has yet another mapping table,
# though the table name of 2.x and 1.x are different.
# (1.x is in core of Perl < 5.6, 2.x is in core of
# Perl < 5.9.3)
my $mapping = ($Pod::Text::VERSION < 2)
? \%Pod::Text::HTML_Escapes
: \%Pod::Text::ESCAPES;
$author =~ s{ E<( (\d+) | ([A-Za-z]+) )> }
{
defined $2
? chr($2)
: defined $mapping->{$1}
? $mapping->{$1}
: do {
warn "Unknown escape: E<$1>";
"E<$1>";
};
}gex;
}
else {
$author =~ s{E}{<}g;
$author =~ s{E}{>}g;
}
$self->author($author);
} else {
warn "Cannot determine author info from $_[0]\n";
}
}
#Stolen from M::B
my %license_urls = (
perl => 'http://dev.perl.org/licenses/',
apache => 'http://apache.org/licenses/LICENSE-2.0',
apache_1_1 => 'http://apache.org/licenses/LICENSE-1.1',
artistic => 'http://opensource.org/licenses/artistic-license.php',
artistic_2 => 'http://opensource.org/licenses/artistic-license-2.0.php',
lgpl => 'http://opensource.org/licenses/lgpl-license.php',
lgpl2 => 'http://opensource.org/licenses/lgpl-2.1.php',
lgpl3 => 'http://opensource.org/licenses/lgpl-3.0.html',
bsd => 'http://opensource.org/licenses/bsd-license.php',
gpl => 'http://opensource.org/licenses/gpl-license.php',
gpl2 => 'http://opensource.org/licenses/gpl-2.0.php',
gpl3 => 'http://opensource.org/licenses/gpl-3.0.html',
mit => 'http://opensource.org/licenses/mit-license.php',
mozilla => 'http://opensource.org/licenses/mozilla1.1.php',
open_source => undef,
unrestricted => undef,
restrictive => undef,
unknown => undef,
);
sub license {
my $self = shift;
return $self->{values}->{license} unless @_;
my $license = shift or die(
'Did not provide a value to license()'
);
$license = __extract_license($license) || lc $license;
$self->{values}->{license} = $license;
# Automatically fill in license URLs
if ( $license_urls{$license} ) {
$self->resources( license => $license_urls{$license} );
}
return 1;
}
sub _extract_license {
my $pod = shift;
my $matched;
return __extract_license(
($matched) = $pod =~ m/
(=head \d \s+ L(?i:ICEN[CS]E|ICENSING)\b.*?)
(=head \d.*|=cut.*|)\z
/xms
) || __extract_license(
($matched) = $pod =~ m/
(=head \d \s+ (?:C(?i:OPYRIGHTS?)|L(?i:EGAL))\b.*?)
(=head \d.*|=cut.*|)\z
/xms
);
}
sub __extract_license {
my $license_text = shift or return;
my @phrases = (
'(?:under )?the same (?:terms|license) as (?:perl|the perl (?:\d )?programming language)' => 'perl', 1,
'(?:under )?the terms of (?:perl|the perl programming language) itself' => 'perl', 1,
'Artistic and GPL' => 'perl', 1,
'GNU general public license' => 'gpl', 1,
'GNU public license' => 'gpl', 1,
'GNU lesser general public license' => 'lgpl', 1,
'GNU lesser public license' => 'lgpl', 1,
'GNU library general public license' => 'lgpl', 1,
'GNU library public license' => 'lgpl', 1,
'GNU Free Documentation license' => 'unrestricted', 1,
'GNU Affero General Public License' => 'open_source', 1,
'(?:Free)?BSD license' => 'bsd', 1,
'Artistic license 2\.0' => 'artistic_2', 1,
'Artistic license' => 'artistic', 1,
'Apache (?:Software )?license' => 'apache', 1,
'GPL' => 'gpl', 1,
'LGPL' => 'lgpl', 1,
'BSD' => 'bsd', 1,
'Artistic' => 'artistic', 1,
'MIT' => 'mit', 1,
'Mozilla Public License' => 'mozilla', 1,
'Q Public License' => 'open_source', 1,
'OpenSSL License' => 'unrestricted', 1,
'SSLeay License' => 'unrestricted', 1,
'zlib License' => 'open_source', 1,
'proprietary' => 'proprietary', 0,
);
while ( my ($pattern, $license, $osi) = splice(@phrases, 0, 3) ) {
$pattern =~ s#\s+#\\s+#gs;
if ( $license_text =~ /\b$pattern\b/i ) {
return $license;
}
}
return '';
}
sub license_from {
my $self = shift;
if (my $license=_extract_license(Module::Install::_read($_[0]))) {
$self->license($license);
} else {
warn "Cannot determine license info from $_[0]\n";
return 'unknown';
}
}
sub _extract_bugtracker {
my @links = $_[0] =~ m#L<(
https?\Q://rt.cpan.org/\E[^>]+|
https?\Q://github.com/\E[\w_]+/[\w_]+/issues|
https?\Q://code.google.com/p/\E[\w_\-]+/issues/list
)>#gx;
my %links;
@links{@links}=();
@links=keys %links;
return @links;
}
sub bugtracker_from {
my $self = shift;
my $content = Module::Install::_read($_[0]);
my @links = _extract_bugtracker($content);
unless ( @links ) {
warn "Cannot determine bugtracker info from $_[0]\n";
return 0;
}
if ( @links > 1 ) {
warn "Found more than one bugtracker link in $_[0]\n";
return 0;
}
# Set the bugtracker
bugtracker( $links[0] );
return 1;
}
sub requires_from {
my $self = shift;
my $content = Module::Install::_readperl($_[0]);
my @requires = $content =~ m/^use\s+([^\W\d]\w*(?:::\w+)*)\s+(v?[\d\.]+)/mg;
while ( @requires ) {
my $module = shift @requires;
my $version = shift @requires;
$self->requires( $module => $version );
}
}
sub test_requires_from {
my $self = shift;
my $content = Module::Install::_readperl($_[0]);
my @requires = $content =~ m/^use\s+([^\W\d]\w*(?:::\w+)*)\s+([\d\.]+)/mg;
while ( @requires ) {
my $module = shift @requires;
my $version = shift @requires;
$self->test_requires( $module => $version );
}
}
# Convert triple-part versions (eg, 5.6.1 or 5.8.9) to
# numbers (eg, 5.006001 or 5.008009).
# Also, convert double-part versions (eg, 5.8)
sub _perl_version {
my $v = $_[-1];
$v =~ s/^([1-9])\.([1-9]\d?\d?)$/sprintf("%d.%03d",$1,$2)/e;
$v =~ s/^([1-9])\.([1-9]\d?\d?)\.(0|[1-9]\d?\d?)$/sprintf("%d.%03d%03d",$1,$2,$3 || 0)/e;
$v =~ s/(\.\d\d\d)000$/$1/;
$v =~ s/_.+$//;
if ( ref($v) ) {
# Numify
$v = $v + 0;
}
return $v;
}
sub add_metadata {
my $self = shift;
my %hash = @_;
for my $key (keys %hash) {
warn "add_metadata: $key is not prefixed with 'x_'.\n" .
"Use appopriate function to add non-private metadata.\n" unless $key =~ /^x_/;
$self->{values}->{$key} = $hash{$key};
}
}
######################################################################
# MYMETA Support
sub WriteMyMeta {
die "WriteMyMeta has been deprecated";
}
sub write_mymeta_yaml {
my $self = shift;
# We need YAML::Tiny to write the MYMETA.yml file
unless ( eval { require YAML::Tiny; 1; } ) {
return 1;
}
# Generate the data
my $meta = $self->_write_mymeta_data or return 1;
# Save as the MYMETA.yml file
print "Writing MYMETA.yml\n";
YAML::Tiny::DumpFile('MYMETA.yml', $meta);
}
sub write_mymeta_json {
my $self = shift;
# We need JSON to write the MYMETA.json file
unless ( eval { require JSON; 1; } ) {
return 1;
}
# Generate the data
my $meta = $self->_write_mymeta_data or return 1;
# Save as the MYMETA.yml file
print "Writing MYMETA.json\n";
Module::Install::_write(
'MYMETA.json',
JSON->new->pretty(1)->canonical->encode($meta),
);
}
sub _write_mymeta_data {
my $self = shift;
# If there's no existing META.yml there is nothing we can do
return undef unless -f 'META.yml';
# We need Parse::CPAN::Meta to load the file
unless ( eval { require Parse::CPAN::Meta; 1; } ) {
return undef;
}
# Merge the perl version into the dependencies
my $val = $self->Meta->{values};
my $perl = delete $val->{perl_version};
if ( $perl ) {
$val->{requires} ||= [];
my $requires = $val->{requires};
# Canonize to three-dot version after Perl 5.6
if ( $perl >= 5.006 ) {
$perl =~ s{^(\d+)\.(\d\d\d)(\d*)}{join('.', $1, int($2||0), int($3||0))}e
}
unshift @$requires, [ perl => $perl ];
}
# Load the advisory META.yml file
my @yaml = Parse::CPAN::Meta::LoadFile('META.yml');
my $meta = $yaml[0];
# Overwrite the non-configure dependency hashes
delete $meta->{requires};
delete $meta->{build_requires};
delete $meta->{recommends};
if ( exists $val->{requires} ) {
$meta->{requires} = { map { @$_ } @{ $val->{requires} } };
}
if ( exists $val->{build_requires} ) {
$meta->{build_requires} = { map { @$_ } @{ $val->{build_requires} } };
}
return $meta;
}
1;
Audio-Nama-1.216/script/ 0000755 0001750 0001750 00000000000 13544212627 014006 5 ustar jroth jroth Audio-Nama-1.216/script/nama 0000755 0001750 0001750 00000235141 13544212614 014652 0 ustar jroth jroth #!/usr/bin/env perl
require 5.10.1;
use Audio::Nama;
Audio::Nama::main();
__END__
=head1 NAME
B - multitrack recorder and digital audio workstation
=head1 SYNOPSIS
B [I] [I]
=head1 DESCRIPTION
A multitrack audio application for recording, effects
processing, editing, mixing, mastering and live
performance. It can also perform general-purpose audio
processing, such as 5.1 to stereo conversion. Nama uses
Ecasound as the audio processing engine.
=head2 Audio projects
Projects in Nama are audio networks of tracks and buses.
Tracks may contain one or more RIFF (.wav) files, as well as
effects, sends, inserts, marks, regions, fades,
edits and sequences. Tracks can host LADSPA, LV2 and
Ecasound plugins. Audio regions may be altered, duplicated,
time-shifted or replaced.
Audio processing is performed in realtime when a track is
played and may be cached (frozen) to a new audio file.
Project data is serialized as JSON. The complete history
is tracked by the git version control system. As a result,
projects can be managed using branches and tags, and provide
undo/redo.
Nama supports some MIDI functionality via midish.
=head2 Presets and templates
To facilitate reuse, a track's plugins and inserts can be
stored as an I. I apply effect
chains to groups of tracks. I are for
duplicating an entire project sans audio files.
=head2 Audio device
Nama performs Audio IO via JACK or ALSA. Soundcard IO goes
via JACK, if running, with transparent fallback to ALSA.
Nama supports Ladish Level 1 session handling.
=head2 User interfaces
Nama has fully featured terminal command prompt, a Tk
GUI, and experimental OSC and remote-command modes.
The command prompt can run Nama commands, Ecasound
interactive-mode commands, commands for the midish MIDI
recorder/player, shell commands and perl code. Commands and
filenames can be autocompleted using the TAB key. Command
history is available to browse with up and down arrows.
The help system provides documentation and keyword search
covering Nama commands and effects-processing
plugins.
The hotkey mode provides a convenient way to select, view,
and modify effect parameters.
=head1 OPTIONS
=over 12
=item B<--gui, -g>
Start Nama in GUI mode (default when Tk is available)
=item B<--text, -t>
Start Nama in text mode
=item B<--config, -f>
Specify configuration file (default: ~/.namarc)
=item B<--project-root, -d>
Specify project root directory
=item B<--use-pwd, -p>
Use current dir for all WAV and project files
=item B<--create-project, -c>
Create project if it doesn't exist
=item B<--net-eci, -n>
Use Ecasound's Net-ECI interface
=item B<--libecasoundc, -l>
Use Ecasound's libecasoundc interface
=item B<--save-alsa, -a>
Save/restore alsa state with project data
=item B<--help, -h>
This help display
=item B<--regenerate-effects-cache, -r>
Regenerate the effects data cache
=back
Debugging options:
=over 12
=item B<--no-state, -M>
Don't load project state
=item B<--no-static-effects-data, -S>
Don't load effects data
=item B<--no-static-effects-cache, -C>
Don't load the effects data cache
=item B<--no-reconfigure-engine, -R>
Don't autosave, autoreconfigure or git snapshot
=item B<--fake-jack, -J>
Simulate JACK environment
=item B<--fake-alsa, -A>
Simulate ALSA environment
=item B<--no-ecasound, -E>
Don't spawn Ecasound process
=item B<--execute-command, -X>
Supply a command to execute
=item B<--no-terminal, -T>
Don't initialize terminal
=item B<--no-fades, -F>
No fades on transport start/stop
=item B<--log, -L>
Log these (comma separated) categories
=back
=head1 CONTROLLING NAMA/ECASOUND
The Ecasound audio engine is configured through use of
I that define the signal processing network.
Nama serves as an intermediary, taking high-level user
commands, generating chain setups for user tasks such as
recording, playback, mixing, etc., and running the audio
engine.
=head2 Configuration Commands
Configuration commands affect I runs of the audio
engine. For example, B and B determine
whether the current track will get its audio stream from an
external (e.g. live) source, whether an existing audio file
will be played back, and whether a new audio file will be
recorded. Nama responds to these commands by reconfiguring
the engine and displaying the updated track status. See 'man
::ChainSetup' for details on how the chain setup created.
=head2 Realtime Commands
Once a chain setup is loaded and the engine is launched,
commands can be issued to control the realtime behavior of
the audio processing engine. These commands include
transport C and C, playback head repositioning
commands such C, C and C. Effects
may be added, modified or removed while the engine is
running.
=head2 Configuration
General configuration of sound devices and program options
is performed by editing the F<.namarc> file, which is
formatted as YAML. On Nama's first run, a default version of
F<.namarc> is placed in the user's home directory.
=head1 Tk GRAPHICAL UI
Invoked by default if Tk is installed, this interface
provides a subset of Nama's functionality on two
windows:
=head2 Main Window
The top section has buttons for creating, loading and saving
projects, adding tracks, adding effects to tracks. In
short, for setup.
Below are buttons for controlling the transport (start, stop
and friends) and for setting marks.
The GUI project name bar and time display change color to
indicate whether the upcoming operation will include live
recording (red), mixdown (yellow) or playback (green).
=head2 Effects Window
The B provides sliders for each effect
parameter of each track. Parameter range, defaults, and log/linear
scaling hints are automatically detected. Text-entry widgets
are used to enter parameters values for plugins without
hinted ranges. Any parameter label can be clicked to
add a parameter controller.
=head2 Waveform Window
Provides a conventional view with waveform and playback head.
=head2 Terminal Window
The command prompt is available the terminal window
and provides access to all of Nama's functions.
=head1 TEXT USER INTERFACE
Press the I key if necessary to get the
command prompt, which will look something like this:
=over 12
C>
=back
In this instance, 'sax' is the current track in the
'untitled' default project.
When using buses, the bus is indicated before the track:
=over 12
C>
=back
At the prompt, you can enter Nama and Ecasound commands, Perl code
preceded by C or shell code preceded by C.
Multiple commands on a single line are allowed if delimited
by semicolons. Usually the lines are split on semicolons and
the parts are executed sequentially, however if the line
begins with C or C the entire line (up to double
semicolons ';;' if present) will be given to the
corresponding interpreter.
You can access command history using up-arrow/down-arrow.
Type C for general help, C for help with
C, C for help with commands containing
the string C. C lists all
plugins/presets/controller containing both I and
I. Tab-completion is provided for Nama commands, Ecasound-iam
commands, plugin/preset/controller names, and project names.
Most commands have abbreviations, such as 'afx' for
'add-effect'. These are shown in the help listings.
=head1 TRACKS
Each track has a descriptive name (i.e. vocal) and an
integer track-number assigned when the track is created.
New user tracks initially belong to the Main bus.
Track output signals are usually mixed and pass through the
Main track on the way to soundcard for monitoring.
The following sections describes track attributes and
their effects.
=head2 Width
Specifying 'mono' means the track has one input channel, which
will be recorded as a mono WAV file. Mono track signals are
automatically duplicated to stereo and a pan effect is provided.
Specifying 'stereo' for a track means that two channels of
audio input will be recorded as an interleaved stereo WAV
file. You can also use a 'stereo' declaration to avoid the
automatic channel copy usually applied to single-channel
sources.
Specifying N channels for a track ('set width N') means N
successive input channels will be recorded as an N-channel
interleaved WAV file.
=head2 REC/PLAY/MON/OFF
Basic signal routing for each track is controlled by its
setting to REC, MON, PLAY or OFF.
The I setting prepares to connect the live track source.
The I setting prepares to connect the live track source and
record it to an audio file.
The I setting enqueues an audio file for playback from
disk as the track source.
The I setting tells Nama to remove the track from the
audio network. I status may result for a track when no
audio source is available. For example, a track with no
recorded audio files will show OFF status when set to PLAY.
=head2 Track output
By default a track belongs to the Main bus and is routed to
the Main track. This track provides a final fader before the
signal goes via ALSA or JACK to the audio device.
=head2 Bus setting
Buses can force the status of their member tracks to OFF.
Nama provides MON and OFF settings for buses.
OFF (set by C) removes all member tracks from the chain
setup, MON (set by C restores them.
The B command sets the Mixdown track to PLAY and the
Main bus to OFF.
=head2 Version Numbers
Multiple audio files ("takes") can be recorded for each track. These are
distinguished by a version number that increments with each
recording run, i.e. F, F, etc. All
audio files recorded in the same run have the same version
number.
The version numbers for track playback can be selected at
the bus or track level. By setting the bus version
to 5, you can play back version 5 of several tracks
at once. Version 5 could signify the fifth take of a song, or
the fifth song of a live recording session.
The track version setting, if present, overrides the bus
version setting. Setting the track version to zero restores
control of the version number to the bus.
The Main bus version setting does I propagate to
other buses.
=head2 Marks
Marks in Nama are similar to those in other audio editing
software. One limitation is that mark positions are relative
to the beginning of an Ecasound chain setup. If your project
involves a single track, and you will be shortening the
stream by setting a region to play, set any marks you need
I defining the region.
=head2 Regions
The C command allows you to define endpoints for a
portion of an audio file. You can then use the C
command to move the region to the desired time position.
If you use named marks as endpoints, the region will change
if the mark's position is adjusted.
Each track can have one region definition. To create
multiple regions, the C command takes a pair of
marks to create a read-only copy of the current track with
the specified region definition.
You can control this region as you would any other other
track, shifting the start time, applying effects, adjusting volume, etc.
=head3 Using Tracks from Other Projects
The C clones a read-only track from
another track, which may belong to a different project.
=head2 Effects
Each track gets volume and pan effects by default. New
effects added using C are applied before pan
volume controls. You can position effects anywhere you
choose using C or C.
=head3 Fades
Fades can be placed on any track. They
defined by mark position and duration. An additional volume
operator, -eadb, is applied to each track to host the
envelope controller that implements fades.
=head3 Sends and Inserts
The C command can route a track's post-fader output
to a soundcard channel or JACK client in addition to the
normal mixer input. Nama currently allows one aux send per
track.
The C command configures a pre- or post-fader
send-and-return to soundcard channels or JACK clients.
Wet and dry signal paths are provided, with a default
setting of 100% wet.
Each track can have one pre-fader and one post-fader insert.
=head2 Bunches
A bunch is just a list of track names. Using the C
keyword with the name of a bunch will apply the commands
that follow to all of the tracks in the bunch. A bunch can be
created with the C command. A bus name can also
be treated as a bunch.
=head2 Buses
B enable multiple tracks to be routed through a
single mix track before feeding the Main mixer bus (or
possibly, another bus.)
The following commands create a bus and assign
three tracks to it. The mix track takes the name of
the bus and is stereo by default.
# create a bus named Strings with a same-named mix track
add-bus Strings
# create tracks for the bus
add-tracks violin cello bass
# move the tracks from the Main bus (default) to the Strings bus
for violin cello bass; move-to-bus Strings
# use the mix track to control bus output volume
Strings vol - 10
=head3 Submixes
B are a type of bus used to provide instrument
monitors, or to send the outputs from multiple user tracks
to an external program such as jconverter.
=head1 ROUTING
=head2 General Notes
While Nama can address tracks by either name and track number,
Ecasound chain setups use the track number exclusively.
The Main track (mixer output) is always
chain 1, the Mixdown track is always chain 2.
Nama uses Ecasound loop devices where
necessary to connect two tracks, or to allow one track to
have multiple inputs or outputs. Each loop device adds one
buffer, which increases latency.
=head2 Flow Diagrams
Let's examine the signal flow from track 3, the first
available user track. Assume track 3 is named "sax".
We will divide the signal flow into track and mixer
sections. Parentheses show the chain id.
The stereo outputs of each user track terminate at
Main_in, a loop device at the mixer input.
=head3 Track, REC status
Sound device --+---(3)----> Main_in
/JACK client |
+---(R3)---> sax_1.wav
REC status indicates that the source of the signal is the
soundcard or JACK client. The input signal will be written
directly to a file except in the special preview and doodle
modes.
=head3 Track, PLAY status
sax_1.wav ------(3)----> Main_in
=head3 Mixer, with mixdown enabled
In the second part of the flow graph, the mixed signal is
delivered to an output device through the Main chain,
which can host effects. Usually the Main track
provides final control before audio output or mixdown.
Main_in --(1)--> Main_out --+--------> Sound device
|
+-->(2)--> Mixdown_1.wav
=head3 Mastering Mode
In mastering mode (invoked by C and released
C) the following network receives the Main
track signal as input and provides an output to the
soundcard or WAV file.
+- Low -+
| |
Main_in --- Eq --+- Mid -+--- Boost -> soundcard/wav_out
| |
+- High +
The B track hosts an equalizer.
The B, B and B tracks each apply a bandpass
filter, a compressor and a spatialiser.
The B track applies gain and a limiter.
These effects and their default parameters are defined
in the configuration file F<.namarc>.
=head2 Mixdown
The C command configures Nama for mixdown. The
Mixdown track is set to REC (equivalent to C)
and the audio monitoring output is turned off (equivalent to
C).
Mixdown proceeds after you start the transport.
As a convenience, Mixdown_nn.wav will be symlinked to
F<_nn.wav> or F<_nn.wav> in the
project directory. The latter format is used branches other
than the default F branch.) Corresponding encoded
files are created if the F option is set
in F<.namarc>. Acceptable values are a space-separated
list. The default is "mixdown_encodings: ogg mp3".
=head2 Preview, Doodle and Eager Modes
These non-recording modes, invoked by C and
C commands tweak the routing rules for special
purposes. B disables recording of WAV files
to disk. B disables PLAY inputs while
excluding any tracks with the same source as a currently
routed track. The C command releases both preview and
doodle modes.
The eager setting causes the engine to start immediately
following a reconfiguration.
=head2 Saving Projects
If git is available, projects are saved automatically after
each command and it is not necessary to explicitly save
your work.
When you type C, Settings related to the state of the
project are saved in the file F in the
project directory. F is tracked by git.
C updates several other data files as well:
F, also in the project directory, contains
data that is part of the project (such as command history,
track comments, and current operating modes) but with no direct
effect on the project audio.
F, in the project root directory
(usually F<~/nama>) contains system and user defined effect
chains.
=head3 Save without Git
C will save project state to a file of
that name. Similarly C will load the
corresponding file. The F<.json> suffix may be omitted if
"use_git: 0" is set in F<.namarc>.
=head3 Save with Git
If git is available, Nama uses it to store snapshots of
every step in the history of your project.
When you type C, the latest snapshot is
tagged with the name "initial-mix", which you can recall
later with the command C.
You can include a comment with the snapshot:
C
Nama lets you create new branches, starting at any snapshot.
To start a new branch called I starting at a
snapshot called I you would say:
C
If you want to go back to working on the master branch, use
C.
You can also issue native git commands at the Nama prompt.
=head3 Git history example
All projects begin on the "master" branch. Because this is
the default branch, it is not displayed in the prompt.
Otherwise "master" is not special in any way.
In the graphs below, the letters indicate
named snapshots.
create test-project
...
save a
...
save b
...
save c
---a---b---c (master)
get a
...
save d
...
save e
...
save f
d---e---f (a-branch)
/
-----a----b---c (master)
Now, you want to go back to try something different at "c":
get c
...
save g
d---e---f (a-branch)
/
----a----b---c (master)
\
g (c-branch CURRENT HEAD)
You could also go back to master, and restart
from there:
get master
...
save h
...
save i
d---e---f (a-branch)
/
----a----b---c---h---i (master CURRENT HEAD)
\
g (c-branch)
Merging of branches is not supported.
=head2 Exiting
When you type C Nama will automatically save your work
to F. If you I want this behavior, use
Ctrl-C to exit Nama.
=head2 Jack ports list file
Use I to ask Nama
to connect multiple JACK ports listed in a file
F to the input
port(s) of that track.
If the track is stereo, ports from the list are alternately
connected to left and right channels.
=head2 Track edits
An edit consists of audio clips and data structures
associated with a particular track and version. The edit
replaces part of the original audio file, allowing you to fix
wrong notes, or substitute one phrase for another.
Behind the scenes, the host track becomes the mix track to a
bus. Sources for the bus are the original audio track, and
zero or more edits, each represented by a hidden track.
Each track can host multiple edits. Edits are
non-destructive; they are achieved by using Ecasound's
ability to crossfade and sequence.
Before creating the edit, select the track and version to be edited.
You will now need to create three
marks:
=over 4
=item * play start point
=item * rec start point
=item * rec end point
=back
The edit will replace the audio between the rec start and
rec end points.
There are two ways to set these points.
=head3 set-edit-points command
Position the playback head a few seconds before the edit.
Enter the I command. This will start the
engine. Hit the B
key three times to designate the
playback start, punch-in and punch-out positions.
=head3 Specify points individually
Position the playback head at the position you want playback
for the edit to start. Enter the I
command.
Use the same procedure to set the rec start and rec end
positions using the I
and I commands.
=head3 Create the edit
Enter the I command to create the necessary
tracks and data structures.
Use I to confirm the edit positions. The
engine will run and you will hear the host track with the
target region removed. Playback will be restricted to the
edit region. You may use I to hear the clip to
be removed.
Use I to see the edit marks and I
to nudge them into perfect position.
Once you are satisfied with the mark positions, you are
ready to record your edit.
Enter I. Playback will begin at first mark. The
replacement clip will be recorded from the source specified
in the original track.
Each I command will record an additional version
on the edit track. I will delete (destructively)
the most recent audio clip and begin recording anew.
I deletes (destructively) the current edit.
You may specify another range for editing and use the
editing procedure again as many times as you like. Edits on
one track may not overlap.
=head3 Merging edits
I will recursively merge all edits applied to
the current track and version, creating a new version for
the track. This will freeze your edits against an
accidental change in mark, region or version settings.
I will label the edits by index and time.
I will restore normal playback mode
=head1 REMOTE CONTROL
You can send commands to Nama from a remote process, and
retrieve the result. Understand that this code opens a
remote execution hole.
In F<.namarc> you need something like:
remote_control_port: 57000
Then Nama will set up a listener for remote commands.
The usual return value will be a single newline.
However, if you send an 'eval' command followed by perl
code, the return value will be the result of the perl code
executed with a newline appended. If the result is a list,
the items will be joined by spaces into a single string.
For example, if you send this string:
eval $this_track->name
The return value will be the name of the current track.
If the result is an object or data structure, it will be
returned in a serialized form.
=head1 TEXT COMMANDS
=head2 Help commands
=head4 B (h) - Display help on Nama commands.
=over 8
help [ | | ]
help marks # display the help category marks and all commands containing marks
help 6 # display help on the effects category
help mfx # display help on modify-effect - shortcut mfx
=back
=head4 B (hfx he) - Display detailed help on LADSPA or LV2 effects.
=over 8
help-effect |
help-effect 1970
# display help on Fons Adriaensen's parametric EQ (LADSPA)
help-effect etd
# prints a short message to consult Ecasound manpage,
# where the etd chain operator is documented.
hfx lv2-vocProc
# display detailed help on the LV2 VocProc effect
=back
=head4 B (ffx fe) - Display one-line help for effects matching the search string(s).
=over 8
find-effect [ ... ]
find-effect compressor
# List all effects containing "compressor" in their name or parameters
fe feedback
# List all effects matching "feedback"
# (for example a delay with a feedback parameter)
=back
=head2 General commands
=head4 B (quit q) - Exit Nama, saving settings (the current project).
=over 8
exit
=back
=head4 B - Cache WAV directory contents (default)
=over 8
memoize
=back
=head4 B - Disable WAV directory caching.
=over 8
unmemoize
=back
=head2 Transport commands
=head4 B (s) - Stop transport. Stop the engine, when recording or playing back.
=over 8
stop
=back
=head4 B (t) - Start the transport rolling
=over 8
start
rec # prepare the curent track to be recorded.
start # Start the engine/transport rolling (play now!)
stop # Stop the engine, cleanup, prepare to review
=back
=head4 B (gp) - Get the current playhead position (in seconds).
=over 8
getpos
start # Start the engine.
gp # Get the current position of the playhead. Where am I?
=back
=head4 B (sp) - Set current playhead position (in seconds).
=over 8
setpos
setpos 65.5
=back
=head4 B (fw) - Move playback position forwards (in seconds).
=over 8
forward
fw 23.7
=back
=head4 B (rw) - Move playback position backwards (in seconds).
=over 8
rewind
rewind 6.5
=back
=head4 B (beg) - Set the playback head to the start. A synonym for setpos 0.
=over 8
to-start
=back
=head4 B (end) - Set the playback head to end minus 10 seconds.
=over 8
to-end
=back
=head4 B - Ecasound-only start. Nama will not monitor the transport.
For diagnostic use.
=over 8
ecasound-start
=back
=head4 B - Ecasound-only stop. Nama will not monitor the transport.
For diagnostic use.
=over 8
ecasound-stop
=back
=head4 B - Restart the Ecasound process. May help if Ecasound has crashed
or is behaving oddly.
=over 8
restart-ecasound
=back
=head4 B (song) - Enter the preview mode. Configure Nama for playback and
passthru of live inputs without recording (for mic test,
rehearsal, etc.)
=over 8
preview
rec # Set the current track to record from its source.
preview # Enter the preview mode.
start # Playback begins. You can play live, adjust effects,
# forward, rewind, etc.
stop # Stop processing audio.
arm # Restore to normal recording/playback mode.
=back
=head4 B (live) - Enter doodle mode. Passthru of live inputs without
recording. No playback. Intended for rehearsing and
adjusting effects.
=over 8
doodle
doodle # Switch into doodle mode.
start # start the audio engine.
(fool around)
stop # Stop processing audio.
arm # Return to normal mode, allowing playback and record to disk
=back
=head2 Mix commands
=head4 B (mxd) - Enter mixdown mode for subsequent engine runs. You will
record a new mix each time you use the start command
until you leave the mixdown mode using "mixoff".
=over 8
mixdown
mixdown # Enter mixdown mode
start # Start the transport. The mix will be recorded by the
# Mixdown track. The engine will run until the
# longest track ends. (After mixdown Nama places
# a symlink to the WAV file and possibly ogg/mp3
# encoded versions in the project directory.)
mixoff # Return to the normal mode.
=back
=head4 B (mxp) - Enter Mixdown play mode, setting user tracks to OFF
and only playing the Mixdown track. Use "mixoff" to
leave this mode.
=over 8
mixplay
mixplay # Enter the Mixdown play mode.
start # Play the Mixdown track.
stop # Stop playback.
mixoff # Return to normal mode.
=back
=head4 B (mxo) - Leave the mixdown or mixplay mode. Sets Mixdown track to OFF,
user tracks to MON.
=over 8
mixoff
=back
=head4 B - Normalize track volume levels and fix DC-offsets, then mixdown.
=over 8
automix
=back
=head4 B (mr) - Turn on the mastering mode, adding tracks Eq, Low, Mid, High
and Boost, if necessary. The mastering setup allows for one
EQ and a three-band multiband compression and a final
boosting stage. Using "master-off" to leave the mastering mode.
=over 8
master-on
mr # Turn on master mode.
start # Start the playback.
# Now you can adjust the Boost or global EQ.
stop # Stop the engine.
=back
=head4 B (mro) - Leave mastering mode. The mastering network is disabled.
=over 8
master-off
=back
=head2 Track commands
=head4 B (add new) - Create a new audio track.
=over 8
add-track
add-track clarinet
# create a mono track called clarinet with input
# from soundcard channel 1.
=back
=head4 B (amt) - Create a new midi track.
=over 8
add-midi-track
add-midi-track clarinet
=back
=head4 B - Create one or more new tracks in one go.
=over 8
add-tracks [ ... ]
add-tracks violin viola contra_bass
=back
=head4 B (link) - Create a read-only track, that uses audio files from another track.
=over 8
link-track []
link my_song_part1 Mixdown part_1
# Create a read-only track "part_1" in the current project
# using files from track "Mixdown" in project "my_song_part_1".
#
link-track compressed_piano piano
# Create a read-only track "compressed_piano" using files from
# track "piano". This is one way to provide wet and dry
# (processed and unprocessed) versions of same source.
# Another way would be to use inserts.
=back
=head4 B (import) - Import a sound file (wav, ogg, mp3, etc.) to the
current track, resampling it if necessary. The
imported file is set as current version.
=over 8
import-audio [ ]
import /home/samples/bells.flac
# import the file bells.flac to the current track
import /home/music/song.mp3 44100
# import song.mp3, specifying the frequency
=back
=head2 Midi commands
=head4 B (im) - Import a MIDI song file (MIDI tracks only)
=over 8
import-midi
=back
=head2 Track commands
=head4 B (route rt) - Set source and send for a track (see 'source' and 'send' commands)
=over 8
route-track
=back
=head4 B - Directly set current track parameters (use with care!).
=over 8
set-track
=back
=head4 B (rec) - Set the current track to record its source. Creates the
monitoring route if necessary. Recording to disk will begin
on the next engine start. Use the "mon" or "off" commands to
disable recording.
=over 8
record
rec
# Set the current track to record.
start
# A new version (take) will be written to disk,
# creating a file such as sax_1.wav. Other tracks
# may be recording or playing back as well.
stop
# Stop the recording/playback, automatically enter playback mode
=back
=head4 B - Set the current track to playback the currently selected version.
Creates the monitoring route if necessary. The selected audio file
will play the next time the engine starts.
=over 8
play
=back
=head4 B - Create a monitoring route for the current track at
the next opportunity.
=over 8
mon
=back
=head4 B - Remove the monitoring route for the current track and all
track I/O at the next opportunity. You can re-include it
using "mon", "play" or "rec" commands.
=over 8
off
=back
=head4 B (src r) - Set the current track's input (source), for example
to a soundcard channel, or JACK client name
=over 8
source |
| |
| | | 'jack' | 'null'
source 3
# Take input from soundcard channel 3 (3/4 if track is stereo)
#
source null
# Track's input is silence. This is useful for when an effect such
# as a metronome or signal generator provides a source.
#
source bus Strings
# set the Strings bus as source
#
source track trumpet
# set the track trumpet as source
#
source LinuxSampler
# set the JACK client named LinuxSampler as source
#
source synth:output_3
# use the signal from the JACK client synth, using the
# port output_3 (see the jackd and jack_lsp manpages
# for more information).
#
source jack
# This leaves the track input exposed as JACK ports
# such as Nama:sax_in_1 for manual connection.
#
source kit.ports
# The JACK ports listed in the file kit.ports (if it exists)
# will be connected to the track input.
#
# Ports are listed pairwise in the .ports files for stereo tracks.
# This is convenient for use with the Hydrogen drumkit,
# whose outputs use one JACK port per voice.
=back
=head4 B (aux) - Set an aux send for the current track. Remove sends with remove-send .
=over 8
send | |
send 3 # Send the track output to soundcard channel 3.
send jconvolver # Send the track output to the jconvolver JACK client.
=back
=head4 B (nosend noaux) - Remove aux send from the current track.
=over 8
remove-send
=back
=head4 B - Configure the current track to record two channels of audio
=over 8
stereo
=back
=head4 B - Configure the current track to record one channel of audio
=over 8
mono
=back
=head4 B (version ver) - Select a WAV file, by version number, for current track playback
(Overrides a bus-level version setting)
=over 8
set-version
piano # Select the piano track.
version 2 # Select the second recorded version
sh # Display information about the current track
=back
=head4 B - Remove the currently selected recording version from the
current track after confirming user intent. This DESTRUCTIVE
command removes the underlying audio file from your disk.
Use with caution.
=over 8
destroy-current-wav
=back
=head4 B (lver) - List WAV versions of the current track. This will print the
numbers.
=over 8
list-versions
list-versions # May print something like: 1 2 5 7 9
# The other versions might have been deleted earlier by you.
=back
=head4 B (v) - Change or show the current track's volume.
=over 8
vol [ [ + | - | / | * ] ]
vol * 1.5 # Multiply the current volume by 1.5
vol 75 # Set the current volume to 75
# Depending on your namarc configuration, this means
# either 75% of full volume (-ea) or 75 dB (-eadb).
vol - 5.7 # Decrease current volume by 5.7 (percent or dB)
vol # Display the volume setting of the current track.
=back
=head4 B (c cut) - Mute the current track by reducing the volume parameter.
Use "unmute" to restore the former volume level.
=over 8
mute
=back
=head4 B (nomute C uncut) - Restore previous volume level. It can be used after mute or solo.
=over 8
unmute
=back
=head4 B - Set the current track's volume to unity. This will change the volume to the default value (100% or 0 dB).
=over 8
unity
vol 55 # Set volume to 55
unity # Set volume to the unity value.
vol # Display the current volume (should be 100 or 0,
# depending on your settings in namarc.)
=back
=head4 B (sl) - Mute all tracks but the current track or the tracks or
bunches specified. You can reverse this with nosolo.
=over 8
solo [ | ] [ ] ...
solo # Mute all tracks but the current track.
nosolo # Unmute all tracks, restoring prior state.
solo piano bass Drums # Mute everything but piano, bass and Drums.
=back
=head4 B (nsl) - Unmute all tracks which have been muted by a solo command.
Tracks that had been muted before the solo command stay muted.
=over 8
nosolo
=back
=head4 B - Unmute all tracks that are currently muted
=over 8
all
piano # Select track piano
mute # Mute the piano track.
sax # Select the track sax.
solo # Mute other tracks
nosolo # Unmute other tracks (piano is still muted)
all # all tracks play
=back
=head4 B (p) - Change or display the current panning position of the
current track. Panning is moving the audio in the stereo
panorama between right and left. Position is given in percent.
0 is hard left and 100 hard right, 50% is dead centre.
=over 8
pan [ ]
pan 75 # Pan the track to a position between centre and hard right
p 50 # Move the current track to the centre.
pan # Show the current position of the track in the stereo panorama.
=back
=head4 B (pr) - Pan the current track hard right. this is a synonym for pan 100.
Can be reversed with pan-back.
=over 8
pan-right
=back
=head4 B (pl) - Pan the current track hard left. This is a synonym for pan 0.
Can be reversed with pan-back.
=over 8
pan-left
=back
=head4 B (pc) - Pan the current track to the centre. This is a synonym for pan 50.
Can be reversed with pan-back.
=over 8
pan-center
=back
=head4 B (pb) - Restore the current track's pan position prior to pan-left,
pan-right or pan-center commands.
=over 8
pan-back
=back
=head4 B (lt show) - Show a list of tracks, including their index number, volume,
pan position, recording status and source.
=over 8
show-tracks
=back
=head4 B (sha showa) - Like show-tracks, but includes hidden tracks as well. Useful for debugging.
=over 8
show-tracks-all
=back
=head2 Bus commands
=head4 B (shb) - List tracks in current or named bus
=over 8
show-bus [ ]
=back
=head2 Track commands
=head4 B (sh -fart) - Display full information about the current track: index, recording
status, effects and controllers, inserts, the selected
WAV version, and signal width (channel count).
=over 8
show-track
=back
=head2 Setup commands
=head4 B (shm) - Display the current record/playback mode. this will indicate the
mode (doodle, preview, etc.) and possible record/playback settings.
=over 8
show-mode
=back
=head2 Track commands
=head4 B (shl) - Display the latency information for the current track.
=over 8
show-track-latency
=back
=head2 Diagnostics commands
=head4 B (shla) - Dump all latency data.
=over 8
show-latency-all
=back
=head2 Track commands
=head4 B (srg) - Specify a playback region for the current track using marks.
Can be reversed with remove-region.
=over 8
set-region
sax # Select "sax" as the current track.
setpos 2.5 # Move the playhead to 2.5 seconds.
mark sax_start # Create a mark
sp 120.5 # Move playhead to 120.5 seconds.
mark sax_end # Create another mark
set-region sax_start sax_end
# Play only the audio from 2.5 to 120.5 seconds.
=back
=head4 B - Make a copy of the current track using the supplied a region
definition. The original track is untouched.
=over 8
add-region | | [ ]
sax # Select "sax" as the current track.
add-region sax_start 66.7 trimmed_sax
# Create "trimmed_sax", a copy of "sax" with a region defined
# from mark "sax_start" to 66.7 seconds.
=back
=head4 B (rrg) - Remove the region definition from the current track.
Remove the current track if it is an auxiliary track.
=over 8
remove-region
=back
=head4 B (shift playat pat) - Choose an initial delay before playing a track or region.
Can be reversed by unshift-track.
=over 8
shift-track |
piano # Select "piano" as current track.
shift 6.7 # Move the start of track to 6.7 seconds.
=back
=head4 B (unshift) - Restore the playback start time of a track or region to 0.
=over 8
unshift-track
=back
=head4 B (mods mod) - Add/show modifiers for the current track (man ecasound for details).
This provides direct control over Ecasound track modifiers
It is not needed for normal work.
=over 8
modifiers [ Audio file sequencing parameters ]
modifiers select 5 15.2
# Apply Ecasound's select modifier to the current track.
# The usual way to accomplish this is with a region definition.
=back
=head4 B (nomods nomod) - Remove modifiers from the current track.
=over 8
nomodifiers
=back
=head4 B