Description

Describes graphs of signal processing blocks which process audio, MIDI, and other signals or messages. With appropriate plugins, these graphs can describe modular synthesizers, effects processors, and other signal processing devices.

Index

Classes
Properties
activity, arc, block, broadcast, canvasX, canvasY, enabled, file, head, incidentTo, polyphonic, polyphony, prototype, sprungLayout, tail, uiEmbedded, value

Reference

Class ingen:Arc

Arc

A connection between two ports. Graphs have a set of arcs which define how its component blocks and ports are connected.

Restriction on ingen:tail
owl:allValuesFrom lv2:Port
owl:cardinality 1
MUST have exactly one tail which is a lv2:Port.
Restriction on ingen:head
owl:allValuesFrom lv2:Port
owl:cardinality 1
MUST have exactly one head which is a lv2:Port.
In domain ofingen:incidentTo
ingen:head
ingen:tail
In range ofingen:arc

Class ingen:Block

Block

A signal processing block, which is typically either a plugin instance, or a graph. A block MUST have at least one ingen:prototype property which is a subclass of lv2:Plugin. When there are many such properties, an applications SHOULD use the most specific class it understands.

Sub-class ofingen:Node
lv2:PluginBase
In domain ofingen:enabled
ingen:prototype
In range ofingen:block

Class ingen:Graph

Graph

A collection of Blocks connected together. A Graph can itself be a Block within a parent Graph, and so on.

Sub-class ofingen:Plugin
In domain ofingen:file
ingen:arc
ingen:sprungLayout
ingen:block
ingen:polyphony

Class ingen:Internal

Internal

An internal 'plugin'

Sub-class ofingen:Plugin

Class ingen:Node

Node

An element of a Graph. A Node always has a valid path and symbol, with the possible exception of the root graph which may not have a symbol depending on context. Ingen uses restricted paths and/or URIs built from valid lv2:symbol components, so the symbol of a Node may be inferred from its URI if no explicit lv2:symbol property is given.

Class ingen:Plugin

Plugin

A class which can be instantiated into a ingen:Block. A plugin has a set of input and output "ports". In practice this class is semantically equivalent to lv2:Plugin, it only exists to allow the ingen ontology to be useful for "plugins" that aren't semantically LV2 plugins. See the LV2 specification for details about the required properties (rdf:type, doap:name, doap:license, and lv2:port).

Property ingen:activity

activity

Transient activity. This property is used in the protocol to communicate activity at ports, such as MIDI events or audio peaks. It should never be stored in persistent data.

OWL TypeDatatype Property
Domainlv2:Port

Property ingen:arc

arc

An arc contained in this graph.

OWL TypeObject Property
Domainingen:Graph
Rangeingen:Arc

Property ingen:block

block

Signifies a graph contains some block.

OWL TypeObject Property
Domainingen:Graph
Rangeingen:Block

Property ingen:broadcast

broadcast

Whether or not the port's value or activity should be broadcast to clients.

OWL TypeDatatype Property
Domainlv2:Port
Rangexsd:boolean

Property ingen:canvasX

canvas X

The X coordinate of an item on a canvas.

OWL TypeDatatype Property
Rangexsd:decimal

Property ingen:canvasY

canvas Y

The Y coordinate of an item on a canvas.

OWL TypeDatatype Property
Rangexsd:decimal

Property ingen:enabled

enabled

Signifies the block is or should be running.

OWL TypeDatatype Property
Domainingen:Block
Rangexsd:boolean

Property ingen:file

file

The file a Graph was loaded from.

OWL TypeDatatype Property
Domainingen:Graph
Rangexsd:anyURI

Property ingen:incidentTo

incident to

A special property used to describe any arc incident to a port or block. This is never saved in graph files, but is used in the control protocol to completely disconnect a Block or Port.

OWL TypeObject Property
Domainingen:Arc

Property ingen:polyphonic

polyphonic

Signifies this node should be replicated when it is part of a polyphonic graph. The amount of polyphony (i.e. the number of voices) is determined by the ingen:polyphony property of the containing graph. This is a boolean property which defines whether the parent can access each voice individually: All nodes within a graph are either polyphonic or not from their parent's perspective. An Node may itself have "internal" polyphony but not be polyphonic according to this property, if those voices are mixed down.

OWL TypeDatatype Property
Rangexsd:boolean

Property ingen:polyphony

polyphony

The amount of polyphony in a Graph. This defines the number of voices present on all :polyphonic children of this graph. Because a Graph is also a Block, a Graph may have both :polyphony and :polyphonic properties. These specify different things: :polyphony specifies the voice count of the Graph's children, and :polyphonic specifies whether the graph is seen as polyphonic to the Graph's parent.

OWL TypeDatatype Property
Domainingen:Graph
Rangexsd:integer

Property ingen:prototype

prototype

The object which this block is an instance of, or derived from.

OWL TypeObject Property
Domainingen:Block

Property ingen:sprungLayout

sprung layout

Whether or not the graph has a "sprung" force-directed layout.

OWL TypeDatatype Property
Domainingen:Graph
Rangexsd:boolean

Property ingen:tail

tail

The source/sending port of this arc

OWL TypeObject Property
Domainingen:Arc
Rangelv2:Port

Property ingen:uiEmbedded

UI embedded

Whether or not the block's GUI is embedded.

OWL TypeDatatype Property
Rangexsd:boolean

Property ingen:value

value

The current value of a port.

OWL TypeDatatype Property
Domainlv2:Port

History