public static AudioClip ToAudioClip(byte[] audioData, string fileName) { using (MemoryStream fs = new MemoryStream(audioData)) { using (BinaryReader reader = new BinaryReader(fs)) { GetChunk(fs, reader); // RIFF chunk FmtChunk formatChunk = (FmtChunk)GetChunk(fs, reader); while (fs.Position < fs.Length) { Chunk chunk = GetChunk(fs, reader); if (chunk.Ident == ChunkType.Data) { DataChunk dc = (DataChunk)chunk; float[] data = dc.GetAudioData(formatChunk); AudioClip clip = AudioClip.Create(fileName, data.Length, 1, formatChunk.Frequency, false); clip.SetData(data, 0); return(clip); } } } } return(null); }