Exemple #1
0
        public SoundclusterSfz(BlstFile aBlstFile)
            : base()
        {
            try
            {
                for (int i = 0; i < aBlstFile.pathBankList.Count; i++)
                {
                    UnityEngine.Debug.Log(aBlstFile.pathBankList[i]);

                    FileStream lFileStream = new FileStream(aBlstFile.pathBankList[i], FileMode.Open, FileAccess.Read);
                    BnkFile    lBnkFile    = new BnkFile(lFileStream);
                    BankSfz    lSfzBank    = new BankSfz(lBnkFile, aBlstFile.pathWaveform);

                    if (bankDictionary.ContainsKey(i) == false)
                    {
                        bankDictionary.Add(i, lSfzBank);
                    }

                    if (i == 1)
                    {
                        if (bankDictionary.ContainsKey(0x7F00) == false)
                        {
                            bankDictionary.Add(0x7F00, lSfzBank);
                        }
                    }
                }
            }
            catch (Exception aExpection)
            {
                Logger.LogError("Expection:" + aExpection.ToString());
            }
        }
Exemple #2
0
        public BankSfz(BnkFile aBnkFile, string aPathWaveform)
            : base()
        {
            Dictionary <string, string> lPathWaveformDictionary = GetWaveformPathDictionary(aPathWaveform);

            for (int i = 0; i < aBnkFile.pathSfzList.Count; i++)
            {
                FileStream lFileStream = new FileStream(aBnkFile.pathSfzList[i], FileMode.Open, FileAccess.Read);
                SfzFile    lSfzFile    = new SfzFile(lFileStream);

                instrumentArray[i] = new InstrumentSfz(lSfzFile, lPathWaveformDictionary);
            }
        }
Exemple #3
0
 static void Main(string[] args)
 {
     if (args.Length == 3)
     {
         IBnkFile bnkFile         = BnkFile.Create(args[0]);
         var      numberToReplace = uint.Parse(args[1]);
         bnkFile.ReplaceWemFile(numberToReplace, args[2]);
         bnkFile.WriteToFile("NEW_FILE.bnk");
         Console.ReadKey();
         Console.WriteLine("Done.");
     }
     else
     {
         Console.WriteLine("Usage: BoteSFX-Example <Original .BNK> <File Number To Replace> <.WEM To replace with>");
         Console.WriteLine("Example: BoteSFX-Example WOWS_UI.BNK 12345678 something.wem");
     }
 }
Exemple #4
0
        public BankSfz(BnkFile aBnkFile)
            : base()
        {
            for (int i = 0; i < aBnkFile.pathSfzArray.Length; i++)
            {
                if (aBnkFile.pathSfzArray[i] != null)
                {
                    using (FileStream uFileStream = new FileStream(aBnkFile.pathSfzArray[i], FileMode.Open, FileAccess.Read))
                    {
                        Logger.Debug(aBnkFile.pathSfzArray[i]);

                        SfzFile lSfzFile = new SfzFile(uFileStream);

                        instrumentArray[i] = new InstrumentSfz(lSfzFile);
                    }
                }
            }
        }
Exemple #5
0
        public void Initialize()
        {
            if (_engineOn != null)
            {
                return;
            }

            _isActive = true;

            BnkFile bnk    = new BnkFile(_car.Descriptor.SoundBnkFile);
            var     sample = bnk.Samples[0];

            _engineOnEffect  = new SoundEffect(sample.PCMData, sample.SampleRate, sample.NbrChannels == 2 ? AudioChannels.Stereo : AudioChannels.Mono);
            _engineOn        = _engineOnEffect.CreateInstance();
            sample           = bnk.Samples[1];
            _engineOffEffect = new SoundEffect(sample.PCMData, sample.SampleRate, sample.NbrChannels == 2 ? AudioChannels.Stereo : AudioChannels.Mono);
            _engineOff       = _engineOffEffect.CreateInstance();
            sample           = bnk.Samples[3];
            _gearChange      = new SoundEffect(sample.PCMData, sample.SampleRate, sample.NbrChannels == 2 ? AudioChannels.Stereo : AudioChannels.Mono);


            //temp = Engine.Instance.ContentManager.Load<SoundEffect>(String.Format("Content/Audio/Vehicles/{0}/engine-on-low", _car.Descriptor.Name));
            //_engineOnLow = temp.CreateInstance();
            ////.Play(0.3f, 0, 0);
            //temp = Engine.Instance.ContentManager.Load<SoundEffect>(String.Format("Content/Audio/Vehicles/{0}/engine-on-high", _car.Descriptor.Name));
            //_engineOn = temp.CreateInstance(); // temp.Play(0.3f, 0, 0);
            //temp = Engine.Instance.ContentManager.Load<SoundEffect>(String.Format("Content/Audio/Vehicles/{0}/engine-off-low", _car.Descriptor.Name));
            //_engineOffLow = temp.CreateInstance(); //temp.Play(0.3f, 0, 0);
            //temp = Engine.Instance.ContentManager.Load<SoundEffect>(String.Format("Content/Audio/Vehicles/{0}/engine-off-high", _car.Descriptor.Name));
            //_engineOff = temp.CreateInstance(); //temp.Play(0.3f, 0, 0);

            BnkFile envBnk = new BnkFile("COLL_SW.BNK");

            sample              = envBnk.Samples[GRASS_SLIDE_INDEX];
            _grassSlide         = new SoundEffect(sample.PCMData, sample.SampleRate, sample.NbrChannels == 2 ? AudioChannels.Stereo : AudioChannels.Mono);
            _grassSlideInstance = _grassSlide.CreateInstance();

            _skids.Add(Engine.Instance.ContentManager.Load <SoundEffect>("Content/Audio/Vehicles/common/skid1"));
            _skids.Add(Engine.Instance.ContentManager.Load <SoundEffect>("Content/Audio/Vehicles/common/skid2"));
            _skids.Add(Engine.Instance.ContentManager.Load <SoundEffect>("Content/Audio/Vehicles/common/skid3"));
        }