void Start() { // Restart recording if companion app for mic input has reconnected serverSideConnectRequestManager.ClientConnectedEventStream .Where(clientConnectionEvent => clientConnectionEvent.IsConnected && !micSampleRecorder.IsRecording && micProfile != null && micProfile.ConnectedClientId == clientConnectionEvent.ConnectedClientHandler.ClientId) .Subscribe(_ => micSampleRecorder.StartRecording()) .AddTo(gameObject); // Find first sentence to analyze SetRecordingSentence(recordingSentenceIndex); if (micProfile != null) { roundingDistance = playerProfile.Difficulty.GetRoundingDistance(); micSampleRecorder.MicProfile = micProfile; micSampleRecorder.StartRecording(); // The AudioSampleAnalyzer uses the MicSampleRecorder's sampleRateHz. Thus, it must be initialized after the MicSampleRecorder. audioSamplesAnalyzer = MicPitchTracker.CreateAudioSamplesAnalyzer(settings.AudioSettings.pitchDetectionAlgorithm, micSampleRecorder.SampleRateHz); audioSamplesAnalyzer.Enable(); } else { Debug.LogWarning($"No mic for player {playerProfile.Name}. Not recording player notes."); gameObject.SetActive(false); } }
public void Init(MicProfile micProfile) { micPitchTracker = GetComponentInChildren <MicPitchTracker>(); audioWaveFormVisualizer = GetComponentInChildren <AudioWaveFormVisualizer>(); micImage.color = micProfile.Color; micPitchTracker.MicProfile = micProfile; micPitchTracker.MicSampleRecorder.StartRecording(); }
void Start() { // Find first sentence to analyze SetRecordingSentence(recordingSentenceIndex); if (micProfile != null) { roundingDistance = playerProfile.Difficulty.GetRoundingDistance(); audioSamplesAnalyzer = MicPitchTracker.CreateAudioSamplesAnalyzer(settings.AudioSettings.pitchDetectionAlgorithm, micSampleRecorder.SampleRateHz); audioSamplesAnalyzer.Enable(); micSampleRecorder.MicProfile = micProfile; micSampleRecorder.StartRecording(); } else { Debug.LogWarning($"No mic for player {playerProfile.Name}. Not recording player notes."); gameObject.SetActive(false); } }
public SongSelectMicEntryControl(GameObject gameObject, VisualElement visualElement, MicPitchTracker micPitchTracker) { this.gameObject = gameObject; this.visualElement = visualElement; this.micPitchTracker = micPitchTracker; }