Пример #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));
        }
Пример #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);
        }
Пример #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);
        }
Пример #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);
        }
Пример #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);
        }
Пример #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);
        }
Пример #7
0
 static extern void NowSoundGraph_SetInputPluginInstanceDryWet(AudioInputId audioInputId, PluginInstanceIndex pluginInstanceIndex, int dryWet_0_100);
Пример #8
0
 static extern void NowSoundGraph_SetInputPan(AudioInputId audioInputId, float pan);
Пример #9
0
 static extern PluginInstanceInfo NowSoundGraph_GetInputPluginInstanceInfo(AudioInputId audioInputId, PluginInstanceIndex index);
Пример #10
0
 static extern int NowSoundGraph_GetInputPluginInstanceCount(AudioInputId audioInputId);
Пример #11
0
 public static void Check(AudioInputId id)
 {
     // only up to stereo for now
     Check((int)id);
 }
Пример #12
0
 static extern PluginInstanceIndex NowSoundGraph_AddInputPluginInstance(AudioInputId audioInputId, PluginId pluginId, ProgramId programId, Int32 dryWet_0_100);
Пример #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));
 }
Пример #14
0
 static extern TrackId NowSoundGraph_CreateRecordingTrackAsync(AudioInputId id);
Пример #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));
        }
Пример #16
0
 static extern bool NowSoundGraph_GetInputFrequencies(AudioInputId audioInputId, float[] floatBuffer, int floatBufferCapacity);
Пример #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));
 }
Пример #18
0
 static extern NowSoundSignalInfo NowSoundGraph_InputSignalInfo(AudioInputId audioInputId);
Пример #19
0
 static extern void NowSoundGraph_DeleteInputPluginInstance(AudioInputId audioInputId, PluginInstanceIndex index);
Пример #20
0
 static extern float NowSoundGraph_InputPan(AudioInputId audioInputId);
Пример #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);
 }