IEnumerator Start() { AudioSettings.speakerMode = AudioSpeakerMode.Mono; AudioSettings.outputSampleRate = 44100; AudioSettings.SetDSPBufferSize(320, 4); yield return(null); _audio = GetComponent <AudioSource>(); yield return(null); microphoneList.Clear(); foreach (var device in Microphone.devices) { microphoneList.Add(device); } for (int i = 0; i < Microphone.devices.Length; i++) { if (Microphone.devices[i].Equals("Microphone (Realtek(R) Audio)") || Microphone.devices[i].Equals("麥克風排列 (Realtek(R) Audio)")) { GetDevicesIndex = i; } } yield return(null); InitMic(); }
void Awake() { #if UNITY_STANDALONE_OSX && UNITY_PRO_LICENSE var sampleRate = AudioSettings.outputSampleRate; // Create an audio source. audioSource = gameObject.AddComponent <AudioSource>(); audioSource.playOnAwake = false; audioSource.loop = true; // Initialize the Lasp module. Lasp.Initialize(); // Shrink the DSP buffer to reduce latency. AudioSettings.SetDSPBufferSize(bufferSize, 4); // Create a null clip and kick it. audioSource.clip = AudioClip.Create("Lasp", 1024, 1, sampleRate, false, false); audioSource.Play(); // Estimate the latency. estimatedLatency = (float)bufferSize / sampleRate; #else Debug.LogWarning("NativeAudioInput is not supported in the current configuration."); #endif }
static int SetDSPBufferSize(IntPtr L) { LuaScriptMgr.CheckArgsCount(L, 2); int arg0 = (int)LuaScriptMgr.GetNumber(L, 1); int arg1 = (int)LuaScriptMgr.GetNumber(L, 2); AudioSettings.SetDSPBufferSize(arg0, arg1); return(0); }
void Awake() { var sampleRate = AudioSettings.outputSampleRate; // Create an audio source. audioSource = gameObject.AddComponent <AudioSource>(); audioSource.playOnAwake = false; audioSource.loop = true; #if UNITY_STANDALONE_OSX && UNITY_PRO_LICENSE // Initialize the Lasp module. Lasp.Initialize(); // Shrink the DSP buffer to reduce latency. AudioSettings.SetDSPBufferSize(bufferSizeInLaspMode, 4); // Create a null clip and kick it. audioSource.clip = AudioClip.Create("(null)", 1024, 1, sampleRate, false, false); audioSource.Play(); // Display some info. var latency = 1000.0f * bufferSizeInLaspMode / sampleRate; Debug.Log("Low-latency mode (latency=" + latency + "msec)"); #else // Create a clip which is assigned to the default microphone. int minFreq, maxFreq; Microphone.GetDeviceCaps(null, out minFreq, out maxFreq); audio.clip = Microphone.Start(null, true, 1, minFreq > 0 ? minFreq : 44100); if (audio.clip != null) { // Wait until the microphone gets initialized. int delay = 0; while (delay <= 0) { delay = Microphone.GetPosition(null); } // Start playing. audio.Play(); // Display some Info. var latency = 1000.0f * delay / sampleRate; Debug.Log("Microphone mode (latency=" + latency + "msec)"); } else { Debug.LogWarning("AudioInput: Initialization failed."); } #endif }
IEnumerator Start() { Application.targetFrameRate = 60; AudioSettings.speakerMode = AudioSpeakerMode.Mono; AudioSettings.outputSampleRate = 44100; AudioSettings.SetDSPBufferSize(320, 4); yield return(null); yield return(null); yield return(null); Application.LoadLevel("Main"); }