private void AddCustomEffect(IAudioInputNode audioFileInputNode) { // Create a property set and add a property/value pair PropertySet echoProperties = new PropertySet(); echoProperties.Add("Mix", 0.5f); // Instantiate the custom effect defined in the 'CustomEffect' project AudioEffectDefinition echoEffectDefinition = new AudioEffectDefinition(typeof(AudioEchoEffect).FullName, echoProperties); audioFileInputNode.EffectDefinitions.Add(echoEffectDefinition); }
private AudioFrameOutputNode AttachSpeechRecognitionMode(IAudioInputNode inputNode) { var speechRecognitionNode = graph.CreateFrameOutputNode(encoding.Audio); graph.QuantumStarted += (AudioGraph sender, object args) => { AudioFrame frame = speechRecognitionNode.GetFrame(); ProcessFrameOutput(frame); }; inputNode.AddOutgoingConnection(speechRecognitionNode); return(speechRecognitionNode); }
private async Task <AudioDeviceOutputNode> AttachDeviceOutputNode(IAudioInputNode inputNode) { var deviceOutputNodeResult = await graph.CreateDeviceOutputNodeAsync(); if (deviceOutputNodeResult.Status != AudioDeviceNodeCreationStatus.Success) { error.Text = String.Format("DeviceOutputNode creation failed because {0}", deviceOutputNodeResult.Status.ToString()); } var deviceOutputNode = deviceOutputNodeResult.DeviceOutputNode; inputNode.AddOutgoingConnection(deviceOutputNode); return(deviceOutputNode); }
public PreparedSource(IAudioInputNode node, AudioNodeEmitter emitter) { Node = node; Emitter = emitter; }