Example #1
0
        /// <summary>
        /// StopRecordingFromSounddevice
        /// </summary>
        private void StopRecordingFromSounddevice()
        {
            try
            {
                if (IsServerRunning)
                {
                    //Stoppen
                    m_Recorder.Stop();

                    //Events entfernen
                    m_Recorder.DataRecorded     -= new WinSound.Recorder.DelegateDataRecorded(OnDataReceivedFromSoundcard);
                    m_Recorder.RecordingStopped -= new WinSound.Recorder.DelegateStopped(OnRecordingStopped);
                    m_Recorder = null;

                    //Wenn JitterBuffer
                    if (m_Config.IsTimeSyncClient)
                    {
                        m_JitterBuffer.Stop();
                    }
                }
            }
            catch (Exception ex)
            {
                ShowError(ex.Message);
            }
        }
Example #2
0
        /// <summary>
        /// StartRecordingFromSounddevice
        /// </summary>
        private void StartRecordingFromSounddevice()
        {
            try
            {
                if (IsServerRunning == false)
                {
                    //Buffer Grösse berechnen
                    int bufferSize = 0;
                    if (m_Config.IsTimeSyncClient)
                    {
                        bufferSize = WinSound.Utils.GetBytesPerInterval((uint)m_Config.SamplesPerSecondClient, m_Config.BitsPerSampleClient, m_Config.ChannelsClient) * (int)m_RecorderFactor;
                    }
                    else
                    {
                        bufferSize = WinSound.Utils.GetBytesPerInterval((uint)m_Config.SamplesPerSecondClient, m_Config.BitsPerSampleClient, m_Config.ChannelsClient);
                    }

                    //Wenn Buffer korrekt
                    if (bufferSize > 0)
                    {
                        //Recorder erstellen
                        m_Recorder = new WinSound.Recorder();

                        //Events hinzufügen
                        m_Recorder.DataRecorded     += new WinSound.Recorder.DelegateDataRecorded(OnDataReceivedFromSoundcard);
                        m_Recorder.RecordingStopped += new WinSound.Recorder.DelegateStopped(OnRecordingStopped);

                        //Recorder starten
                        if (m_Recorder.Start(comboBoxDevs.SelectedItem.ToString(), m_Config.SamplesPerSecondClient, m_Config.BitsPerSampleClient, m_Config.ChannelsClient, m_SoundBufferCount, bufferSize))
                        {
                            //Wenn JitterBuffer
                            if (m_Config.IsTimeSyncClient)
                            {
                                m_JitterBuffer.Start();
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                ShowError(ex.Message);
            }
        }
        private void StartRecordingFromSounddevice_Client()
        {
            try
            {
                if (IsRecorderFromSounddeviceStarted_Client == false)
                {
                    //Buffer Grösse berechnen
                    int bufferSize = 0;
                    if (UseJitterBufferClientRecording)
                    {
                        bufferSize = WinSound.Utils.GetBytesPerInterval((uint)m_Config.SamplesPerSecondClient, m_Config.BitsPerSampleClient, m_Config.ChannelsClient) * (int)m_RecorderFactor;
                    }
                    else
                    {
                        bufferSize = WinSound.Utils.GetBytesPerInterval((uint)m_Config.SamplesPerSecondClient, m_Config.BitsPerSampleClient, m_Config.ChannelsClient);
                    }

                    //Wenn Buffer korrekt
                    if (bufferSize > 0)
                    {
                        //Recorder erstellen
                        m_Recorder_Client = new WinSound.Recorder();

                        //Events hinzufügen
                        m_Recorder_Client.DataRecorded += new WinSound.Recorder.DelegateDataRecorded(OnDataReceivedFromSoundcard_Client);

                        //Recorder starten
                        if (m_Recorder_Client.Start(m_Config.SoundInputDeviceNameClient, m_Config.SamplesPerSecondClient, m_Config.BitsPerSampleClient, m_Config.ChannelsClient, m_SoundBufferCount, bufferSize))
                        {
                            //Wenn JitterBuffer
                            if (UseJitterBufferClientRecording)
                            {
                                m_JitterBufferClientRecording.Start();
                            }
                        }
                    }
                }
            }
            catch (Exception)
            {
            }
        }
        private void StopRecordingFromSounddevice_Client()
        {
            try
            {
                if (IsRecorderFromSounddeviceStarted_Client)
                {
                    //Stoppen
                    m_Recorder_Client.Stop();

                    //Events entfernen
                    m_Recorder_Client.DataRecorded -= new WinSound.Recorder.DelegateDataRecorded(OnDataReceivedFromSoundcard_Client);
                    m_Recorder_Client = null;

                    //Wenn JitterBuffer
                    if (UseJitterBufferClientRecording)
                    {
                        m_JitterBufferClientRecording.Stop();
                    }
                }
            }
            catch (Exception)
            {
            }
        }
Example #5
0
        /// <summary>
        /// StopRecordingFromSounddevice
        /// </summary>
        private void StopRecordingFromSounddevice()
        {
            try
            {
                if (IsServerRunning)
                {
                    //Stoppen
                    m_Recorder.Stop();

                    //Events entfernen
                    m_Recorder.DataRecorded -= new WinSound.Recorder.DelegateDataRecorded(OnDataReceivedFromSoundcard);
                    m_Recorder.RecordingStopped -= new WinSound.Recorder.DelegateStopped(OnRecordingStopped);
                    m_Recorder = null;

                    //Wenn JitterBuffer
                    if (m_Config.IsTimeSyncClient)
                    {
                        m_JitterBuffer.Stop();
                    }
                }
            }
            catch (Exception ex)
            {
                ShowError(ex.Message);
            }
        }
Example #6
0
        /// <summary>
        /// StartRecordingFromSounddevice
        /// </summary>
        private void StartRecordingFromSounddevice()
        {
            try
            {
                if (IsServerRunning == false)
                {
                    //Buffer Grösse berechnen
                    int bufferSize = 0;
                    if (m_Config.IsTimeSyncClient)
                    {
                        bufferSize = WinSound.Utils.GetBytesPerInterval((uint)m_Config.SamplesPerSecondClient, m_Config.BitsPerSampleClient, m_Config.ChannelsClient) * (int)m_RecorderFactor;
                    }
                    else
                    {
                        bufferSize = WinSound.Utils.GetBytesPerInterval((uint)m_Config.SamplesPerSecondClient, m_Config.BitsPerSampleClient, m_Config.ChannelsClient);
                    }

                    //Wenn Buffer korrekt
                    if (bufferSize > 0)
                    {
                        //Recorder erstellen
                        m_Recorder = new WinSound.Recorder();

                        //Events hinzufügen
                        m_Recorder.DataRecorded += new WinSound.Recorder.DelegateDataRecorded(OnDataReceivedFromSoundcard);
                        m_Recorder.RecordingStopped += new WinSound.Recorder.DelegateStopped(OnRecordingStopped);

                        //Recorder starten
                        if (m_Recorder.Start(comboBoxDevs.SelectedItem.ToString(), m_Config.SamplesPerSecondClient, m_Config.BitsPerSampleClient, m_Config.ChannelsClient, m_SoundBufferCount, bufferSize))
                        {
                            //Wenn JitterBuffer
                            if (m_Config.IsTimeSyncClient)
                            {
                                m_JitterBuffer.Start();
                            }
                        }
                    }

                }
            }
            catch (Exception ex)
            {
                ShowError(ex.Message);
            }
        }