Exemple #1
0
        static void Main()
        {
            JAIDSP.Init();

            /*
             * var by = File.ReadAllBytes("3.wsy");
             * var bReader = new BeBinaryReader(new MemoryStream(by));
             * var WSYSLoader = new JA_WSYSLoader_V1();
             * var wsy0 = WSYSLoader.loadWSYS(bReader,0x00000000);
             * //var ref0 = JsonConvert.SerializeObject(wsy0,Formatting.Indented);
             * //File.WriteAllText("yes.json", ref0);
             *
             * // Console.WriteLine($"{wsy0.id} -- {wsy0.Scenes[4].CDFData.Length} @ {wsy0.Groups[4].Waves.Length} ");
             *
             * var tarcdf = wsy0.Scenes[0].CDFData;
             * for (int i=0; i < tarcdf.Length; i++)
             * {
             *  var ccdf = tarcdf[i];
             *  var cw1 = ccdf.awid;
             * //Console.WriteLine($"{cw1} -- {wsy0.Groups[cw1]}");
             *
             * }
             */

            //Console.WriteLine(wsy0.Groups[0].awFile);
            //Console.ReadLine();
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            Application.Run(new MainMenu());
        }
Exemple #2
0
        private void btnPlay_Click(object sender, EventArgs e)
        {
            var    awFile  = root.currentWGroup;
            var    wavDesc = root.currentWave;
            Stream fStrm   = null;

            try
            {
                fStrm = File.OpenRead(awFile.awFile);
            } catch
            {
                MessageBox.Show($"Failed to open '{awFile.awFile}'", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }

            byte[] tf = new byte[wavDesc.wsys_size];
            fStrm.Position = wavDesc.wsys_start;
            fStrm.Read(tf, 0, wavDesc.wsys_size);
            var ADP = ADPCM.ADPCMToPCM16(tf, ADPCM.ADPCMFormat.FOUR_BIT);
            var w   = JAIDSP.SetupSoundBuffer(ADP, 1, (int)wavDesc.sampleRate, 0);
            var b   = new JAIDSPVoice(ref w);

            b.play();
            fStrm.Close();
        }