- Home /
Fmod + Unity Stop Event Problem
Hello, I am using Fmod with unity, I am checking to see if I can fully control the system. I managed to play a sound and control a parameter, but it seems that I can't stop the sound the StopMusic () function doesn't work, please help
private FMOD.Studio.ParameterInstance cutoff;
private FMOD.Studio.EventInstance musicEvent;
private float val;
// Use this for initialization
void Start ()
{
musicEvent = FMOD_StudioSystem.instance.GetEvent ("event:/Music/Music");
if(musicEvent.getParameter("MusicFader",out cutoff) != FMOD.RESULT.OK)
{
Debug.LogError("MusicFader is not a prameter on the event");
return;
}
cutoff.getValue(out val);
}
// Update is called once per frame
void Update ()
{
if(Input.GetKey(KeyCode.Keypad1))
{
val += Time.deltaTime;
cutoff.setValue(val);
print (val);
}
if(Input.GetKey(KeyCode.Keypad2))
{
val -= Time.deltaTime;
cutoff.setValue(val);
print (val);
}
}
public void PlayMusic()
{
print ("Yayt");
//musicEvent = FMOD_StudioSystem.instance.GetEvent ("event:/Music/Music");
print (val);
musicEvent.start ();
}
public void StopMusic()
{
print ("StopMusic");
musicEvent.stop (FMOD.Studio.STOP_MODE.IMMEDIATE);
musicEvent.release ();
}
Answer by Darken · Feb 02, 2015 at 12:24 AM
I got it!, I had 2 of those scripts in the scene. One Instance was calling the play function and then the other was calling the stop function on itself.
Answer by prabakarsjn · Oct 17, 2018 at 11:41 AM
try bellow code
using System.Collections; using System.Collections.Generic; using UnityEngine; using FMODUnity; public class playFgmsound : MonoBehaviour { // Use this for initialization FMOD.Studio.EventInstance inst; void Start () { inst = FMODUnity.RuntimeManager.CreateInstance("event:/bgm"); FMODUnity.RuntimeManager.AttachInstanceToGameObject(inst,transform,GetComponent()); playsound(); }
// Update is called once per frame
void playsound () {
// RuntimeManager.PauseAllEvents(true);
inst.start();
StartCoroutine(resumeEvents());
}
IEnumerator resumeEvents()
{
yield return new WaitForSeconds(5);
// RuntimeManager.PauseAllEvents(false);
inst.stop(FMOD.Studio.STOP_MODE.ALLOWFADEOUT);
}
}
Your answer
Follow this Question
Related Questions
how do interactive music in gameplay ?? like game Lumines... 1 Answer
Unity3d game to send two different audio to two output devices separately 0 Answers
Rotating camera in a circle using left and right keys.. 1 Answer
Unity bug!! (HELP)!! 5 Answers
FMOD Error in Unity and Xcode when using Simulator 0 Answers