/// 音频WAV格式的字节数组
/// </summary>
/// <returns>The to WA.</returns>
/// <param name="clip">Clip.</param>
public static byte[] EncodeToWAV(this AudioClip clip)
{
byte[] bytes = null;
using (var memoryStream = new MemoryStream())
{
memoryStream.Write(new byte[44], 0, 44);//预留44字节头部信息
byte[] bytesData = clip.GetData16();
memoryStream.Write(bytesData, 0, bytesData.Length);
memoryStream.Seek(0, SeekOrigin.Begin);
byte[] riff = System.Text.Encoding.UTF8.GetBytes("RIFF");
memoryStream.Write(riff, 0, 4);
byte[] chunkSize = BitConverter.GetBytes(memoryStream.Length - 8);
memoryStream.Write(chunkSize, 0, 4);
byte[] wave = System.Text.Encoding.UTF8.GetBytes("WAVE");
memoryStream.Write(wave, 0, 4);
byte[] fmt = System.Text.Encoding.UTF8.GetBytes("fmt ");
memoryStream.Write(fmt, 0, 4);
byte[] subChunk1 = BitCo
unity wav 格式音频转换为二进制文件
最新推荐文章于 2023-05-16 16:46:53 发布