Esempio n. 1
0
        /// <inheritdoc />
        public bool GetSpeakerArrangement(out VstSpeakerArrangement input, out VstSpeakerArrangement output)
        {
            Log("GetSpeakerArrangement");
            input  = null;
            output = null;

            return(false);
        }
Esempio n. 2
0
        public bool SetSpeakerArrangement(VstSpeakerArrangement saInput, VstSpeakerArrangement saOutput)
        {
            if (_commands != null)
            {
                return(_commands.SetSpeakerArrangement(saInput, saOutput));
            }

            return(false);
        }
Esempio n. 3
0
        private VstPluginContext OpenPlugin(string pluginPath)
        {
            try
            {
                HostCommandStub hostCmdStub = new HostCommandStub();
                //hostCmdStub.PluginCalled += new EventHandler<PluginCalledEventArgs>(HostCmdStub_PluginCalled);

                VstPluginContext ctx = VstPluginContext.Create(pluginPath, hostCmdStub);

                // add custom data to the context
                ctx.Set("PluginPath", pluginPath);
                ctx.Set("HostCmdStub", hostCmdStub);

                // actually open the plugin itself
                ctx.PluginCommandStub.Open();
                ctx.PluginCommandStub.SetSampleRate(44100f);
                ctx.PluginCommandStub.SetBlockSize(512);

                ctx.PluginCommandStub.MainsChanged(true);
                ctx.PluginCommandStub.StartProcess();

                var sp = new VstSpeakerArrangement();

                sp.Type = VstSpeakerArrangementType.SpeakerArrStereo;


                VstSpeakerProperties[] f = new VstSpeakerProperties[2];

                f[0]             = new VstSpeakerProperties();
                f[1]             = new VstSpeakerProperties();
                f[0].SpeakerType = VstSpeakerTypes.SpeakerL;
                f[1].SpeakerType = VstSpeakerTypes.SpeakerR;

                sp.Speakers = f;

                var spin = new VstSpeakerArrangement();
                spin.Type = VstSpeakerArrangementType.SpeakerArrEmpty;

                VstSpeakerProperties[] f2 = new VstSpeakerProperties[0];

                spin.Speakers = f2;

                //ctx.PluginCommandStub.SetSpeakerArrangement(spin, sp);

                return(ctx);
            }
            catch (Exception e)
            {
                MessageBox.Show(this, e.ToString(), Text, MessageBoxButtons.OK, MessageBoxIcon.Error);
            }

            return(null);
        }
Esempio n. 4
0
        private void SpeakerConfigBtn_Click(object sender, EventArgs e)
        {
            var inputArrangement  = new VstSpeakerArrangement();
            var outputArrangement = new VstSpeakerArrangement();
            var result            = PluginContext.PluginCommandStub.GetSpeakerArrangement(out inputArrangement, out outputArrangement);

            var sb = new StringBuilder();

            sb.AppendLine($"Result from GetSpeakerArrangement(): {result}");

            if (inputArrangement == null)
            {
                sb.AppendLine("Input Speaker Arrangement is null");
            }
            else
            {
                sb.AppendLine("Input Speaker Arrangement:");
                sb.AppendLine($"Type: {inputArrangement.Type}");

                var cnt = 0;
                foreach (var x in inputArrangement.Speakers)
                {
                    sb.AppendLine($"Speaker #{cnt} Type: {x.SpeakerType} Name: {x.Name} Azimath: {x.Azimath} Elevation: {x.Elevation} Radius: {x.Radius}");
                    cnt++;
                }
            }

            if (outputArrangement == null)
            {
                sb.AppendLine("Output Speaker Arrangement is null");
            }
            else
            {
                sb.AppendLine("Output Speaker Arrangement:");
                sb.AppendLine($"Type: {outputArrangement.Type}");

                var cnt = 0;
                foreach (var x in outputArrangement.Speakers)
                {
                    sb.AppendLine($"Speaker #{cnt} Type: {x.SpeakerType} Name: {x.Name} Azimath: {x.Azimath} Elevation: {x.Elevation} Radius: {x.Radius}");
                    cnt++;
                }
            }

            MessageBox.Show(this, sb.ToString());
        }
