1 480 120 1 10 gtk-media-record True gtk-media-play True record_action gtk-media-stop True record_action False True normal Machina © 2013 David Robillard <http://drobilla.net> A MIDI sequencer based on probabilistic finite-state automata http://drobilla.net/software/machina Machina 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 2 of the License, or (at your option) any later version. Machina 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 Machina; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA David Robillard <d@drobilla.net> translator-credits machina.svg False False False True end 0 False 8 Machina Help False center-on-parent gtk-help dialog True False True False end gtk-close False True True True False True False False 0 False True end 0 True False 0 0 Nodes represent notes, which have a pitch and duration. When a node is highlighted green, it is playing. After a node is finished playing, play travels along the outgoing arcs, depending on their probability. Nodes with dashed borders are selectors. Only one successor is played after a selector, i.e. only one outgoing arc is traversed. A machine can be constructed with the mouse or by recording MIDI input. To record, press the record button and play some MIDI notes. To finish recording, press stop or play and the new nodes will be added to the machine. • Right click the canvas to create a new node • Middle click a node to learn a MIDI note • Click two nodes in succession to connect them • Double click a node to show its properties dialog • Ctrl+Left click a node to make it a selector • Ctrl+Left click an edge to decrease its probability • Ctrl+Right click an edge to increase its probability True True 8 2 closebutton1 False 1 Machina 640 480 machina.svg True False True False False True False _File True False gtk-open False True False True True gtk-save False True False True True gtk-save-as False True False True True True False _Import MIDI... False True False True True _Export MIDI... False True False True True True False Export _GraphViz... False True False True True True False gtk-quit False True False True True False True False _View True False False True False _Labels True False True False _Toolbar True True False True False False True False Arrange True False True False _Help True False gtk-help False True False True True gtk-about False True False True True False False 0 True False GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK True False icons False 2 True stop_action True False True False True play_action True False Play True False True record_action True False Record False True True False False False True False GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK Step record gtk-add False True True False False False True False True False False True True False GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK True True True True 0 True True Playback tempo 3 3 False False True True bpm_adjustment 1 True True True 1 True False BPM False False 2 False True False False False True False True False 4 1/ False True True False Quantization True True False False 0 True False True Quantize note type False False True True quantize_adjustment 1 True True 1 False True False False False True False Normal size gtk-zoom-100 False True False True False Zoom to contents gtk-zoom-fit False True True False False False True False True False 4 Chain False True True False Move selection to head node after connection True True True True 0 Fan False True True False Keep selection on tail node after connection True True chain_but True True 1 False True True 0 True False GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK icons False 2 True True False GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK False False True False GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK gtk-open False True True False GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK False False True False GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK Evolve machine (towards target MIDI) gtk-execute False True True False GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK False False True False GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK gtk-dialog-warning False True True False GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK False False True False GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK gtk-convert False True True False GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK False False True False GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK Add Node gtk-new False True False True False GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK Delete Node gtk-delete False True False True False GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK Adjust Node gtk-edit False True True False GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK False False True False GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK Add Edge gtk-connect False True False True False GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK Remove Edge gtk-disconnect False True False True False GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK Adjust Edge gtk-select-color False True False True 1 False True 1 True True True True True in True True 2 2 False 8 dialog1 False machina.svg dialog True True True False 8 True False end gtk-apply False True True True False True False False 0 gtk-cancel False True True True False True False False 1 gtk-ok False True True True True False True False False 2 False True end 0 True False 2 2 4 8 True True True False False True True 1 2 True 1 2 1 2 True False 0 Duration: 1 2 GTK_FILL True False 0 Note: GTK_FILL True True False False True True 1 True 1 2 True True 2 node_properties_apply_button node_properties_cancel_button node_properties_ok_button 1 256 16 2 8