private void ValidateSetupForm() { bool isValidModelName = !string.IsNullOrEmpty(this.modelNameTextBox.Text); bool isValidForm = SourceType == SourceType.FromFile ? LocalFileCollection.Any() && isValidModelName : isValidModelName; this.createModelButton.IsEnabled = isValidForm; }
private void OnCloseModelFormButtonClicked(object sender, RoutedEventArgs e) { LocalFileCollection.Clear(); this.modelNameTextBox.Text = string.Empty; ModelSetupState = ModelSetupState.NotStarted; this.newModelForm.IsOpen = false; }
private void OnCloseScenarioFormButtonClicked(object sender, RoutedEventArgs e) { LocalFileCollection.Clear(); this.scenarioNameTextBox.Text = string.Empty; ScenarioSetupState = FormRecognizerScenarioSetupState.NotStarted; this.newFormScenario.IsOpen = false; }
private void OnDeleteFileButtonClicked(object sender, RoutedEventArgs e) { var button = (Button)sender; if (button?.DataContext is StorageFile curFile) { LocalFileCollection.Remove(curFile); } }
private async void OnBrowseFilesButtonClicked(object sender, RoutedEventArgs e) { StorageFile selectedFile = await Util.PickSingleFileAsync(SpeakerRecognitionExplorer.AudioExtensions); if (selectedFile != null) { LocalFileCollection.Add(selectedFile); } }
private async void FileListView_OnDrop(object sender, DragEventArgs e) { if (e.DataView.Contains(StandardDataFormats.StorageItems)) { var storageItems = await e.DataView.GetStorageItemsAsync(); LocalFileCollection.Add(storageItems.Select(x => (StorageFile)x).FirstOrDefault()); } }
private async void OnBrowseFilesButtonClicked(object sender, RoutedEventArgs e) { string[] inputFormExtensions = FormRecognizerExplorer.ImageExtensions.Concat(FormRecognizerExplorer.PdfExtensions).ToArray(); IReadOnlyList <StorageFile> selectedFiles = await Util.PickMultipleFilesAsync(inputFormExtensions); if (selectedFiles != null && selectedFiles.Any()) { LocalFileCollection.AddRange(selectedFiles); } }
private async Task <SpeakerRecognitionViewModel> CreateNewModelAsync(SourceType sourceType) { StorageFile audioFileCopy = null; try { ModelSetupState = ModelSetupState.Running; string identificationModelId = string.Empty; switch (sourceType) { case SourceType.FromFile: StorageFile audioFile = LocalFileCollection.FirstOrDefault(); audioFileCopy = await audioFile.CopyAsync(ApplicationData.Current.TemporaryFolder, audioFile.Name, NameCollisionOption.GenerateUniqueName); identificationModelId = await CreateRecognitionModelFromFileAsync(audioFileCopy, speechConfig, VoiceProfileType.TextIndependentIdentification); break; case SourceType.FromMicrophone: identificationModelId = await CreateRecognitionModelFromMicrophoneAsync(speechConfig); break; } if (!string.IsNullOrEmpty(identificationModelId)) { ModelSetupState = ModelSetupState.Completed; return(new SpeakerRecognitionViewModel() { Id = Guid.NewGuid(), Name = this.modelNameTextBox.Text, IdentificationProfileId = identificationModelId }); } else { ModelSetupState = ModelSetupState.Error; } } catch (Exception) { ModelSetupState = ModelSetupState.Error; } finally { if (audioFileCopy != null) { await audioFileCopy.DeleteAsync(); } } return(null); }
private async void OnCreateScenarioButtonClicked(object sender, RoutedEventArgs e) { Guid modelId = await CreateNewScenarioAsync(); if (modelId != Guid.Empty) { var suggestionFiles = new List <Tuple <string, Uri> >(); foreach (StorageFile file in LocalFileCollection.Take(MinFilesCount)) { StorageFile copyFile = await FormRecognizerDataLoader.CopyFileToLocalModelFolderAsync(file, modelId); suggestionFiles.Add(new Tuple <string, Uri>(copyFile.Name, new Uri(copyFile.Path))); } this.ModelCreated?.Invoke(this, new FormRecognizerViewModel() { Id = modelId, Name = this.scenarioNameTextBox.Text, IsPrebuiltModel = false, SuggestionSamples = suggestionFiles }); } }