Palette:moviePlayer and MIDI In CHOP: Difference between pages
mNo edit summary |
(cleaning) |
||
Line 1: | Line 1: | ||
{{Summary | {{Summary | ||
| | |opFilter=False | ||
|long=The MIDI In CHOP reads Note events, Controller events, Program Change events, System Exclusive messages and Timing events from both MIDI devices and files. See also [[MIDI In Map CHOP]]. | |||
The MIDI In CHOP receives MIDI events from MIDI devices connected to the serial port, reads MIDI events internal to the workstation (i.e. the built-in software synth), and interprets musical scores in MIDI files. Supported MIDI events are: | |||
|long=The | : Note On, Note Off | ||
: Polyphonic Aftertouch | |||
: Channel Pressure | |||
: Program Change | |||
: Control Change (MIDI controller devices) | |||
: Pitch Wheel | |||
: Timer Events including beat pulses | |||
: Bar Messages | |||
: Start, Stop, Continue | |||
: Song Position Pointer | |||
: System Exclusive Messages | |||
MIDI events arriving on separate MIDI channels may be recorded on separate CHOP channels. Also, any number of MIDI CHOPs can read from the same or different sources. TouchDesigner can be configured such that MIDI Start, Stop, or Continue events can control the [[Timeline]] and [[Beat Dialog]]. | |||
The 'Simplified Output' option creates a channel for every type of MIDI event received, so number of channels expands while the devices is being used. No need to specify name, channel and index patterns. | |||
'''Note''': The values of the MIDI inputs are saved into the TouchDesigner .toe file, and are restored when the file is reloaded. The physical controllers may be in a different position when the .toe is restarted, causing the values to jump when the controllers are moved. This is unavoidable. | |||
See also the [[MIDI In DAT]], [[MIDI Event DAT]], [[MIDI In Map CHOP]], [[MIDI Out CHOP]]. | |||
|opLicense=Non-Commercial | |||
|opClass=midiinCHOP_Class | |||
|opLabel=MIDI In | |||
|opFamily=CHOP | |||
|opType=midiin | |||
On | |short=The MIDI In CHOP reads Note events, Controller events, Program Change events, System Exclusive messages and Timing events from both MIDI devices and files. | ||
|opCategories= | |||
}} | |||
| | |||
|opFamily= | |||
| | |||
}} | |||
{{ParameterPage | {{ParameterPage | ||
|opFamily= | |opFamily=CHOP | ||
|pageName= | |pageName=Source | ||
|items={{Parameter | |items={{Parameter | ||
|parName=active | |||
|parName= | |||
|parOrder=0 | |parOrder=0 | ||
| | |parLabel=Active | ||
|opFamily=CHOP | |||
|opFamily= | |opType=midiin | ||
|opType= | |parSummary=Enable or disable the MIDI In CHOP. | ||
| | |parType=Toggle | ||
|parType= | |||
|parReadOnly= | |parReadOnly= | ||
| | |parItems= | ||
}} | |||
{{Parameter | {{Parameter | ||
|parName=source | |||
|parName= | |||
|parItems={{ParameterItem | |parItems={{ParameterItem | ||
|opFamily= | |itemName=device | ||
|parName= | |opFamily=CHOP | ||
|itemLabel= | |parName=source | ||
| | |itemLabel=Device | ||
|itemSummary= | |||
}}<!-- | |||
-->{{ParameterItem | -->{{ParameterItem | ||
| | |itemName=file | ||
| | |opFamily=CHOP | ||
| | |parName=source | ||
| | |itemLabel=File | ||
|itemSummary= | |itemSummary= | ||
}} | }} | ||
|parOrder=1 | |||
| | |parLabel=MIDI Source | ||
| | |opFamily=CHOP | ||
| | |opType=midiin | ||
| | |parSummary=Get MIDI input from a device or a file. | ||
|parType= | |parType=Menu | ||
|parReadOnly= | |parReadOnly= | ||
}} | |||
{{Parameter | {{Parameter | ||
| | |parName=device | ||
| | |parOrder=2 | ||
|parLabel= | |parLabel=Device Table | ||
| | |opFamily=CHOP | ||
|parType= | |opType=midiin | ||
|parSummary=Path to the MIDI device [[Table DAT]] | |||
|parType=DAT | |||
|parReadOnly= | |parReadOnly= | ||
| | |parItems= | ||
}} | |||
{{Parameter | {{Parameter | ||
| | |parName=id | ||
| | |parOrder=3 | ||
|parLabel= | |parLabel=Device ID | ||
| | |opFamily=CHOP | ||
|parType= | |opType=midiin | ||
|parSummary=Specify the id of which device to use. | |||
|parType=Str | |||
|parReadOnly= | |parReadOnly= | ||
| | |parItems= | ||
}} | |||
{{Parameter | {{Parameter | ||
| | |parName=file | ||
| | |parOrder=4 | ||
|parLabel= | |parLabel=MIDI File | ||
| | |opFamily=CHOP | ||
|parType= | |opType=midiin | ||
|parSummary=If MIDI file is selected as the MIDI source use this field to specify the name of the MIDI file to read. The file can be read in from disk or from the web. Use http:// when specifying a URL. | |||
|parType=File | |||
|parReadOnly= | |parReadOnly= | ||
| | |parItems= | ||
}} | |||
{{Parameter | {{Parameter | ||
| | |parName=entire | ||
| | |parOrder=5 | ||
|parLabel= | |parLabel=Read Entire MIDI File | ||
| | |opFamily=CHOP | ||
|parType= | |opType=midiin | ||
|parSummary=If enabled, the entire MIDI file is read. Otherwise, the Start and End parameters on the Channel page determine the segment of the file to read. | |||
|parType=Toggle | |||
|parReadOnly= | |parReadOnly= | ||
|parSummary= | |parItems= | ||
|parOrder= | }} | ||
|parItems=}} | {{Parameter|parName=resetchannels | ||
|parOrder=18 | |||
|parLabel=Reset Channels | |||
|opFamily=CHOP | |||
|opType=midiin | |||
|parSummary=Deletes all channels when set to On, new channels will not be added until Reset Channels is turned Off. | |||
|parType=Toggle | |||
|parReadOnly= | |||
|parItems= | |||
}} | |||
{{Parameter|parName=resetchannelspulse | |||
|parOrder=19 | |||
|parLabel=Reset Channels Pulse | |||
|opFamily=CHOP | |||
|opType=midiin | |||
|parSummary=Instantly deletes all channels. | |||
|parType=Pulse | |||
|parReadOnly= | |||
|parItems= | |||
}} | |||
{{Parameter|parName=resetvalues | |||
|parOrder=18 | |||
|parLabel=Reset Values | |||
|opFamily=CHOP | |||
|opType=midiin | |||
|parSummary=Resets all channel values to 0 when On, channel values will not be updated until Reset Values is turned Off. | |||
|parType= | |||
|parReadOnly= | |||
|parItems= | |||
}} | |||
{{Parameter|parName=resetchannelspulse | |||
|parOrder=19 | |||
|parLabel=Reset Channels Pulse | |||
|opFamily=CHOP | |||
|opType=midiin | |||
|parSummary=Instantly resets all channels to 0. | |||
|parType=Pulse | |||
|parReadOnly= | |||
|parItems= | |||
}} | |||
{{Parameter | {{Parameter | ||
| | |parName=simplified | ||
| | |parOrder=6 | ||
|parLabel= | |parLabel=Simplified Output | ||
| | |opFamily=CHOP | ||
|opType=midiin | |||
|parSummary=When this is on channels are automatically created when MIDI signal is detected from the selected MIDI device. | |||
|parType=Toggle | |parType=Toggle | ||
|parReadOnly= | |parReadOnly= | ||
| | |parItems= | ||
}} | |||
{{Parameter | {{Parameter | ||
|parName=onebased | |||
|parOrder=7 | |||
|parLabel=1 Based Index | |||
|parName= | |opFamily=CHOP | ||
|opType=midiin | |||
|parSummary=Make the index 1 based instead of the default 0 based. | |||
|parOrder= | |||
| | |||
|opFamily= | |||
|opType= | |||
| | |||
|parType=Toggle | |parType=Toggle | ||
|parReadOnly= | |parReadOnly= | ||
| | |parItems= | ||
}} | |||
{{Parameter | {{Parameter | ||
| | |parName=channel | ||
| | |parOrder=8 | ||
|parLabel= | |parLabel=MIDI Channels | ||
| | |opFamily=CHOP | ||
|parType= | |opType=midiin | ||
|parSummary=The CHOP may read from any number of MIDI channels, numbered 1-16. Ranges and multiple entries are supported (i.e. "1 4 6", "1-7 12", "1-5:2"). | |||
: If Channel Prefix is left blank, then the input streams from multiple MIDI channels will be combined into one set of CHOP channels (i.e., a "note 64 on" event on channel 12 followed by a "note 64 off" event on channel 8 appears in the note 64 CHOP channel as a single note). | |||
|parType=Str | |||
|parReadOnly= | |parReadOnly= | ||
| | |parItems= | ||
}} | |||
{{Parameter | {{Parameter | ||
| | |parName=prefix | ||
| | |parOrder=9 | ||
|parLabel= | |parLabel=Channel Prefix | ||
| | |opFamily=CHOP | ||
|parType= | |opType=midiin | ||
|parSummary=When recording from multiple MIDI channels, putting a string like "ch" in this parameter causes the MIDI channel to be split into separate CHOP channels per MIDI channel. Otherwise the MIDI channels are all merged into one set of CHOP channels. | |||
|parType=Str | |||
|parReadOnly= | |parReadOnly= | ||
| | |parItems= | ||
| | }} | ||
|pageSummary= | |||
}} | |||
{{ParameterPage | |||
|opFamily=CHOP | |||
|pageName=Record | |||
|items={{Parameter | |||
|parName=recordtype | |||
|parItems={{ParameterItem | |parItems={{ParameterItem | ||
|opFamily= | |itemName=single | ||
|parName= | |opFamily=CHOP | ||
|itemLabel= | |parName=recordtype | ||
| | |itemLabel=Single Frame | ||
|itemSummary=This only outputs the current value of notes, controllers, etc. It does not retain prior values. It creates a CHOP at frame 1 always, so the CHOP causes cooking only when MIDI events come in. | |||
}}<!-- | |||
-->{{ParameterItem | -->{{ParameterItem | ||
|opFamily= | |itemName=current | ||
|parName= | |opFamily=CHOP | ||
|itemLabel= | |parName=recordtype | ||
|itemName= | |itemLabel=Current Frame | ||
|itemSummary=}} | |itemSummary=Same as "Single Frame", but the CHOP frame is always at the current frame, so the CHOP changes every frame, causing other CHOPs to recook every frame. | ||
}}<!-- | |||
-->{{ParameterItem | |||
|itemName=ind | |||
|opFamily=CHOP | |||
|parName=recordtype | |||
|itemLabel=Current Time Slice | |||
|itemSummary=The CHOP frame is always at the current [[Time Slice]]. | |||
}}<!-- | |||
-->{{ParameterItem | |||
|itemName=timeline | |||
|opFamily=CHOP | |||
|parName=recordtype | |||
|itemLabel=Full Length | |||
|itemSummary=The entire length of the timeline is recorded. | |||
}} | |||
|parOrder=0 | |||
|parLabel=Record Method | |||
|opFamily=CHOP | |||
|opType=midiin | |||
|parSummary=Determine what to record. | |||
|parType=Menu | |||
|parReadOnly= | |||
}} | |||
{{Parameter | {{Parameter | ||
| | |parName=record | ||
| | |parOrder=1 | ||
|parLabel= | |parLabel=Record | ||
| | |opFamily=CHOP | ||
|opType=midiin | |||
|parSummary=This parameter is used as a button to start and stop recording into the CHOP channels. | |||
|parType=Toggle | |parType=Toggle | ||
|parReadOnly= | |parReadOnly= | ||
| | |parItems= | ||
}} | |||
|pageSummary=The parameters here are only enabled when 'Simplied Output' on the Source Page is Off. | |||
}} | |||
}} | |||
{{ParameterPage | {{ParameterPage | ||
|opFamily= | |opFamily=CHOP | ||
|pageName= | |pageName=Note | ||
|items={{Parameter | |items={{Parameter | ||
| | |parName=notename | ||
| | |1= notenumber (i.e. "n64"). | ||
|parLabel= | |parOrder=0 | ||
| | |parLabel=Note Name | ||
|parType= | |opFamily=CHOP | ||
|opType=midiin | |||
|parSummary=Put an "n" in here to generate channels for note events. It is the base name of the CHOP channel used to record notes. If blank, notes are ignored. If the Note Output parameter is set to Separate Channels, then CHOP channels will be created for each note in the Note Scope, of the form: notename | |||
|parType=Str | |||
|parReadOnly= | |parReadOnly= | ||
|parItems= | |||
}} | |||
|parItems= | |||
}} | |||
{{Parameter | {{Parameter | ||
| | |parName=notescope | ||
| | |parOrder=1 | ||
|parLabel= | |parLabel=Note Scope | ||
| | |opFamily=CHOP | ||
|parType= | |opType=midiin | ||
|parSummary=The scope of notes to record. Multiple ranges and notes can be recorded (i.e., "50-60", "64 65 66 70-80"). | |||
|parType=Str | |||
|parReadOnly= | |parReadOnly= | ||
| | |parItems= | ||
}} | |||
{{Parameter | {{Parameter | ||
|opFamily= | |parName=notemeth | ||
| | |parItems={{ParameterItem | ||
| | |itemName=mult | ||
| | |opFamily=CHOP | ||
| | |parName=notemeth | ||
| | |itemLabel=One Multiplexed Channel | ||
| | |itemSummary=One CHOP channel per MIDI channel is used for all notes. The value in the note channel is the number of the note currently playing (in the case of multiple notes playing, the most recent note is selected). | ||
}}<!-- | |||
-->{{ParameterItem | |||
|itemName=sep | |||
|opFamily=CHOP | |||
|parName=notemeth | |||
|itemLabel=Separate Channels | |||
|itemSummary=Each note number gets its own CHOP channel. | |||
}} | |||
|parOrder=2 | |parOrder=2 | ||
| | |parLabel=Note Output | ||
|opFamily=CHOP | |||
|opFamily= | |opType=midiin | ||
|opType= | |||
|parSummary= | |parSummary= | ||
|parType=Menu | |parType=Menu | ||
|parReadOnly= | |parReadOnly= | ||
}} | |||
| | {{Parameter | ||
|parName=velocity | |||
|parItems={{ParameterItem | |parItems={{ParameterItem | ||
|opFamily= | |itemName=veloff | ||
|parName= | |opFamily=CHOP | ||
|itemLabel= | |parName=velocity | ||
| | |itemLabel=Off | ||
|itemSummary=Velocity is not recorded. | |||
}}<!-- | |||
-->{{ParameterItem | -->{{ParameterItem | ||
|opFamily= | |itemName=velencode | ||
|parName= | |opFamily=CHOP | ||
|itemLabel= | |parName=velocity | ||
| | |itemLabel=Note Amplitude | ||
|itemSummary=The velocity is recorded as the amplitude of the note. Only valid when Note Output is set to Separate Channels. | |||
}}<!-- | |||
-->{{ParameterItem | -->{{ParameterItem | ||
|itemName=velsep | |||
|opFamily=CHOP | |||
|parName=velocity | |||
|itemName= | |itemLabel=Separate Channels | ||
|itemSummary=Velocity is recorded in separate CHOP channels. Each note channel will have a corresponding velocity channel. | |||
}} | |||
|opFamily= | |parOrder=3 | ||
|parName= | |parLabel=Velocity | ||
|itemLabel= | |opFamily=CHOP | ||
| | |opType=midiin | ||
| | |||
|parLabel= | |||
| | |||
| | |||
|parSummary= | |parSummary= | ||
|parType=Menu | |||
|parType= | |||
|parReadOnly= | |parReadOnly= | ||
}} | |||
{{Parameter | {{Parameter | ||
| | |parName=velname | ||
| | |parOrder=4 | ||
|parLabel= | |parLabel=Velocity Name | ||
| | |opFamily=CHOP | ||
|parType= | |opType=midiin | ||
|parSummary=When Velocity is set to Separate Channels, this parameter is the base name of the Velocity CHOP channel (try "v"). If blank, no velocity channels will be recorded. | |||
|parType=Str | |||
|parReadOnly= | |parReadOnly= | ||
| | |parItems= | ||
}} | |||
{{Parameter | {{Parameter | ||
| | |parName=aftername | ||
| | |parOrder=5 | ||
|parLabel= | |parLabel=Aftertouch Name | ||
| | |opFamily=CHOP | ||
|parType= | |opType=midiin | ||
|parSummary=The base name of the polyphonic Aftertouch CHOP channels. One aftertouch channel is created for each note in the Note Scope. If blank, no aftertouch channels will be created. | |||
|parType=Str | |||
|parReadOnly= | |parReadOnly= | ||
| | |parItems= | ||
}} | |||
{{Parameter | {{Parameter | ||
| | |parName=pressname | ||
| | |parOrder=6 | ||
|parLabel= | |parLabel=Pressure Name | ||
| | |opFamily=CHOP | ||
|parType= | |opType=midiin | ||
|parSummary=The name of the Channel Pressure channel. If multiple channels are being recorded, all channel pressure changes of interest will be recording on this CHOP channel. If blank, this channel will not be created. | |||
|parType=Str | |||
|parReadOnly= | |parReadOnly= | ||
| | |parItems= | ||
}} | |||
{{Parameter | {{Parameter | ||
|opFamily= | |parName=notenorm | ||
| | |parItems={{ParameterItem | ||
|parLabel= | |itemName=off | ||
| | |opFamily=CHOP | ||
|parType= | |parName=notenorm | ||
|itemLabel=None | |||
|itemSummary=When Normalize is Off, 7 bit controllers will return values in the range 0-127 and 14 bit controllers will return values in the range 0-16383. | |||
}}<!-- | |||
-->{{ParameterItem | |||
|itemName=0to1 | |||
|opFamily=CHOP | |||
|parName=notenorm | |||
|itemLabel=0 to 1 | |||
|itemSummary=These values are normalized to lie in the range 0 to 1. | |||
}} | |||
|parOrder=7 | |||
|parLabel=Normalize | |||
|opFamily=CHOP | |||
|opType=midiin | |||
|parSummary=Note values can be normalized for convenience: | |||
|parType=Menu | |||
|parReadOnly= | |parReadOnly= | ||
}} | |||
{{Parameter | {{Parameter | ||
|parName=pitchname | |||
|parOrder=8 | |||
|parLabel=Pitch Wheel Name | |||
|parName= | |opFamily=CHOP | ||
|opType=midiin | |||
|parSummary=The name of the Pitch Wheel CHOP channel. Pitch wheel values range from -1 to +1. If blank, this channel will not be created. Put "p" in here to generate a channel. | |||
|parType=Str | |||
|parOrder= | |||
|parLabel= | |||
|opFamily= | |||
|opType= | |||
|parSummary= | |||
|parType= | |||
|parReadOnly= | |parReadOnly= | ||
| | |parItems= | ||
}} | |||
| | |pageSummary=The parameters here are only enabled when 'Simplied Output' on the Source Page is Off. | ||
}} | }} | ||
{{ParameterPage | {{ParameterPage | ||
|opFamily= | |opFamily=CHOP | ||
|pageName= | |pageName=Control | ||
|items={{Parameter | |items={{Parameter | ||
| | |parName=controlname | ||
| | |parOrder=0 | ||
|parLabel= | |parLabel=Controller Name | ||
| | |opFamily=CHOP | ||
|parType= | |opType=midiin | ||
|parSummary=The base name of the Control Change CHOP channels. The channel names are appended with the controller index (0-127). If blank, control changes will not be recorded. It typically contains "c". | |||
|parType=Str | |||
|parReadOnly= | |parReadOnly= | ||
| | |parItems= | ||
| | }} | ||
{{Parameter | |||
|parName=controltype | |||
|parItems={{ParameterItem | |parItems={{ParameterItem | ||
|opFamily= | |itemName=index | ||
|parName= | |opFamily=CHOP | ||
|itemLabel= | |parName=controltype | ||
|itemName= | |itemLabel=By Index Only | ||
|itemSummary=}}<!-- | |itemSummary= | ||
}}<!-- | |||
-->{{ParameterItem | |||
|itemName=n0 | |||
|opFamily=CHOP | |||
|parName=controltype | |||
|itemLabel=Bank Select | |||
|itemSummary= | |||
}}<!-- | |||
-->{{ParameterItem | |||
|itemName=n1 | |||
|opFamily=CHOP | |||
|parName=controltype | |||
|itemLabel=Modulation Wheel | |||
|itemSummary= | |||
}}<!-- | |||
-->{{ParameterItem | |||
|itemName=n2 | |||
|opFamily=CHOP | |||
|parName=controltype | |||
|itemLabel=Breath Control | |||
|itemSummary= | |||
}}<!-- | |||
-->{{ParameterItem | |||
|itemName=n3 | |||
|opFamily=CHOP | |||
|parName=controltype | |||
|itemLabel=Foot Controller | |||
|itemSummary= | |||
}}<!-- | |||
-->{{ParameterItem | |||
|itemName=n4 | |||
|opFamily=CHOP | |||
|parName=controltype | |||
|itemLabel=Portamento Time | |||
|itemSummary= | |||
}}<!-- | |||
-->{{ParameterItem | |||
|itemName=n5 | |||
|opFamily=CHOP | |||
|parName=controltype | |||
|itemLabel=Data Entry | |||
|itemSummary= | |||
}}<!-- | |||
-->{{ParameterItem | |||
|itemName=n6 | |||
|opFamily=CHOP | |||
|parName=controltype | |||
|itemLabel=Channel Volume | |||
|itemSummary= | |||
}}<!-- | |||
-->{{ParameterItem | |||
|itemName=n7 | |||
|opFamily=CHOP | |||
|parName=controltype | |||
|itemLabel=Balance | |||
|itemSummary= | |||
}}<!-- | |||
-->{{ParameterItem | |||
|itemName=n8 | |||
|opFamily=CHOP | |||
|parName=controltype | |||
|itemLabel=Pan | |||
|itemSummary= | |||
}}<!-- | |||
-->{{ParameterItem | |||
|itemName=n9 | |||
|opFamily=CHOP | |||
|parName=controltype | |||
|itemLabel=Expression Control | |||
|itemSummary= | |||
}}<!-- | |||
-->{{ParameterItem | |||
|itemName=n10 | |||
|opFamily=CHOP | |||
|parName=controltype | |||
|itemLabel=Effect Control 1-2 | |||
|itemSummary= | |||
}}<!-- | |||
-->{{ParameterItem | |||
|itemName=n11 | |||
|opFamily=CHOP | |||
|parName=controltype | |||
|itemLabel=14 bit General Purpose 1-4 | |||
|itemSummary= | |||
}}<!-- | |||
-->{{ParameterItem | |||
|itemName=n12 | |||
|opFamily=CHOP | |||
|parName=controltype | |||
|itemLabel=Sustain on/off | |||
|itemSummary= | |||
}}<!-- | |||
-->{{ParameterItem | |||
|itemName=n13 | |||
|opFamily=CHOP | |||
|parName=controltype | |||
|itemLabel=Portamento on/off | |||
|itemSummary= | |||
}}<!-- | |||
-->{{ParameterItem | |||
|itemName=n14 | |||
|opFamily=CHOP | |||
|parName=controltype | |||
|itemLabel=Sustenuto on/off | |||
|itemSummary= | |||
}}<!-- | |||
-->{{ParameterItem | |||
|itemName=n15 | |||
|opFamily=CHOP | |||
|parName=controltype | |||
|itemLabel=Soft Pedal on/off | |||
|itemSummary= | |||
}}<!-- | |||
-->{{ParameterItem | |||
|itemName=n16 | |||
|opFamily=CHOP | |||
|parName=controltype | |||
|itemLabel=Legato Footswitch on/off | |||
|itemSummary= | |||
}}<!-- | |||
-->{{ParameterItem | |||
|itemName=n17 | |||
|opFamily=CHOP | |||
|parName=controltype | |||
|itemLabel=Hold 2 on/off | |||
|itemSummary= | |||
}}<!-- | |||
-->{{ParameterItem | |||
|itemName=n18 | |||
|opFamily=CHOP | |||
|parName=controltype | |||
|itemLabel=Sound Controller 1-10 | |||
|itemSummary= | |||
}}<!-- | |||
-->{{ParameterItem | |||
|itemName=n19 | |||
|opFamily=CHOP | |||
|parName=controltype | |||
|itemLabel=7 bit General Purpose 5-8 | |||
|itemSummary= | |||
}}<!-- | |||
-->{{ParameterItem | |||
|itemName=n20 | |||
|opFamily=CHOP | |||
|parName=controltype | |||
|itemLabel=Portamento Control | |||
|itemSummary= | |||
}}<!-- | |||
-->{{ParameterItem | -->{{ParameterItem | ||
|opFamily= | |itemName=n21 | ||
|parName= | |opFamily=CHOP | ||
|itemLabel= | |parName=controltype | ||
| | |itemLabel=Effect Depth 1-5 | ||
|itemSummary= | |||
}}<!-- | |||
-->{{ParameterItem | -->{{ParameterItem | ||
|opFamily= | |itemName=n22 | ||
|parName= | |opFamily=CHOP | ||
|itemLabel= | |parName=controltype | ||
| | |itemLabel=Non-Registered Parameter | ||
|itemSummary= | |||
}}<!-- | |||
-->{{ParameterItem | -->{{ParameterItem | ||
| | |itemName=n23 | ||
| | |opFamily=CHOP | ||
| | |parName=controltype | ||
| | |itemLabel=Registered Parameter | ||
|itemSummary= | |itemSummary= | ||
}} | }} | ||
|parOrder=1 | |||
| | |parLabel=Controller Type | ||
| | |opFamily=CHOP | ||
| | |opType=midiin | ||
| | |parSummary=There are 128 different controllers available. By choosing By Index Only, you can specify any number of controllers in the Control Index parameter. Otherwise, you can select a controller from the list from this menu. Some controllers have multiple instances, such as Sound Controllers 1-10. Selecting a controller with multiple instances allows you to use the Control Index parameter to select which instances you want. Any invalid control indices will be ignored. | ||
|parType= | |parType=Menu | ||
|parReadOnly= | |parReadOnly= | ||
}} | |||
{{Parameter | {{Parameter | ||
|parName=controlind | |||
|parName= | |||
|parOrder=2 | |parOrder=2 | ||
| | |parLabel=Controller Index | ||
|opFamily=CHOP | |||
|opFamily= | |opType=midiin | ||
|opType= | |parSummary=Used to select controllers by number, or multiple controllers by ranges. When in By Index Only Controller Type mode, you can select up to the full 128 controllers or sub-ranges thereof (i.e. "1-10", "2 34 70", "1-32 70-80:2"). | ||
| | |parType=Str | ||
|parType= | |||
|parReadOnly= | |parReadOnly= | ||
| | |parItems= | ||
}} | |||
{{Parameter | {{Parameter | ||
|opFamily= | |parName=format | ||
| | |parItems={{ParameterItem | ||
|parLabel= | |itemName=7bit | ||
| | |opFamily=CHOP | ||
|parType= | |parName=format | ||
|itemLabel=7 bit Controllers | |||
|itemSummary= | |||
}}<!-- | |||
-->{{ParameterItem | |||
|itemName=14bit | |||
|opFamily=CHOP | |||
|parName=format | |||
|itemLabel=14 bit Controllers | |||
|itemSummary= | |||
}} | |||
|parOrder=3 | |||
|parLabel=Controller Format | |||
|opFamily=CHOP | |||
|opType=midiin | |||
|parSummary=Some controllers can be paired together to form 14 bit controllers, rather than the normal 7 bit controllers (controller indices 0-31, 98 and 100). Selecting 14 bit Controllers interprets a pair as one 14 bit controller. Otherwise, they are interpreted as separate 7 bit Controllers. | |||
|parType=Menu | |||
|parReadOnly= | |parReadOnly= | ||
}} | |||
{{Parameter | {{Parameter | ||
|parName=norm | |||
|parName= | |||
|parItems={{ParameterItem | |parItems={{ParameterItem | ||
|opFamily= | |itemName=off | ||
|parName= | |opFamily=CHOP | ||
|parName=norm | |||
|itemLabel=None | |itemLabel=None | ||
|itemName= | |itemSummary=When Normalize is Off, 7 bit controllers will return values in the range 0-127 and 14 bit controllers will return values in the range 0-16383. | ||
|itemSummary=}}<!-- | }}<!-- | ||
-->{{ParameterItem | |||
|itemName=0to1 | |||
|opFamily=CHOP | |||
|parName=norm | |||
|itemLabel=0 to 1 | |||
|itemSummary=These values are normalized to lie in the range 0 to 1. | |||
}}<!-- | |||
-->{{ParameterItem | |||
|itemName=-1to1 | |||
|opFamily=CHOP | |||
|parName=norm | |||
|itemLabel=-1 to 1 | |||
|itemSummary=These values are normalized to lie in the range -1 to +1. | |||
}}<!-- | |||
-->{{ParameterItem | -->{{ParameterItem | ||
|opFamily= | |itemName=onoff | ||
|parName= | |opFamily=CHOP | ||
|itemLabel= | |parName=norm | ||
| | |itemLabel=On/Off | ||
| | |itemSummary=Several of the controllers are simply on/off states. When Convert to On/Off is enabled, values greater than or equal to 64 will be interpreted as "1" and all values less than 64 will be interpreted as "0". | ||
}} | }} | ||
|parOrder=4 | |||
|parLabel=Normalize | |||
|opFamily=CHOP | |||
|opType=midiin | |||
|parSummary=Controller values can be normalized for convenience: | |||
|parType=Menu | |||
|parReadOnly= | |||
}} | |||
{{Parameter | {{Parameter | ||
| | |parName=unwrap | ||
| | |parOrder=5 | ||
|parLabel= | |parLabel=Unwrap | ||
| | |opFamily=CHOP | ||
|opType=midiin | |||
|parSummary= | |||
|parType=Toggle | |parType=Toggle | ||
|parReadOnly= | |parReadOnly= | ||
| | |parItems= | ||
}} | |||
{{Parameter | {{Parameter | ||
| | |parName=progname | ||
| | |parOrder=6 | ||
|parLabel= | |parLabel=Program Change | ||
| | |opFamily=CHOP | ||
|parType= | |opType=midiin | ||
|parSummary=The name of the Program Change CHOP channel. All program change messages will be recorded onto this channel. If blank, this channel will not be created. | |||
|parType=Str | |||
|parReadOnly= | |parReadOnly= | ||
| | |parItems= | ||
}} | |||
| | |pageSummary=The parameters here are only enabled when 'Simplied Output' on the Source Page is Off. | ||
}} | }} | ||
{{ParameterPage | {{ParameterPage | ||
|opFamily= | |opFamily=CHOP | ||
|pageName= | |pageName=Timer | ||
|pageSummary= | |pageSummary=The parameters here are only enabled when 'Simplied Output' on the Source Page is Off. | ||
|items={{Parameter | |items={{Parameter | ||
|opFamily= | |opFamily=CHOP | ||
|opType= | |opType=midiinCHOP | ||
|parLabel= | |parLabel=Timer Pulse Name | ||
|parName= | |parName=pulsename | ||
|parType= | |parType=Str | ||
|parReadOnly= | |parReadOnly= | ||
|parOrder=0 | |||
|parSummary= | |parSummary= | ||
| | |parItems= | ||
}} | |||
{{Parameter | {{Parameter | ||
|opFamily= | |opFamily=CHOP | ||
|opType= | |opType=midiinCHOP | ||
|parLabel= | |parLabel=Timer Ramp Name | ||
|parName= | |parName=rampname | ||
|parType= | |parType=Str | ||
|parReadOnly= | |parReadOnly= | ||
|parOrder=1 | |||
|parSummary= | |parSummary= | ||
|parItems= | |||
|parItems= | }} | ||
}} | |||
{{Parameter | {{Parameter | ||
|opFamily= | |opFamily=CHOP | ||
|opType= | |opType=midiinCHOP | ||
|parLabel= | |parLabel=Timer Period | ||
|parName= | |parName=timerperiod | ||
|parType= | |parType=Str | ||
|parReadOnly= | |parReadOnly= | ||
|parOrder=2 | |||
|parSummary= | |parSummary= | ||
| | |parItems= | ||
}} | |||
{{Parameter | {{Parameter | ||
|opFamily= | |opFamily=CHOP | ||
|opType= | |opType=midiinCHOP | ||
|parLabel= | |parLabel=Timer Start | ||
|parName= | |parName=timerstart | ||
|parType= | |parType=Str | ||
|parReadOnly= | |parReadOnly= | ||
|parOrder=3 | |||
|parSummary= | |parSummary= | ||
|parItems= | |||
}} | |||
{{Parameter | |||
|opFamily=CHOP | |||
|opType=midiinCHOP | |||
|parLabel=Ticks per Beat | |||
|parName=ticks | |||
|parType=Int | |||
|parReadOnly= | |||
|parOrder=4 | |parOrder=4 | ||
|parItems=}} | |parSummary= | ||
|parItems= | |||
}} | |||
{{Parameter | {{Parameter | ||
|opFamily= | |opFamily=CHOP | ||
|opType= | |opType=midiinCHOP | ||
|parLabel= | |parLabel=Bar Ramp Name | ||
|parName= | |parName=barname | ||
|parType= | |parType=Str | ||
|parReadOnly= | |parReadOnly= | ||
|parOrder=5 | |||
|parSummary= | |parSummary= | ||
| | |parItems= | ||
}} | |||
{{Parameter | {{Parameter | ||
|opFamily= | |opFamily=CHOP | ||
|opType= | |opType=midiinCHOP | ||
|parLabel= | |parLabel=Bar Period | ||
|parName= | |parName=barperiod | ||
|parType= | |parType=Str | ||
|parReadOnly= | |parReadOnly= | ||
|parOrder=6 | |||
|parSummary= | |parSummary= | ||
| | |parItems= | ||
}} | |||
{{Parameter | {{Parameter | ||
|opFamily= | |opFamily=CHOP | ||
|opType= | |opType=midiinCHOP | ||
|parLabel= | |parLabel=Bar Start | ||
|parName= | |parName=barstart | ||
|parType= | |parType=Str | ||
|parReadOnly= | |parReadOnly= | ||
|parOrder=7 | |||
|parSummary= | |parSummary= | ||
| | |parItems= | ||
}} | |||
{{Parameter | {{Parameter | ||
|opFamily= | |opFamily=CHOP | ||
|opType= | |opType=midiinCHOP | ||
|parLabel= | |parLabel=Bar Message | ||
|parName= | |parName=barmsg | ||
|parType= | |parType=Str | ||
|parReadOnly= | |parReadOnly= | ||
|parOrder=8 | |||
|parSummary= | |parSummary= | ||
| | |parItems= | ||
}} | |||
{{Parameter | {{Parameter | ||
|opFamily= | |opFamily=CHOP | ||
|opType= | |opType=midiinCHOP | ||
|parLabel= | |parLabel=Song Pos Name | ||
|parName= | |parName=songpos | ||
|parType= | |parType=Str | ||
|parReadOnly= | |parReadOnly= | ||
|parOrder=9 | |||
|parSummary= | |parSummary= | ||
| | |parItems= | ||
}} | |||
}} | }} | ||
{{ParameterPage | {{ParameterPage | ||
|opFamily= | |opFamily=CHOP | ||
|pageName= | |pageName=Sys | ||
|items={{Parameter | |items={{Parameter | ||
| | |parName=exname1 | ||
| | |parOrder=0 | ||
|parLabel= | |parLabel=Channel Name 1 | ||
| | |opFamily=CHOP | ||
|parType= | |opType=midiin | ||
|parSummary= | |||
|parType=Str | |||
|parReadOnly= | |parReadOnly= | ||
|parItems= | |||
}} | |||
{{Parameter | |||
|parName=exmsg1 | |||
|parOrder=1 | |||
|parLabel=Message 1 | |||
|opFamily=CHOP | |||
|opType=midiin | |||
|parSummary= | |parSummary= | ||
|parType=Str | |||
|parReadOnly= | |||
|parItems= | |||
}} | |||
|pageSummary=The parameters here are only enabled when 'Simplied Output' on the Source Page is Off. | |||
}} | |||
{{ParameterPage | |||
|opFamily=CHOP | |||
|pageName=Chan | |||
|items={{Parameter | |||
|parName=start | |||
|parOrder=0 | |parOrder=0 | ||
|parItems=}} | |parLabel=Start | ||
|opFamily=CHOP | |||
|opType=midiin | |||
|parSummary=Defines where recording begins. In "Tie to Time Line" mode, any events received before the start time will be ignored. In "Time Line Independent" mode, recording will start at this point and continue on (not looping back). If reading from a MIDI File, Start/End will determine the start of the segment to read. | |||
Start and end of the interval, expressed in Units (seconds, frames or samples). The parameters are expressed in the <code>Units</code> found on the Common page. To set the CHOP to be 100 samples long, Set <code>Units</code> to Samples, <code>Single Frame</code> Off and <code>Start</code> / <code>End</code> to 0 and 99. | |||
|parType=Float | |||
|parReadOnly= | |||
|parItems= | |||
}} | |||
{{Parameter | {{Parameter | ||
|opFamily= | |parName=startunit | ||
| | |parItems={{ParameterItem | ||
|parLabel= | |opFamily=CHOP | ||
| | |parName=startunit | ||
|itemLabel=I | |||
|itemName=samples | |||
|itemSummary=Use samples. | |||
}}<!-- | |||
-->{{ParameterItem | |||
|opFamily=CHOP | |||
|parName=startunit | |||
|itemLabel=F | |||
|itemName=frames | |||
|itemSummary=Use frames. | |||
}}<!-- | |||
-->{{ParameterItem | |||
|opFamily=CHOP | |||
|parName=startunit | |||
|itemLabel=S | |||
|itemName=seconds | |||
|itemSummary=Use seconds. | |||
}} | |||
|parOrder=1 | |||
|parLabel=Start Unit | |||
|opFamily=CHOP | |||
|opType=midiin | |||
|parSummary=Select the units to use for this parameter, Samples, Frames, or Seconds. | |||
|parType=Menu | |parType=Menu | ||
|parReadOnly= | |parReadOnly= | ||
|parSummary= | }} | ||
| | {{Parameter | ||
|parName=end | |||
|parOrder=2 | |||
|parLabel=End | |||
|opFamily=CHOP | |||
|opType=midiin | |||
|parSummary=Defines the end of the segment to read for MIDI Files. | |||
|parType=Float | |||
|parReadOnly= | |||
|parItems= | |||
}} | |||
{{Parameter | |||
|parName=endunit | |||
|parItems={{ParameterItem | |parItems={{ParameterItem | ||
|opFamily= | |opFamily=CHOP | ||
|parName= | |parName=endunit | ||
|itemLabel= | |itemLabel=I | ||
|itemName= | |itemName=samples | ||
|itemSummary=}}<!-- | |itemSummary=Use samples. | ||
}}<!-- | |||
-->{{ParameterItem | -->{{ParameterItem | ||
|opFamily= | |opFamily=CHOP | ||
|parName= | |parName=endunit | ||
|itemLabel= | |itemLabel=F | ||
|itemName=frames | |itemName=frames | ||
|itemSummary=}}<!-- | |itemSummary=Use frames. | ||
}}<!-- | |||
-->{{ParameterItem | -->{{ParameterItem | ||
|opFamily= | |opFamily=CHOP | ||
|parName= | |parName=endunit | ||
|itemLabel= | |itemLabel=S | ||
|itemName= | |itemName=seconds | ||
|itemSummary= | |itemSummary=Use seconds. | ||
}} | }} | ||
|parOrder=3 | |||
| | |parLabel=End Unit | ||
| | |opFamily=CHOP | ||
| | |opType=midiin | ||
| | |parSummary=Select the units to use for this parameter, Samples, Frames, or Seconds. | ||
|parType= | |parType=Menu | ||
|parReadOnly= | |parReadOnly= | ||
}} | |||
{{Parameter | {{Parameter | ||
| | |parName=rate | ||
| | |parOrder=4 | ||
|parLabel= | |parLabel=Sample Rate | ||
| | |opFamily=CHOP | ||
|parType= | |opType=midiin | ||
|parSummary=Defines the sample rate of this CHOP, in samples per second. If the sample rate is too low, a rapidly changing input may be misrepresented. | |||
'''Note''': If the sample rate is too low, you may miss MIDI events. A note event may set a sample value to 1, and then the next note event less than 1/30 second later can set it to 0 on the same sample in the CHOP channel. So the event will be missed. Make the sample rate higher, like 600, to catch these events, or make sure that your on-off events coming in are a minimum time separation, as can be achieved through Opcode's MAX. | |||
|parType=Float | |||
|parReadOnly= | |parReadOnly= | ||
| | |parItems= | ||
}} | |||
{{Parameter | {{Parameter | ||
|opFamily= | |parName=left | ||
| | |parItems={{ParameterItem | ||
|parLabel= | |itemName=hold | ||
| | |opFamily=CHOP | ||
|parType= | |parName=left | ||
|itemLabel=Hold | |||
|itemSummary=Hold the current value of the channel. | |||
}}<!-- | |||
-->{{ParameterItem | |||
|itemName=slope | |||
|opFamily=CHOP | |||
|parName=left | |||
|itemLabel=Slope | |||
|itemSummary=Continue the slope before the start of the channel. | |||
}}<!-- | |||
-->{{ParameterItem | |||
|itemName=cycle | |||
|opFamily=CHOP | |||
|parName=left | |||
|itemLabel=Cycle | |||
|itemSummary=Cycle the channel repeatedly. | |||
}}<!-- | |||
-->{{ParameterItem | |||
|itemName=mirror | |||
|opFamily=CHOP | |||
|parName=left | |||
|itemLabel=Mirror | |||
|itemSummary=Cycle the channel repeatedly, mirroring every other cycle. | |||
}}<!-- | |||
-->{{ParameterItem | |||
|itemName=default | |||
|opFamily=CHOP | |||
|parName=left | |||
|itemLabel=Default Value | |||
|itemSummary=Use the constant value specified in the Default Value parameter. | |||
}} | |||
|parOrder=5 | |||
|parLabel=Extend Left | |||
|opFamily=CHOP | |||
|opType=midiin | |||
|parSummary=The left extend conditions (before range). | |||
|parType=Menu | |||
|parReadOnly= | |parReadOnly= | ||
}} | |||
{{Parameter | {{Parameter | ||
|opFamily= | |parName=right | ||
| | |parItems={{ParameterItem | ||
| | |itemName=hold | ||
|parName= | |opFamily=CHOP | ||
|parType= | |parName=right | ||
|itemLabel=Hold | |||
|itemSummary=Hold the current value of the channel. | |||
}}<!-- | |||
-->{{ParameterItem | |||
|itemName=slope | |||
|opFamily=CHOP | |||
|parName=right | |||
|itemLabel=Slope | |||
|itemSummary=Continue the slope after the end of the channel. | |||
}}<!-- | |||
-->{{ParameterItem | |||
|itemName=cycle | |||
|opFamily=CHOP | |||
|parName=right | |||
|itemLabel=Cycle | |||
|itemSummary=Cycle the channel repeatedly. | |||
}}<!-- | |||
-->{{ParameterItem | |||
|itemName=mirror | |||
|opFamily=CHOP | |||
|parName=right | |||
|itemLabel=Mirror | |||
|itemSummary=Cycle the channel repeatedly, mirroring every other cycle. | |||
}}<!-- | |||
-->{{ParameterItem | |||
|itemName=default | |||
|opFamily=CHOP | |||
|parName=right | |||
|itemLabel=Default Value | |||
|itemSummary=Use the constant value specified in the Default Value parameter. | |||
}} | |||
|parOrder=6 | |||
|parLabel=Extend Right | |||
|opFamily=CHOP | |||
|opType=midiin | |||
|parSummary=The right extend conditions (after range). | |||
|parType=Menu | |||
|parReadOnly= | |parReadOnly= | ||
}} | |||
{{Parameter | {{Parameter | ||
|parName=defval | |||
|parName= | |||
|parOrder=7 | |parOrder=7 | ||
| | |parLabel=Default Value | ||
|opFamily=CHOP | |opFamily=CHOP | ||
| | |opType=midiin | ||
| | |parSummary=The value used for the Default Value extend condition. | ||
| | |parType=Float | ||
|parReadOnly= | |||
| | |parItems= | ||
| | }} | ||
| | |pageSummary=This is similar to other generators' Channel page. However, there are a few points to consider on how they affect the Midi In CHOP. | ||
}} | |||
{{ | {{:CHOP Generator Common Page}} | ||
{{InfoCHOPChannels | |||
|opFamily=CHOP | |opFamily=CHOP | ||
| | |opLabel=MIDI In | ||
| | |infoChannels=}} | ||
}} | |||
{{History}} | {{History}} | ||
{{ | {{CHOPNavBox|opFamily=CHOP}} | ||
{{#invoke:Category|list|CHOPs}} | |||
{{#invoke:Category | |||
Revision as of 15:57, 16 November 2021
Summary[edit]
The MIDI In CHOP reads Note events, Controller events, Program Change events, System Exclusive messages and Timing events from both MIDI devices and files. See also MIDI In Map CHOP.
The MIDI In CHOP receives MIDI events from MIDI devices connected to the serial port, reads MIDI events internal to the workstation (i.e. the built-in software synth), and interprets musical scores in MIDI files. Supported MIDI events are:
- Note On, Note Off
- Polyphonic Aftertouch
- Channel Pressure
- Program Change
- Control Change (MIDI controller devices)
- Pitch Wheel
- Timer Events including beat pulses
- Bar Messages
- Start, Stop, Continue
- Song Position Pointer
- System Exclusive Messages
MIDI events arriving on separate MIDI channels may be recorded on separate CHOP channels. Also, any number of MIDI CHOPs can read from the same or different sources. TouchDesigner can be configured such that MIDI Start, Stop, or Continue events can control the Timeline and Beat Dialog.
The 'Simplified Output' option creates a channel for every type of MIDI event received, so number of channels expands while the devices is being used. No need to specify name, channel and index patterns.
Note: The values of the MIDI inputs are saved into the TouchDesigner .toe file, and are restored when the file is reloaded. The physical controllers may be in a different position when the .toe is restarted, causing the values to jump when the controllers are moved. This is unavoidable.
See also the MIDI In DAT, MIDI Event DAT, MIDI In Map CHOP, MIDI Out CHOP.
Parameters - Source Page
Active active
- Enable or disable the MIDI In CHOP.
MIDI Source source
- ⊞ - Get MIDI input from a device or a file.
- Device
device
-
- File
file
-
Device Table device
- Path to the MIDI device Table DAT
Device ID id
- Specify the id of which device to use.
MIDI File file
- If MIDI file is selected as the MIDI source use this field to specify the name of the MIDI file to read. The file can be read in from disk or from the web. Use http:// when specifying a URL.
Read Entire MIDI File entire
- If enabled, the entire MIDI file is read. Otherwise, the Start and End parameters on the Channel page determine the segment of the file to read.
Reset Channels resetchannels
- Deletes all channels when set to On, new channels will not be added until Reset Channels is turned Off.
Reset Channels Pulse resetchannelspulse
- Instantly deletes all channels.
Reset Values resetvalues
- Resets all channel values to 0 when On, channel values will not be updated until Reset Values is turned Off.
Reset Channels Pulse resetchannelspulse
- Instantly resets all channels to 0.
Simplified Output simplified
- When this is on channels are automatically created when MIDI signal is detected from the selected MIDI device.
1 Based Index onebased
- Make the index 1 based instead of the default 0 based.
MIDI Channels channel
- The CHOP may read from any number of MIDI channels, numbered 1-16. Ranges and multiple entries are supported (i.e. "1 4 6", "1-7 12", "1-5:2").
- If Channel Prefix is left blank, then the input streams from multiple MIDI channels will be combined into one set of CHOP channels (i.e., a "note 64 on" event on channel 12 followed by a "note 64 off" event on channel 8 appears in the note 64 CHOP channel as a single note).
Channel Prefix prefix
- When recording from multiple MIDI channels, putting a string like "ch" in this parameter causes the MIDI channel to be split into separate CHOP channels per MIDI channel. Otherwise the MIDI channels are all merged into one set of CHOP channels.
Parameters - Record Page
The parameters here are only enabled when 'Simplied Output' on the Source Page is Off.
Record Method recordtype
- ⊞ - Determine what to record.
- Single Frame
single
- This only outputs the current value of notes, controllers, etc. It does not retain prior values. It creates a CHOP at frame 1 always, so the CHOP causes cooking only when MIDI events come in.
- Current Frame
current
- Same as "Single Frame", but the CHOP frame is always at the current frame, so the CHOP changes every frame, causing other CHOPs to recook every frame.
- Current Time Slice
ind
- The CHOP frame is always at the current Time Slice.
- Full Length
timeline
- The entire length of the timeline is recorded.
Record record
- This parameter is used as a button to start and stop recording into the CHOP channels.
Parameters - Note Page
The parameters here are only enabled when 'Simplied Output' on the Source Page is Off.
Note Name notename
- Put an "n" in here to generate channels for note events. It is the base name of the CHOP channel used to record notes. If blank, notes are ignored. If the Note Output parameter is set to Separate Channels, then CHOP channels will be created for each note in the Note Scope, of the form: notename
Note Scope notescope
- The scope of notes to record. Multiple ranges and notes can be recorded (i.e., "50-60", "64 65 66 70-80").
Note Output notemeth
- ⊞ -
- One Multiplexed Channel
mult
- One CHOP channel per MIDI channel is used for all notes. The value in the note channel is the number of the note currently playing (in the case of multiple notes playing, the most recent note is selected).
- Separate Channels
sep
- Each note number gets its own CHOP channel.
Velocity velocity
- ⊞ -
- Off
veloff
- Velocity is not recorded.
- Note Amplitude
velencode
- The velocity is recorded as the amplitude of the note. Only valid when Note Output is set to Separate Channels.
- Separate Channels
velsep
- Velocity is recorded in separate CHOP channels. Each note channel will have a corresponding velocity channel.
Velocity Name velname
- When Velocity is set to Separate Channels, this parameter is the base name of the Velocity CHOP channel (try "v"). If blank, no velocity channels will be recorded.
Aftertouch Name aftername
- The base name of the polyphonic Aftertouch CHOP channels. One aftertouch channel is created for each note in the Note Scope. If blank, no aftertouch channels will be created.
Pressure Name pressname
- The name of the Channel Pressure channel. If multiple channels are being recorded, all channel pressure changes of interest will be recording on this CHOP channel. If blank, this channel will not be created.
Normalize notenorm
- ⊞ - Note values can be normalized for convenience:
- None
off
- When Normalize is Off, 7 bit controllers will return values in the range 0-127 and 14 bit controllers will return values in the range 0-16383.
- 0 to 1
0to1
- These values are normalized to lie in the range 0 to 1.
Pitch Wheel Name pitchname
- The name of the Pitch Wheel CHOP channel. Pitch wheel values range from -1 to +1. If blank, this channel will not be created. Put "p" in here to generate a channel.
Parameters - Control Page
The parameters here are only enabled when 'Simplied Output' on the Source Page is Off.
Controller Name controlname
- The base name of the Control Change CHOP channels. The channel names are appended with the controller index (0-127). If blank, control changes will not be recorded. It typically contains "c".
Controller Type controltype
- ⊞ - There are 128 different controllers available. By choosing By Index Only, you can specify any number of controllers in the Control Index parameter. Otherwise, you can select a controller from the list from this menu. Some controllers have multiple instances, such as Sound Controllers 1-10. Selecting a controller with multiple instances allows you to use the Control Index parameter to select which instances you want. Any invalid control indices will be ignored.
- By Index Only
index
-
- Bank Select
n0
-
- Modulation Wheel
n1
-
- Breath Control
n2
-
- Foot Controller
n3
-
- Portamento Time
n4
-
- Data Entry
n5
-
- Channel Volume
n6
-
- Balance
n7
-
- Pan
n8
-
- Expression Control
n9
-
- Effect Control 1-2
n10
-
- 14 bit General Purpose 1-4
n11
-
- Sustain on/off
n12
-
- Portamento on/off
n13
-
- Sustenuto on/off
n14
-
- Soft Pedal on/off
n15
-
- Legato Footswitch on/off
n16
-
- Hold 2 on/off
n17
-
- Sound Controller 1-10
n18
-
- 7 bit General Purpose 5-8
n19
-
- Portamento Control
n20
-
- Effect Depth 1-5
n21
-
- Non-Registered Parameter
n22
-
- Registered Parameter
n23
-
Controller Index controlind
- Used to select controllers by number, or multiple controllers by ranges. When in By Index Only Controller Type mode, you can select up to the full 128 controllers or sub-ranges thereof (i.e. "1-10", "2 34 70", "1-32 70-80:2").
Controller Format format
- ⊞ - Some controllers can be paired together to form 14 bit controllers, rather than the normal 7 bit controllers (controller indices 0-31, 98 and 100). Selecting 14 bit Controllers interprets a pair as one 14 bit controller. Otherwise, they are interpreted as separate 7 bit Controllers.
- 7 bit Controllers
7bit
-
- 14 bit Controllers
14bit
-
Normalize norm
- ⊞ - Controller values can be normalized for convenience:
- None
off
- When Normalize is Off, 7 bit controllers will return values in the range 0-127 and 14 bit controllers will return values in the range 0-16383.
- 0 to 1
0to1
- These values are normalized to lie in the range 0 to 1.
- -1 to 1
-1to1
- These values are normalized to lie in the range -1 to +1.
- On/Off
onoff
- Several of the controllers are simply on/off states. When Convert to On/Off is enabled, values greater than or equal to 64 will be interpreted as "1" and all values less than 64 will be interpreted as "0".
Unwrap unwrap
-
Program Change progname
- The name of the Program Change CHOP channel. All program change messages will be recorded onto this channel. If blank, this channel will not be created.
Parameters - Timer Page
The parameters here are only enabled when 'Simplied Output' on the Source Page is Off.
Timer Pulse Name pulsename
-
Timer Ramp Name rampname
-
Timer Period timerperiod
-
Timer Start timerstart
-
Ticks per Beat ticks
-
Bar Ramp Name barname
-
Bar Period barperiod
-
Bar Start barstart
-
Bar Message barmsg
-
Song Pos Name songpos
-
Parameters - Sys Page
The parameters here are only enabled when 'Simplied Output' on the Source Page is Off.
Channel Name 1 exname1
-
Message 1 exmsg1
-
Parameters - Chan Page
This is similar to other generators' Channel page. However, there are a few points to consider on how they affect the Midi In CHOP.
Start start
- Defines where recording begins. In "Tie to Time Line" mode, any events received before the start time will be ignored. In "Time Line Independent" mode, recording will start at this point and continue on (not looping back). If reading from a MIDI File, Start/End will determine the start of the segment to read.
Start and end of the interval, expressed in Units (seconds, frames or samples). The parameters are expressed in the Units
found on the Common page. To set the CHOP to be 100 samples long, Set Units
to Samples, Single Frame
Off and Start
/ End
to 0 and 99.
Start Unit startunit
- ⊞ - Select the units to use for this parameter, Samples, Frames, or Seconds.
- I
samples
- Use samples.
- F
frames
- Use frames.
- S
seconds
- Use seconds.
End end
- Defines the end of the segment to read for MIDI Files.
End Unit endunit
- ⊞ - Select the units to use for this parameter, Samples, Frames, or Seconds.
- I
samples
- Use samples.
- F
frames
- Use frames.
- S
seconds
- Use seconds.
Sample Rate rate
- Defines the sample rate of this CHOP, in samples per second. If the sample rate is too low, a rapidly changing input may be misrepresented.
Note: If the sample rate is too low, you may miss MIDI events. A note event may set a sample value to 1, and then the next note event less than 1/30 second later can set it to 0 on the same sample in the CHOP channel. So the event will be missed. Make the sample rate higher, like 600, to catch these events, or make sure that your on-off events coming in are a minimum time separation, as can be achieved through Opcode's MAX.
Extend Left left
- ⊞ - The left extend conditions (before range).
- Hold
hold
- Hold the current value of the channel.
- Slope
slope
- Continue the slope before the start of the channel.
- Cycle
cycle
- Cycle the channel repeatedly.
- Mirror
mirror
- Cycle the channel repeatedly, mirroring every other cycle.
- Default Value
default
- Use the constant value specified in the Default Value parameter.
Extend Right right
- ⊞ - The right extend conditions (after range).
- Hold
hold
- Hold the current value of the channel.
- Slope
slope
- Continue the slope after the end of the channel.
- Cycle
cycle
- Cycle the channel repeatedly.
- Mirror
mirror
- Cycle the channel repeatedly, mirroring every other cycle.
- Default Value
default
- Use the constant value specified in the Default Value parameter.
Default Value defval
- The value used for the Default Value extend condition.
Parameters - Common Page
Time Slice timeslice
- Turning this on forces the channels to be "Time Sliced". A Time Slice is the time between the last cook frame and the current cook frame.
Scope scope
- To determine which channels get affected, some CHOPs use a Scope string on the Common page.
Sample Rate Match srselect
- ⊞ - Handle cases where multiple input CHOPs' sample rates are different. When Resampling occurs, the curves are interpolated according to the Interpolation Method Option, or "Linear" if the Interpolate Options are not available.
- Resample At First Input's Rate
first
- Use rate of first input to resample others.
- Resample At Maximum Rate
max
- Resample to the highest sample rate.
- Resample At Minimum Rate
min
- Resample to the lowest sample rate.
- Error If Rates Differ
err
- Doesn't accept conflicting sample rates.
Export Method exportmethod
- ⊞ - This will determine how to connect the CHOP channel to the parameter. Refer to the Export article for more information.
- DAT Table by Index
datindex
- Uses the docked DAT table and references the channel via the index of the channel in the CHOP.
- DAT Table by Name
datname
- Uses the docked DAT table and references the channel via the name of the channel in the CHOP.
- Channel Name is Path:Parameter
autoname
- The channel is the full destination of where to export to, such hasgeo1/transform1:tx
.
Export Root autoexportroot
- This path points to the root node where all of the paths that exporting by Channel Name is Path:Parameter are relative to.
Export Table exporttable
- The DAT used to hold the export information when using the DAT Table Export Methods (See above).
Info CHOP Channels
Extra Information for the MIDI In CHOP can be accessed via an Info CHOP.
Common CHOP Info Channels
- start - Start of the CHOP interval in samples.
- length - Number of samples in the CHOP.
- sample_rate - The samplerate of the channels in frames per second.
- num_channels - Number of channels in the CHOP.
- time_slice - 1 if CHOP is Time Slice enabled, 0 otherwise.
- export_sernum - A count of how often the export connections have been updated.
Common Operator Info Channels
- total_cooks - Number of times the operator has cooked since the process started.
- cook_time - Duration of the last cook in milliseconds.
- cook_frame - Frame number when this operator was last cooked relative to the component timeline.
- cook_abs_frame - Frame number when this operator was last cooked relative to the absolute time.
- cook_start_time - Time in milliseconds at which the operator started cooking in the frame it was cooked.
- cook_end_time - Time in milliseconds at which the operator finished cooking in the frame it was cooked.
- cooked_this_frame - 1 if operator was cooked this frame.
- warnings - Number of warnings in this operator if any.
- errors - Number of errors in this operator if any.
TouchDesigner Build:
CHOPs |
---|
• • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • |