private void SaveAndAffiliateAudioFile() { // First, delete the old clip. dm.DeleteTermAudio0(currTerm); AudioClip clip = clipPlayer.GetClip(); clip = AudioEditor.GetTrailingSilenceTrimmed(clip); Guid newGuid = Guid.NewGuid(); // Assign it to the Term! currTerm.audio0Guid = newGuid.ToString(); dm.SaveStudySetLibrary(); // Save audio file. string filePath = SaveKeys.TermAudioClip0(currTerm.audio0Guid); SavWav.Save(filePath, clip); //EncodeMP3.ConvertAndWrite(clip, filePath, 128); Debug.Log("SAVED audio. Length: " + clip.length); // Set this as the current clip! UpdateVisualsForClip(clip); GameManagers.Instance.EventManager.OnAnySetContentsChanged(); }
private void ShowAudio() { if (_AudioEditor == null) { _AudioEditor = new AudioEditor(); } MyObj.Children.Clear(); MyObj.Children.Add(_AudioEditor); MyUri.Editor = _AudioEditor; }
public AudioComponent(GUIController guiController, AGSEditor agsEditor) : base(guiController, agsEditor, "AGSAudioClips") { _fileTypeMappings.Add(".mp3", AudioClipFileType.MP3); _fileTypeMappings.Add(".ogg", AudioClipFileType.OGG); _fileTypeMappings.Add(".voc", AudioClipFileType.VOC); _fileTypeMappings.Add(".wav", AudioClipFileType.WAV); _fileTypeMappings.Add(".mid", AudioClipFileType.MIDI); _fileTypeMappings.Add(".mod", AudioClipFileType.MOD); _fileTypeMappings.Add(".xm", AudioClipFileType.MOD); _fileTypeMappings.Add(".s3m", AudioClipFileType.MOD); _fileTypeMappings.Add(".it", AudioClipFileType.MOD); _iconMappings.Add(AudioClipFileType.MP3, "AGSAudioClipIconMp3"); _iconMappings.Add(AudioClipFileType.OGG, "AGSAudioClipIconOgg"); _iconMappings.Add(AudioClipFileType.VOC, "AGSAudioClipIconVoc"); _iconMappings.Add(AudioClipFileType.WAV, "AGSAudioClipIconWav"); _iconMappings.Add(AudioClipFileType.MIDI, "AGSAudioClipIconMidi"); _iconMappings.Add(AudioClipFileType.MOD, "AGSAudioClipIconMod"); _agsEditor.GetSourceControlFileList += new GetSourceControlFileListHandler(_agsEditor_GetSourceControlFileList); _agsEditor.PreCompileGame += new AGSEditor.PreCompileGameHandler(_agsEditor_PreCompileGame); _editor = new AudioEditor(); _document = new ContentDocument(_editor, "Audio", this); _guiController.RegisterIcon("AGSAudioClipsIcon", Resources.ResourceManager.GetIcon("audio.ico")); _guiController.RegisterIcon("AGSAudioClipIconMidi", Resources.ResourceManager.GetIcon("audio-midi.ico")); _guiController.RegisterIcon("AGSAudioClipIconMod", Resources.ResourceManager.GetIcon("audio-mod.ico")); _guiController.RegisterIcon("AGSAudioClipIconMp3", Resources.ResourceManager.GetIcon("audio-mp3.ico")); _guiController.RegisterIcon("AGSAudioClipIconOgg", Resources.ResourceManager.GetIcon("audio-ogg.ico")); _guiController.RegisterIcon("AGSAudioClipIconWav", Resources.ResourceManager.GetIcon("audio-wav.ico")); _guiController.RegisterIcon("AGSAudioClipIconVoc", Resources.ResourceManager.GetIcon("audio-voc.ico")); _guiController.RegisterIcon("AGSAudioSpeechIcon", Resources.ResourceManager.GetIcon("audio_speech.ico")); _guiController.RegisterIcon(AUDIO_CLIP_TYPE_ICON, Resources.ResourceManager.GetIcon("tree_audio_generic.ico")); _guiController.ProjectTree.AddTreeRoot(this, TOP_LEVEL_COMMAND_ID, "Audio", "AGSAudioClipsIcon"); _guiController.ProjectTree.OnAfterLabelEdit += new ProjectTree.AfterLabelEditHandler(ProjectTree_OnAfterLabelEdit); RePopulateTreeView(); }
public static void CreateWindow() { AudioEditor window = GetWindow <AudioEditor>("音效管理"); window.Show(); }
private void RecreateDocument() { _editor = new AudioEditor(); _document = new ContentDocument(_editor, "Audio", this, AUDIO_CLIP_TYPE_ICON); }
IEnumerator LoadAudioClipCoroutine(string fullPath, bool doPlayImmediately) { fullPath = "file:///" + fullPath; // HACK for Mac? We can't find the audio file without this prefix, but *only* for loading, not saving. using (var uwr = UnityWebRequestMultimedia.GetAudioClip(fullPath, AudioType.WAV)) { ((DownloadHandlerAudioClip)uwr.downloadHandler).streamAudio = true; audioSource.clip = null; // default this to null, in case we fail. yield return(uwr.SendWebRequest()); if (uwr.isNetworkError || uwr.isHttpError) { AppDebugLog.LogError(uwr.error); yield break; } DownloadHandlerAudioClip dlHandler = (DownloadHandlerAudioClip)uwr.downloadHandler; yield return(dlHandler); if (dlHandler.isDone) { audioSource.clip = dlHandler.audioClip; if (audioSource.clip != null) { WWW download = new WWW(fullPath); // HACKED, using WWW! I think DownloadHandlerAudioClip doesn't support getting the file samples. Not sure tho. yield return(download); bool threeD = false; bool stream = false; AudioClip clip = download.GetAudioClip(threeD, stream, AudioType.WAV); //float[] samples = new float[clip.samples * clip.channels]; //clip.GetData(samples, 0); //for (int s = 0; s < 100; s++) Debug.Log(samples[s]); //AudioClip clip = DownloadHandlerAudioClip.GetContent(uwr); if (SettingsManager.Instance.DoTrimAudioClips) { clip = AudioEditor.GetQuietTrimmed(clip); } if (SettingsManager.Instance.DoNormalizeAudioClips) { clip = AudioEditor.GetNormalized(clip); } audioSource.clip = clip; GameManagers.Instance.EventManager.OnClipLoadSuccess(clip); if (doPlayImmediately) { Play(); } } else { GameManagers.Instance.EventManager.OnClipLoadFail(); Debug.Log("Couldn't load a valid AudioClip."); } } else { Debug.Log("The download process is not completely finished."); } } }
static void ImportAudio() { Debug.Log("import audio..."); //PanelEditor.CreatePanelsFromPSD(); AudioEditor.AddAudio(); }