Ejemplo n.º 1
0
        /// <summary>
        /// Get info about a plugin instance on an input.
        /// </summary>
        public static PluginInstanceInfo GetInputPluginInstanceInfo(AudioInputId audioInputId, PluginInstanceIndex index)
        {
            Id.Check(audioInputId);
            Id.Check(index);

            return(NowSoundGraph_GetInputPluginInstanceInfo(audioInputId, index));
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Delete a plugin instance.
        /// </summary>
        public static void DeleteInputPluginInstance(AudioInputId audioInputId, PluginInstanceIndex pluginInstanceIndex)
        {
            Id.Check(audioInputId);
            Id.Check(pluginInstanceIndex);

            NowSoundGraph_DeleteInputPluginInstance(audioInputId, pluginInstanceIndex);
        }
Ejemplo n.º 3
0
        /// <summary>
        /// Create a new track and begin recording.
        /// </summary>
        /// <remarks>
        /// Graph must be Running.
        /// TrackId returned from native code is incremented for TrackId on this end, to ensure any default
        /// TrackId values are treated as uninitialized.
        /// </remarks>
        public static TrackId CreateRecordingTrackAsync(AudioInputId id)
        {
            Id.Check(id);

            TrackId result = NowSoundGraph_CreateRecordingTrackAsync(id);

            Id.Check(result);
            return(result);
        }
Ejemplo n.º 4
0
        public static void SetInputPluginInstanceDryWet(AudioInputId audioInputId, PluginInstanceIndex pluginInstanceIndex, int dryWet_0_100)
        {
            Id.Check(audioInputId);
            Id.Check(pluginInstanceIndex);
            Contract.Requires(dryWet_0_100 >= 0);
            Contract.Requires(dryWet_0_100 <= 100);

            NowSoundGraph_SetInputPluginInstanceDryWet(audioInputId, pluginInstanceIndex, dryWet_0_100);
        }
Ejemplo n.º 5
0
        /// <summary>
        /// Get the number of plugin instances on this input.
        /// </summary>
        public static int GetInputPluginInstanceCount(AudioInputId audioInputId)
        {
            Id.Check(audioInputId);

            int result = NowSoundGraph_GetInputPluginInstanceCount(audioInputId);

            Contract.Assert(result >= 0);
            return(result);
        }
Ejemplo n.º 6
0
        public static PluginInstanceIndex AddInputPluginInstance(AudioInputId audioInputId, PluginId pluginId, ProgramId programId, int dryWet_0_100)
        {
            Id.Check(audioInputId);
            Id.Check(pluginId);
            Id.Check(programId);
            Contract.Requires(dryWet_0_100 >= 0);
            Contract.Requires(dryWet_0_100 <= 100);

            PluginInstanceIndex result = NowSoundGraph_AddInputPluginInstance(audioInputId, pluginId, programId, dryWet_0_100);

            Id.Check(result);
            return(result);
        }
Ejemplo n.º 7
0
 static extern void NowSoundGraph_SetInputPluginInstanceDryWet(AudioInputId audioInputId, PluginInstanceIndex pluginInstanceIndex, int dryWet_0_100);
Ejemplo n.º 8
0
 static extern void NowSoundGraph_SetInputPan(AudioInputId audioInputId, float pan);
Ejemplo n.º 9
0
 static extern PluginInstanceInfo NowSoundGraph_GetInputPluginInstanceInfo(AudioInputId audioInputId, PluginInstanceIndex index);
Ejemplo n.º 10
0
 static extern int NowSoundGraph_GetInputPluginInstanceCount(AudioInputId audioInputId);
Ejemplo n.º 11
0
 public static void Check(AudioInputId id)
 {
     // only up to stereo for now
     Check((int)id);
 }
Ejemplo n.º 12
0
 static extern PluginInstanceIndex NowSoundGraph_AddInputPluginInstance(AudioInputId audioInputId, PluginId pluginId, ProgramId programId, Int32 dryWet_0_100);
Ejemplo n.º 13
0
 /// <summary>
 /// Get the pan value of this input (0 = left, 0.5 = center, 1 = right).
 /// </summary>
 public static float InputPan(AudioInputId audioInputId)
 {
     return(NowSoundGraph_InputPan(audioInputId));
 }
Ejemplo n.º 14
0
 static extern TrackId NowSoundGraph_CreateRecordingTrackAsync(AudioInputId id);
Ejemplo n.º 15
0
        // Get the current input frequency histogram; LPWSTR must actually reference a float buffer of the
        // same length as the outputBinCount argument passed to InitializeFFT, but must be typed as LPWSTR
        // and must have a capacity represented in two-byte wide characters (to match the P/Invoke style of
        // "pass in StringBuilder", known to work well).
        // Returns true if there was enough data to update the buffer, or false if there was not.
        public static bool GetInputFrequencies(AudioInputId audioInputId, float[] floatBuffer, int floatBufferCapacity)
        {
            Id.Check(audioInputId);

            return(NowSoundGraph_GetInputFrequencies(audioInputId, floatBuffer, floatBufferCapacity));
        }
Ejemplo n.º 16
0
 static extern bool NowSoundGraph_GetInputFrequencies(AudioInputId audioInputId, float[] floatBuffer, int floatBufferCapacity);
Ejemplo n.º 17
0
 /// <summary>
 /// Get information about the post-effects signal of an input channel.
 /// Graph must be Running.
 /// </summary>
 /// <returns></returns>
 public static NowSoundSignalInfo InputSignalInfo(AudioInputId audioInputId)
 {
     return(NowSoundGraph_InputSignalInfo(audioInputId));
 }
Ejemplo n.º 18
0
 static extern NowSoundSignalInfo NowSoundGraph_InputSignalInfo(AudioInputId audioInputId);
Ejemplo n.º 19
0
 static extern void NowSoundGraph_DeleteInputPluginInstance(AudioInputId audioInputId, PluginInstanceIndex index);
Ejemplo n.º 20
0
 static extern float NowSoundGraph_InputPan(AudioInputId audioInputId);
Ejemplo n.º 21
0
 /// <summary>
 /// Set the pan value of this input  (0 = left, 0.5 = center, 1 = right).
 /// </summary>
 public static void SetInputPan(AudioInputId audioInputId, float pan)
 {
     NowSoundGraph_SetInputPan(audioInputId, pan);
 }