public class AVAudioUnitMIDIInstrument extends AVAudioUnit implements AVAudioMixing
Base class for sample synthesizers.
This base class represents audio units of type kAudioUnitType_MusicDevice or kAudioUnitType_RemoteInstrument. This can be used in a chain that processes realtime input (live) and has general concept of music events i.e. notes.
AVAudioUnit.Block_instantiateWithComponentDescriptionOptionsCompletionHandlerAVAudioNode.Block_installTapOnBusBufferSizeFormatBlockNSObject.Function_instanceMethodForSelector_ret, NSObject.Function_methodForSelector_ret| Modifier | Constructor and Description |
|---|---|
protected |
AVAudioUnitMIDIInstrument(org.moe.natj.general.Pointer peer) |
| Modifier and Type | Method and Description |
|---|---|
static boolean |
accessInstanceVariablesDirectly() |
static AVAudioUnitMIDIInstrument |
alloc() |
static AVAudioUnitMIDIInstrument |
allocWithZone(org.moe.natj.general.ptr.VoidPtr zone) |
static boolean |
automaticallyNotifiesObserversForKey(java.lang.String key) |
static void |
cancelPreviousPerformRequestsWithTarget(java.lang.Object aTarget) |
static void |
cancelPreviousPerformRequestsWithTargetSelectorObject(java.lang.Object aTarget,
org.moe.natj.objc.SEL aSelector,
java.lang.Object anArgument) |
static NSArray<java.lang.String> |
classFallbacksForKeyedArchiver() |
static org.moe.natj.objc.Class |
classForKeyedUnarchiver() |
static java.lang.String |
debugDescription_static() |
static java.lang.String |
description_static() |
AVAudioMixingDestination |
destinationForMixerBus(AVAudioNode mixer,
long bus)
Returns the AVAudioMixingDestination object corresponding to specified mixer node and
its input bus
|
static long |
hash_static() |
AVAudioUnitMIDIInstrument |
init() |
AVAudioUnitMIDIInstrument |
initWithAudioComponentDescription(AudioComponentDescription description)
initWithAudioComponentDescription:
|
static NSObject.Function_instanceMethodForSelector_ret |
instanceMethodForSelector(org.moe.natj.objc.SEL aSelector) |
static NSMethodSignature |
instanceMethodSignatureForSelector(org.moe.natj.objc.SEL aSelector) |
static boolean |
instancesRespondToSelector(org.moe.natj.objc.SEL aSelector) |
static void |
instantiateWithComponentDescriptionOptionsCompletionHandler(AudioComponentDescription audioComponentDescription,
int options,
AVAudioUnit.Block_instantiateWithComponentDescriptionOptionsCompletionHandler completionHandler) |
static boolean |
isSubclassOfClass(org.moe.natj.objc.Class aClass) |
static NSSet<java.lang.String> |
keyPathsForValuesAffectingValueForKey(java.lang.String key) |
static AVAudioUnitMIDIInstrument |
new_objc() |
float |
obstruction()
[@property] obstruction
|
float |
occlusion()
[@property] occlusion
|
float |
pan()
[@property] pan
|
long |
pointSourceInHeadMode()
[@property] pointSourceInHeadMode
|
AVAudio3DPoint |
position()
[@property] position
|
float |
rate()
[@property] rate
|
long |
renderingAlgorithm()
[@property] renderingAlgorithm
|
static boolean |
resolveClassMethod(org.moe.natj.objc.SEL sel) |
static boolean |
resolveInstanceMethod(org.moe.natj.objc.SEL sel) |
float |
reverbBlend()
[@property] reverbBlend
|
void |
sendControllerWithValueOnChannel(byte controller,
byte value,
byte channel)
sendController:withValue:onChannel:
|
void |
sendMIDIEventData1(byte midiStatus,
byte data1)
sendMIDIEvent:data1:
|
void |
sendMIDIEventData1Data2(byte midiStatus,
byte data1,
byte data2)
sendMIDIEvent:data1:data2:
|
void |
sendMIDISysExEvent(NSData midiData)
sendMIDISysExEvent:
|
void |
sendPitchBendOnChannel(char pitchbend,
byte channel)
sendPitchBend:onChannel:
|
void |
sendPressureForKeyWithValueOnChannel(byte key,
byte value,
byte channel)
sendPressureForKey:withValue:onChannel:
|
void |
sendPressureOnChannel(byte pressure,
byte channel)
sendPressure:onChannel:
|
void |
sendProgramChangeBankMSBBankLSBOnChannel(byte program,
byte bankMSB,
byte bankLSB,
byte channel)
sendProgramChange:bankMSB:bankLSB:onChannel:
|
void |
sendProgramChangeOnChannel(byte program,
byte channel)
sendProgramChange:onChannel:
|
void |
setObstruction(float value)
[@property] obstruction
|
void |
setOcclusion(float value)
[@property] occlusion
|
void |
setPan(float value)
[@property] pan
|
void |
setPointSourceInHeadMode(long value)
[@property] pointSourceInHeadMode
|
void |
setPosition(AVAudio3DPoint value)
[@property] position
|
void |
setRate(float value)
[@property] rate
|
void |
setRenderingAlgorithm(long value)
[@property] renderingAlgorithm
|
void |
setReverbBlend(float value)
[@property] reverbBlend
|
void |
setSourceMode(long value)
[@property] sourceMode
|
static void |
setVersion_static(long aVersion) |
void |
setVolume(float value)
[@property] volume
|
long |
sourceMode()
[@property] sourceMode
|
void |
startNoteWithVelocityOnChannel(byte note,
byte velocity,
byte channel)
startNote:withVelocity:onChannel:
|
void |
stopNoteOnChannel(byte note,
byte channel)
stopNote:onChannel:
|
static org.moe.natj.objc.Class |
superclass_static() |
static long |
version_static() |
float |
volume()
[@property] volume
|
AUAudioUnit, audioComponentDescription, audioUnit, loadAudioUnitPresetAtURLError, manufacturerName, name, versionengine, inputFormatForBus, installTapOnBusBufferSizeFormatBlock, lastRenderTime, latency, nameForInputBus, nameForOutputBus, numberOfInputs, numberOfOutputs, outputFormatForBus, outputPresentationLatency, removeTapOnBus, resetaccessibilityActivate, accessibilityActivationPoint, accessibilityAssistiveTechnologyFocusedIdentifiers, accessibilityAttributedHint, accessibilityAttributedLabel, accessibilityAttributedUserInputLabels, accessibilityAttributedValue, accessibilityContainerType, accessibilityCustomActions, accessibilityCustomRotors, accessibilityDecrement, accessibilityDragSourceDescriptors, accessibilityDropPointDescriptors, accessibilityElementAtIndex, accessibilityElementCount, accessibilityElementDidBecomeFocused, accessibilityElementDidLoseFocus, accessibilityElementIsFocused, accessibilityElements, accessibilityElementsHidden, accessibilityFrame, accessibilityHint, accessibilityIncrement, accessibilityLabel, accessibilityLanguage, accessibilityNavigationStyle, accessibilityPath, accessibilityPerformEscape, accessibilityPerformMagicTap, accessibilityRespondsToUserInteraction, accessibilityScroll, accessibilityTextualContext, accessibilityTraits, accessibilityUserInputLabels, accessibilityValue, accessibilityViewIsModal, addObserverForKeyPathOptionsContext, attemptRecoveryFromErrorOptionIndex, attemptRecoveryFromErrorOptionIndexDelegateDidRecoverSelectorContextInfo, autoContentAccessingProxy, awakeAfterUsingCoder, awakeFromNib, class_objc, classForCoder, classForKeyedArchiver, copy, dealloc, debugDescription, description, dictionaryWithValuesForKeys, didChangeValueForKey, didChangeValueForKeyWithSetMutationUsingObjects, didChangeValuesAtIndexesForKey, doesNotRecognizeSelector, fileManagerShouldProceedAfterError, fileManagerWillProcessPath, finalize_objc, forwardingTargetForSelector, forwardInvocation, hash, indexOfAccessibilityElement, isAccessibilityElement, isEqual, isKindOfClass, isMemberOfClass, isProxy, methodForSelector, methodSignatureForSelector, mutableArrayValueForKey, mutableArrayValueForKeyPath, mutableCopy, mutableOrderedSetValueForKey, mutableOrderedSetValueForKeyPath, mutableSetValueForKey, mutableSetValueForKeyPath, observationInfo, observeValueForKeyPathOfObjectChangeContext, performSelector, performSelectorInBackgroundWithObject, performSelectorOnMainThreadWithObjectWaitUntilDone, performSelectorOnMainThreadWithObjectWaitUntilDoneModes, performSelectorOnThreadWithObjectWaitUntilDone, performSelectorOnThreadWithObjectWaitUntilDoneModes, performSelectorWithObject, performSelectorWithObjectAfterDelay, performSelectorWithObjectAfterDelayInModes, performSelectorWithObjectWithObject, prepareForInterfaceBuilder, provideImageDataBytesPerRowOrigin_Size_UserInfo, removeObserverForKeyPath, removeObserverForKeyPathContext, replacementObjectForCoder, replacementObjectForKeyedArchiver, respondsToSelector, self, setAccessibilityActivationPoint, setAccessibilityAttributedHint, setAccessibilityAttributedLabel, setAccessibilityAttributedUserInputLabels, setAccessibilityAttributedValue, setAccessibilityContainerType, setAccessibilityCustomActions, setAccessibilityCustomRotors, setAccessibilityDragSourceDescriptors, setAccessibilityDropPointDescriptors, setAccessibilityElements, setAccessibilityElementsHidden, setAccessibilityFrame, setAccessibilityHint, setAccessibilityLabel, setAccessibilityLanguage, setAccessibilityNavigationStyle, setAccessibilityPath, setAccessibilityRespondsToUserInteraction, setAccessibilityTextualContext, setAccessibilityTraits, setAccessibilityUserInputLabels, setAccessibilityValue, setAccessibilityViewIsModal, setIsAccessibilityElement, setNilValueForKey, setObservationInfo, setShouldGroupAccessibilityChildren, setValueForKey, setValueForKeyPath, setValueForUndefinedKey, setValuesForKeysWithDictionary, shouldGroupAccessibilityChildren, superclass, validateValueForKeyError, validateValueForKeyPathError, valueForKey, valueForKeyPath, valueForUndefinedKey, willChangeValueForKey, willChangeValueForKeyWithSetMutationUsingObjects, willChangeValuesAtIndexesForKeyprotected AVAudioUnitMIDIInstrument(org.moe.natj.general.Pointer peer)
public static boolean accessInstanceVariablesDirectly()
public static AVAudioUnitMIDIInstrument alloc()
public static AVAudioUnitMIDIInstrument allocWithZone(org.moe.natj.general.ptr.VoidPtr zone)
public static boolean automaticallyNotifiesObserversForKey(java.lang.String key)
public static void cancelPreviousPerformRequestsWithTarget(java.lang.Object aTarget)
public static void cancelPreviousPerformRequestsWithTargetSelectorObject(java.lang.Object aTarget,
org.moe.natj.objc.SEL aSelector,
java.lang.Object anArgument)
public static NSArray<java.lang.String> classFallbacksForKeyedArchiver()
public static org.moe.natj.objc.Class classForKeyedUnarchiver()
public static java.lang.String debugDescription_static()
public static java.lang.String description_static()
public AVAudioMixingDestination destinationForMixerBus(AVAudioNode mixer, long bus)
AVAudioMixingWhen a source node is connected to multiple mixers downstream, setting AVAudioMixing properties directly on the source node will apply the change to all the mixers downstream. If you want to set/get properties on a specific mixer, use this method to get the corresponding AVAudioMixingDestination and set/get properties on it.
Note: - Properties set on individual AVAudioMixingDestination instances will not reflect at the source node level.
- AVAudioMixingDestination reference returned by this method could become invalid when there is any disconnection between the source and the mixer node. Hence this reference should not be retained and should be fetched every time you want to set/get properties on a specific mixer.
If the source node is not connected to the specified mixer/input bus, this method returns nil.
Calling this on an AVAudioMixingDestination instance returns self if the specified mixer/input bus matches its connection point, otherwise, it returns nil.
destinationForMixerBus in interface AVAudioMixingpublic static long hash_static()
public AVAudioUnitMIDIInstrument init()
init in class AVAudioUnitpublic AVAudioUnitMIDIInstrument initWithAudioComponentDescription(AudioComponentDescription description)
initialize the node with the component description
description - audio component description structure that describes the audio component of type kAudioUnitType_MusicDevice
or kAudioUnitType_RemoteInstrument.public static NSObject.Function_instanceMethodForSelector_ret instanceMethodForSelector(org.moe.natj.objc.SEL aSelector)
public static NSMethodSignature instanceMethodSignatureForSelector(org.moe.natj.objc.SEL aSelector)
public static boolean instancesRespondToSelector(org.moe.natj.objc.SEL aSelector)
public static void instantiateWithComponentDescriptionOptionsCompletionHandler(AudioComponentDescription audioComponentDescription, int options, AVAudioUnit.Block_instantiateWithComponentDescriptionOptionsCompletionHandler completionHandler)
public static boolean isSubclassOfClass(org.moe.natj.objc.Class aClass)
public static NSSet<java.lang.String> keyPathsForValuesAffectingValueForKey(java.lang.String key)
public static AVAudioUnitMIDIInstrument new_objc()
public float obstruction()
AVAudio3DMixingSimulates filtering of the direct path of sound due to an obstacle
Only the direct path of sound between the source and listener is blocked.
Range: -100.0 -> 0.0 dB Default: 0.0 Mixer: AVAudioEnvironmentNode
obstruction in interface AVAudio3DMixingpublic float occlusion()
AVAudio3DMixingSimulates filtering of the direct and reverb paths of sound due to an obstacle
Both the direct and reverb paths of sound between the source and listener are blocked.
Range: -100.0 -> 0.0 dB Default: 0.0 Mixer: AVAudioEnvironmentNode
occlusion in interface AVAudio3DMixingpublic float pan()
AVAudioStereoMixingSet a bus's stereo pan
Range: -1.0 -> 1.0 Default: 0.0 Mixer: AVAudioMixerNode
pan in interface AVAudioStereoMixingpublic long pointSourceInHeadMode()
AVAudio3DMixingIn-head rendering choice for AVAudio3DMixingSourceModePointSource in AVAudio3DMixingRenderingAlgorithmAuto
Default: AVAudio3DMixingPointSourceInHeadModeMono Mixer: AVAudioEnvironmentNode
pointSourceInHeadMode in interface AVAudio3DMixingpublic AVAudio3DPoint position()
AVAudio3DMixingThe location of the source in the 3D environment
The coordinates are specified in meters.
Mixer: AVAudioEnvironmentNode
position in interface AVAudio3DMixingpublic float rate()
AVAudio3DMixingChanges the playback rate of the input signal
A value of 2.0 results in the output audio playing one octave higher. A value of 0.5, results in the output audio playing one octave lower.
Range: 0.5 -> 2.0 Default: 1.0 Mixer: AVAudioEnvironmentNode
rate in interface AVAudio3DMixingpublic long renderingAlgorithm()
AVAudio3DMixingType of rendering algorithm used
Depending on the current output format of the AVAudioEnvironmentNode, only a subset of the rendering algorithms may be supported. An array of valid rendering algorithms can be retrieved by calling applicableRenderingAlgorithms on AVAudioEnvironmentNode.
Default: AVAudio3DMixingRenderingAlgorithmEqualPowerPanning Mixer: AVAudioEnvironmentNode
renderingAlgorithm in interface AVAudio3DMixingpublic static boolean resolveClassMethod(org.moe.natj.objc.SEL sel)
public static boolean resolveInstanceMethod(org.moe.natj.objc.SEL sel)
public float reverbBlend()
AVAudio3DMixingControls the blend of dry and reverb processed audio
This property controls the amount of the source's audio that will be processed by the reverb in AVAudioEnvironmentNode. A value of 0.5 will result in an equal blend of dry and processed (wet) audio.
Range: 0.0 (completely dry) -> 1.0 (completely wet) Default: 0.0 Mixer: AVAudioEnvironmentNode
reverbBlend in interface AVAudio3DMixingpublic void sendControllerWithValueOnChannel(byte controller,
byte value,
byte channel)
send a MIDI controller event to the instrument.
controller - a standard MIDI controller number.
Range: 0 -> 127value - value for the controller.
Range: 0 -> 127channel - the channel number to which the event is sent.
Range: 0 -> 15public void sendMIDIEventData1(byte midiStatus,
byte data1)
sends a MIDI event which contains one data byte to the instrument.
midiStatus - the STATUS value of the MIDI eventdata1 - the first data byte of the MIDI eventpublic void sendMIDIEventData1Data2(byte midiStatus,
byte data1,
byte data2)
sends a MIDI event which contains two data bytes to the instrument.
midiStatus - the STATUS value of the MIDI eventdata1 - the first data byte of the MIDI eventdata2 - the second data byte of the MIDI event.public void sendMIDISysExEvent(NSData midiData)
sends a MIDI System Exclusive event to the instrument.
midiData - a NSData object containing the complete SysEx data including start(F0) and termination(F7) bytes.public void sendPitchBendOnChannel(char pitchbend,
byte channel)
sends MIDI Pitch Bend event to the instrument.
pitchbend - value of the pitchbend
Range: 0 -> 16383channel - the channel number to which the event is sent.
Range: 0 -> 15public void sendPressureOnChannel(byte pressure,
byte channel)
sends MIDI channel pressure event to the instrument.
pressure - value of the pressure.
Range: 0 -> 127channel - the channel number to which the event is sent.
Range: 0 -> 15public void sendPressureForKeyWithValueOnChannel(byte key,
byte value,
byte channel)
sends MIDI Polyphonic key pressure event to the instrument
key - the key (note) number to which the pressure event applies
Range: 0 -> 127value - value of the pressure
Range: 0 -> 127channel - the channel number to which the event is sent.
Range: 0 -> 15public void sendProgramChangeBankMSBBankLSBOnChannel(byte program,
byte bankMSB,
byte bankLSB,
byte channel)
sends a MIDI Program Change and Bank Select events to the instrument
program - specifies the program (preset) number within the bank to load.
Range: 0 -> 127bankMSB - specifies the most significant byte value for the bank to select.
Range: 0 -> 127bankLSB - specifies the least significant byte value for the bank to select.
Range: 0 -> 127channel - the channel number to which the event is sent.
Range: 0 -> 15public void sendProgramChangeOnChannel(byte program,
byte channel)
sends MIDI Program Change event to the instrument
the instrument will be loaded from the bank that has been previous set by MIDI Bank Select controller messages (0 and 31). If none has been set, bank 0 will be used.
program - the program number.
Range: 0 -> 127channel - the channel number to which the event is sent.
Range: 0 -> 15public void setObstruction(float value)
AVAudio3DMixingSimulates filtering of the direct path of sound due to an obstacle
Only the direct path of sound between the source and listener is blocked.
Range: -100.0 -> 0.0 dB Default: 0.0 Mixer: AVAudioEnvironmentNode
setObstruction in interface AVAudio3DMixingpublic void setOcclusion(float value)
AVAudio3DMixingSimulates filtering of the direct and reverb paths of sound due to an obstacle
Both the direct and reverb paths of sound between the source and listener are blocked.
Range: -100.0 -> 0.0 dB Default: 0.0 Mixer: AVAudioEnvironmentNode
setOcclusion in interface AVAudio3DMixingpublic void setPan(float value)
AVAudioStereoMixingSet a bus's stereo pan
Range: -1.0 -> 1.0 Default: 0.0 Mixer: AVAudioMixerNode
setPan in interface AVAudioStereoMixingpublic void setPointSourceInHeadMode(long value)
AVAudio3DMixingIn-head rendering choice for AVAudio3DMixingSourceModePointSource in AVAudio3DMixingRenderingAlgorithmAuto
Default: AVAudio3DMixingPointSourceInHeadModeMono Mixer: AVAudioEnvironmentNode
setPointSourceInHeadMode in interface AVAudio3DMixingpublic void setPosition(AVAudio3DPoint value)
AVAudio3DMixingThe location of the source in the 3D environment
The coordinates are specified in meters.
Mixer: AVAudioEnvironmentNode
setPosition in interface AVAudio3DMixingpublic void setRate(float value)
AVAudio3DMixingChanges the playback rate of the input signal
A value of 2.0 results in the output audio playing one octave higher. A value of 0.5, results in the output audio playing one octave lower.
Range: 0.5 -> 2.0 Default: 1.0 Mixer: AVAudioEnvironmentNode
setRate in interface AVAudio3DMixingpublic void setRenderingAlgorithm(long value)
AVAudio3DMixingType of rendering algorithm used
Depending on the current output format of the AVAudioEnvironmentNode, only a subset of the rendering algorithms may be supported. An array of valid rendering algorithms can be retrieved by calling applicableRenderingAlgorithms on AVAudioEnvironmentNode.
Default: AVAudio3DMixingRenderingAlgorithmEqualPowerPanning Mixer: AVAudioEnvironmentNode
setRenderingAlgorithm in interface AVAudio3DMixingpublic void setReverbBlend(float value)
AVAudio3DMixingControls the blend of dry and reverb processed audio
This property controls the amount of the source's audio that will be processed by the reverb in AVAudioEnvironmentNode. A value of 0.5 will result in an equal blend of dry and processed (wet) audio.
Range: 0.0 (completely dry) -> 1.0 (completely wet) Default: 0.0 Mixer: AVAudioEnvironmentNode
setReverbBlend in interface AVAudio3DMixingpublic void setSourceMode(long value)
AVAudio3DMixingControls how individual channels of an input bus are rendered
Default: AVAudio3DMixingSourceModeSpatializeIfMono Mixer: AVAudioEnvironmentNode
setSourceMode in interface AVAudio3DMixingpublic static void setVersion_static(long aVersion)
public void setVolume(float value)
AVAudioMixingSet a bus's input volume
Range: 0.0 -> 1.0 Default: 1.0 Mixers: AVAudioMixerNode, AVAudioEnvironmentNode
setVolume in interface AVAudioMixingpublic long sourceMode()
AVAudio3DMixingControls how individual channels of an input bus are rendered
Default: AVAudio3DMixingSourceModeSpatializeIfMono Mixer: AVAudioEnvironmentNode
sourceMode in interface AVAudio3DMixingpublic void startNoteWithVelocityOnChannel(byte note,
byte velocity,
byte channel)
sends a MIDI Note On event to the instrument
note - the note number (key) to play.
Range: 0 -> 127velocity - specifies the volume with which the note is played.
Range: 0 -> 127channel - the channel number to which the event is sent
Range: 0 -> 15public void stopNoteOnChannel(byte note,
byte channel)
sends a MIDI Note Off event to the instrument
note - the note number (key) to stop
Range: 0 -> 127channel - the channel number to which the event is sent.
Range: 0 -> 15public static org.moe.natj.objc.Class superclass_static()
public static long version_static()
public float volume()
AVAudioMixingSet a bus's input volume
Range: 0.0 -> 1.0 Default: 1.0 Mixers: AVAudioMixerNode, AVAudioEnvironmentNode
volume in interface AVAudioMixing