void HandlePause(bool pauseStatus) { if (AVState.kNone == avState) { return; } // if (pauseStatus) { avState = AVState.kPause; } else { avState = AVState.kPlay; } // if (AVState.kPause == avState) { PipelineExecute(uniqueID, "pause"); // if (playAudio) { audioSource.Stop(); } } else if (AVState.kPlay == avState) { PipelineExecute(uniqueID, "play"); // if (playAudio) { audioSource.Play(); } } }
void Update() { if (Input.GetKeyDown(KeyCode.Space)) { if (AVState.kPlay == avState) { // Call ensures that pause is not reapplied PipelineExecute(uniqueID, "pause"); // if (playAudio) { audioSource.Stop(); } avState = AVState.kPause; } else if (AVState.kPause == avState) { // Call ensures that pause is not reapplied PipelineExecute(uniqueID, "play"); // if (playAudio) { audioSource.Play(); } avState = AVState.kPlay; } } else if (Input.GetKeyDown(KeyCode.RightArrow)) { PipelineExecute(uniqueID, "step"); // if (playAudio) { audioSource.Stop(); } avState = AVState.kPause; } if (PipelineQuery(uniqueID, "isAmbisonic") > 0.0f) { // Pass in ambisonic angles Vector3 localEuler = this.GetComponentInChildren <Camera>().transform.localEulerAngles; PipelineSetAmbisonicAngles(uniqueID, -1 * localEuler.y, localEuler.x, localEuler.z); } }
public void SetFile(string file) { if (uniqueID != 0) { PipelineExecute(uniqueID, "stop"); PipelineExecute(uniqueID, "terminate"); PipelineExecute(uniqueID, "notacmd"); PipelineDestroy(uniqueID); } uniqueID = GetUniqueID(); // PipelineCreate(uniqueID); PipelineSetAmbiMode(uniqueID, isAmbisonic); PipelineExecute(uniqueID, "file://" + file); SetPathFromUnity(uniqueID, Application.dataPath); PipelineMuteAudio(uniqueID, mute); // PipelineExecute(uniqueID, "init"); if (PipelineQuery(uniqueID, "initialized") > 0) { // The following create methods query the pipeline // information so these calls come after init above CreateTextureAndPassToPlugin(); // Create audio objects if needed playAudio = (PipelineQuery(uniqueID, "hasAudio") > 0.0f); if (playAudio) { CreateAudio(); } // PipelineExecute(uniqueID, "play"); avState = AVState.kPlay; } else { print("Failed to initialize pipeline\n"); } if (isAmbisonic) { //Cursor.lockState = CursorLockMode.Locked; } StartCoroutine("CallPluginAtEndOfFrames"); }
IEnumerator Start() { CheckPlatform(); // PrintHelp(); // uniqueID = GetUniqueID(); // PipelineCreate(uniqueID); PipelineSetAmbiMode(uniqueID, isAmbisonic); PipelineExecute(uniqueID, "file://" + Application.streamingAssetsPath + "/" + File); SetPathFromUnity(uniqueID, Application.dataPath); PipelineMuteAudio(uniqueID, mute); // PipelineExecute(uniqueID, "init"); if (PipelineQuery(uniqueID, "initialized") > 0) { // The following create methods query the pipeline // information so these calls come after init above CreateTextureAndPassToPlugin(); // Create audio objects if needed playAudio = (PipelineQuery(uniqueID, "hasAudio") > 0.0f); if (playAudio) { CreateAudio(); } // PipelineExecute(uniqueID, "play"); avState = AVState.kPlay; } else { print("Failed to initialize pipeline\n"); } if (isAmbisonic) { //Cursor.lockState = CursorLockMode.Locked; } yield return(StartCoroutine("CallPluginAtEndOfFrames")); }
void Update() { if (Input.GetKeyDown(KeyCode.Space)) { if (AVState.kPlay == avState) { // Call ensures that pause is not reapplied PipelineExecute(uniqueID, "pause"); // if (playAudio) { audioSource.Stop(); } avState = AVState.kPause; } else if (AVState.kPause == avState) { // Call ensures that pause is not reapplied PipelineExecute(uniqueID, "play"); // if (playAudio) { audioSource.Play(); } avState = AVState.kPlay; } } else if (Input.GetKeyDown(KeyCode.RightArrow)) { PipelineExecute(uniqueID, "step"); // if (playAudio) { audioSource.Stop(); } avState = AVState.kPause; } }