Exemplo n.º 1
0
        public static byte[] GetWaveData(BinaryReader file, ref WaveInfo waveInfo)
        {
            byte[] returnData;

            //Read the wave file header from the buffer.

            waveInfo.ChunkID          = file.ReadInt32();
            waveInfo.FileSize         = file.ReadInt32();
            waveInfo.RiffType         = file.ReadInt32();
            waveInfo.FormatID         = file.ReadInt32();
            waveInfo.FormatSize       = file.ReadInt32();
            waveInfo.FormatCode       = file.ReadInt16();
            waveInfo.Channels         = file.ReadInt16();
            waveInfo.SampleRate       = file.ReadInt32();
            waveInfo.FormatAverageBps = file.ReadInt32();
            waveInfo.FormatBlockAlign = file.ReadInt16();
            waveInfo.BitDepth         = file.ReadInt16();

            if (waveInfo.FormatSize == 18)
            {
                // Read any extra values
                waveInfo.FormatExtraSize = file.ReadInt16();
                file.ReadBytes(waveInfo.FormatExtraSize);
            }

            waveInfo.DataID   = file.ReadInt32();
            waveInfo.DataSize = file.ReadInt32();


            // Store the audio data of the wave file to a byte array.

            returnData = file.ReadBytes(waveInfo.DataSize);

            return(returnData);
        }
Exemplo n.º 2
0
        public static byte[] GetWaveData(BinaryReader file, ref WaveInfo waveInfo)
        {
            byte[] returnData;

            //Read the wave file header from the buffer. 

            waveInfo.ChunkID = file.ReadInt32();
            waveInfo.FileSize = file.ReadInt32();
            waveInfo.RiffType = file.ReadInt32();
            waveInfo.FormatID = file.ReadInt32();
            waveInfo.FormatSize = file.ReadInt32();
            waveInfo.FormatCode = file.ReadInt16();
            waveInfo.Channels = file.ReadInt16();
            waveInfo.SampleRate = file.ReadInt32();
            waveInfo.FormatAverageBps = file.ReadInt32();
            waveInfo.FormatBlockAlign = file.ReadInt16();
            waveInfo.BitDepth = file.ReadInt16();

            if (waveInfo.FormatSize == 18)
            {
                // Read any extra values
                waveInfo.FormatExtraSize = file.ReadInt16();
                file.ReadBytes(waveInfo.FormatExtraSize);
            }

            waveInfo.DataID = file.ReadInt32();
            waveInfo.DataSize = file.ReadInt32();


            // Store the audio data of the wave file to a byte array. 

            returnData = file.ReadBytes(waveInfo.DataSize);

            return returnData;
        }
Exemplo n.º 3
0
 public static byte[] GetWaveData(string path, ref WaveInfo waveInfo)
 {
     byte[] returnData;
     using (FileStream fs = new FileStream(path, FileMode.Open))
     {
         returnData = GetWaveData(new BinaryReader(fs), ref waveInfo);
     }
     return returnData;
 }
Exemplo n.º 4
0
 public static byte[] GetWaveData(string path, ref WaveInfo waveInfo)
 {
     byte[] returnData;
     using (FileStream fs = new FileStream(path, FileMode.Open))
     {
         returnData = GetWaveData(new BinaryReader(fs), ref waveInfo);
     }
     return(returnData);
 }
Exemplo n.º 5
0
        public static int[] WaveDataToInt16(byte[] data, ref WaveInfo waveInfo)
        {
            int[] returnData = new int[waveInfo.DataSize / 2];

            for (int i = 0; i < waveInfo.DataSize/2; i++)
            {
                returnData[i] = BitConverter.ToInt16(data, i * 2);
            }

            return returnData;
        }
Exemplo n.º 6
0
        public static int[] WaveDataToInt16(byte[] data, ref WaveInfo waveInfo)
        {
            int[] returnData = new int[waveInfo.DataSize / 2];

            for (int i = 0; i < waveInfo.DataSize / 2; i++)
            {
                returnData[i] = BitConverter.ToInt16(data, i * 2);
            }

            return(returnData);
        }
Exemplo n.º 7
0
        public static int[] WaveDataToInt16(string path, ref WaveInfo waveInfo)
        {
            byte[] data = GetWaveData(path, ref waveInfo);

            return WaveDataToInt16(data, ref waveInfo);
        }
Exemplo n.º 8
0
        public static int[] WaveDataToInt16(string path, ref WaveInfo waveInfo)
        {
            byte[] data = GetWaveData(path, ref waveInfo);

            return(WaveDataToInt16(data, ref waveInfo));
        }