Esempio n. 5
0
 /// <summary>
 /// This call is forwarded to the <see cref="Jacobi.Vst.Core.Plugin.IVstPluginCommandStub"/> implementation.
 /// </summary>
 /// <param name="input">Passed with the forwarded call and back.</param>
 /// <param name="output">Passed with the forwarded call and back.</param>
 /// <returns>Returns the value returned from the forwarded call.</returns>
 public bool GetSpeakerArrangement(out VstSpeakerArrangement input, out VstSpeakerArrangement output)
 {
     return(_pluginCmdStub.GetSpeakerArrangement(out input, out output));
 }
Esempio n. 6
0
 /// <summary>
 /// This call is forwarded to the <see cref="Jacobi.Vst.Core.Plugin.IVstPluginCommandStub"/> implementation.
 /// </summary>
 /// <param name="saInput">Passed with the forwarded call.</param>
 /// <param name="saOutput">Passed with the forwarded call.</param>
 /// <returns>Returns the value returned from the forwarded call.</returns>
 public bool SetSpeakerArrangement(VstSpeakerArrangement saInput, VstSpeakerArrangement saOutput)
 {
     return(_pluginCmdStub.SetSpeakerArrangement(saInput, saOutput));
 }
Esempio n. 7
0
        public override bool GetSpeakerArrangement(out VstSpeakerArrangement input, out VstSpeakerArrangement output)
        {
            LogMethod(MethodBase.GetCurrentMethod());

            return(base.GetSpeakerArrangement(out input, out output));
        }
Esempio n. 8
0
        public override bool SetSpeakerArrangement(VstSpeakerArrangement saInput, VstSpeakerArrangement saOutput)
        {
            LogMethod(MethodBase.GetCurrentMethod());

            return(base.SetSpeakerArrangement(saInput, saOutput));
        }
Esempio n. 9
0
 public bool SetSpeakerArrangement(VstSpeakerArrangement saInput, VstSpeakerArrangement saOutput)
 {
     throw new NotImplementedException();
 }
Esempio n. 10
0
 public bool GetSpeakerArrangement(out VstSpeakerArrangement input, out VstSpeakerArrangement output)
 {
     throw new NotImplementedException();
 }
        /// <summary>
        /// Returns the speaker arrangements for the input and output of the plugin.
        /// </summary>
        /// <param name="input">Filled with the speaker arrangement for the plugin inputs.</param>
        /// <param name="output">Filled with the speaker arrangement for the plugin outputs.</param>
        /// <returns>Returns true when the plugin implements the <see cref="IVstPluginConnections"/> interfcace.</returns>
        public virtual bool GetSpeakerArrangement(out VstSpeakerArrangement input, out VstSpeakerArrangement output)
        {
            IVstPluginConnections pluginConnections = pluginCtx.Plugin.GetInstance<IVstPluginConnections>();

            if (pluginConnections != null)
            {
                input = pluginConnections.InputSpeakerArrangement;
                output = pluginConnections.OutputSpeakerArrangement;

                return true;
            }

            input = null;
            output = null;
            return false;
        }
        /// <summary>
        /// Called by the host to propose a new speaker arrangement.
        /// </summary>
        /// <param name="saInput">Must not be null.</param>
        /// <param name="saOutput">Must not be null.</param>
        /// <returns>Returns false if the plugin does not implement <see cref="IVstPluginConnections"/>.</returns>
        public virtual bool SetSpeakerArrangement(VstSpeakerArrangement saInput, VstSpeakerArrangement saOutput)
        {
            IVstPluginConnections pluginConnections = pluginCtx.Plugin.GetInstance<IVstPluginConnections>();

            if (pluginConnections != null)
                return pluginConnections.AcceptNewArrangement(saInput, saOutput);

            return false;
        }
 public bool SetSpeakerArrangement(VstSpeakerArrangement saInput, VstSpeakerArrangement saOutput)
 {
     return false;
 }
        public bool GetSpeakerArrangement(out VstSpeakerArrangement input, out VstSpeakerArrangement output)
        {
            input = null;
            output = null;

            return false;
        }
Esempio n. 15
0
 /// <inheritdoc />
 public bool SetSpeakerArrangement(VstSpeakerArrangement saInput, VstSpeakerArrangement saOutput)
 {
     Log("SetSpeakerArrangement");
     return(false);
 }