public void PlayMusic(string filename, bool repeat = false, byte volume = Byte.MaxValue) { if (Disabled) { return; } // var path = $"Assets/StreamingAssets/Tracker/{filename}"; var path = GetDataPath("Tracker/" + filename); Logger.Log($"Loading track {filename} from {path}", Category.SunVox); int loadResult = SunVox.sv_load((int)Slot.Music, path); if (loadResult == 0) { SunVox.sv_stop((int)Slot.Music); SunVox.sv_set_autostop((int)Slot.Music, repeat ? 0 : 1); SunVox.sv_volume((int)Slot.Music, volume); SunVox.sv_play_from_beginning((int)Slot.Music); } else { Logger.LogWarning($"Music load error: {path}", Category.SunVox); } }
private void InitAnnounce() { SunVox.sv_open_slot((int)Slot.Announce); Logger.LogTrace("Loading Announce project from file", Category.SunVox); // var path = "Assets/StreamingAssets/announcement2.sunvox"; var path = GetDataPath("announcement2.sunvox"); if (SunVox.sv_load((int)Slot.Announce, path) == 0) { // log( "Loaded." ); } else { Logger.LogWarning($"Announce project load error: {path}", Category.SunVox); // SunVox.sv_volume( (int)Slot.Announce, 256 ); } }
private void Start() { log("-Press Space for toggle music-\n"); try { int ver = SunVox.sv_init("0", 44100, 2, 0); if (ver >= 0) { int major = (ver >> 16) & 255; int minor1 = (ver >> 8) & 255; int minor2 = (ver) & 255; log(String.Format("SunVox lib version: {0}.{1}.{2}", major, minor1, minor2)); SunVox.sv_open_slot(0); log("Loading SunVox song from file..."); var path = "Assets/StreamingAssets/test.sunvox"; // This path is correct only for standalone if (SunVox.sv_load(0, path) == 0) { log("Loaded."); } else { log("Load error."); SunVox.sv_volume(0, 256); } SunVox.sv_play_from_beginning(0); } else { log("sv_init() error " + ver); } } catch (Exception e) { log("Exception: " + e); } }