1.什么是wav格式
WAV为
微软公司(Microsoft)开发的一种声音文件格式,它符合RIFF(Resource Interchange File Format)文件规范,用于保存Windows平台的
音频信息资源。 通常使用三个参数来表示声音,量化位数,取样频率和
采样点振幅。量化位数分为8位,16位,24位三种,声道有单声道和
立体声之分,单声道振幅数据为n*1矩阵点,立体声为n*2矩阵点,取样频率一般有11025Hz(11kHz) ,22050Hz(22kHz)和44100Hz(44kHz) 三种。
标准格式化的WAV文件和CD格式一样,也是44.1K的取样频率,16位量化数字,因此在声音文件质量和CD相差无几。
2. WAV文件的组成
偏移地址
|
大小
字节
|
数据块
类型
|
内容
|
00H~03H
|
4
|
4字符
|
资源交换文件标志(RIFF)
|
04H~07H
|
4
|
长整数
|
从下个地址开始到文件尾的总字节数
|
08H~0BH
|
4
|
4字符
|
WAV文件标志(WAVE)
|
0CH~0FH
|
4
|
4字符
|
波形格式标志(fmt ),最后一位空格。
|
10H~13H
|
4
|
整数
|
过滤字节(一般为00000010H),若为00000012H则说明数据头携带附加信息(见“附加信息”)。
|
14H~15H
|
2
|
整数
|
格式种类(值为1时,表示数据为线性PCM编码)
|
16H~17H
|
2
|
整数
|
通道数,单声道为1,双声道为2
|
18H~1BH
|
4
|
长整数
|
采样频率
|
1CH~1FH
|
4
|
长整数
|
波形数据传输速率(每秒平均字节数)
|
20H~21H
|
2
|
整数
|
DATA数据块长度,字节。
|
22H~23H
|
2
|
整数
|
PCM位宽
|
随后
2字节
|
2
|
整数
|
附加信息(可选,由上方过滤字节确定)
|
......................以上为对wav格式的基本了解,最近碰到一个需要合并音频文件的需求,奈何对此文件了解过少,最后借助于
NAudio
3.话不多说上代码。首先是安装Naudio的包。
aaarticlea/png;base64,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" alt="" width="468" />
3.1.上传音频文件并调用合并方法【伪代码】
public void UploadOrCombineAudioFile()
{
HttpFileCollection files = HttpContext.Current.Request.Files;
if (files == null || files.Count < )
return;
string upfileType = HttpContext.Current.Request.Form["upfileType"];//文件格式类型
/*...省略符...*/
int maxSize = * * ;//单文件上传最大限制
List<string> dirDic = new List<string> { ".mp3", ".mp4", ".pcm", ".wav" };//文件格式限制
string uploadPath = HttpContext.Current.Server.MapPath("~/AudioFile/TempFile/");//临时路径
if (!Directory.Exists(uploadPath))
Directory.CreateDirectory(uploadPath);
string fileType = string.Empty;
for (var i = ; i < files.Count; i++)
{
var postedfile = files[i];
var inputStream = postedfile.InputStream;
if (inputStream.Length > )
{
string thisfileName = files[i].FileName;
fileType = Path.GetExtension(thisfileName);
if (postedfile.InputStream == null || postedfile.InputStream.Length > maxSize || !dirDic.Contains(fileType.ToLower()))
return;
/*...我是省略符...*/
int ReadLen = ;
string uploadFileName = uploadPath + thisfileName;
byte[] bytes = new byte[];
using (FileStream stream = new FileStream(uploadFileName, FileMode.OpenOrCreate))//保存文件到指定待合并文件路径下
{
while ((ReadLen = inputStream.Read(bytes, , bytes.Length)) > )
{
stream.Write(bytes, , ReadLen);
}
}
}
}
List<string> filepaths = new List<string>(Directory.GetFiles(uploadPath));//获取待合并文件路径
//文件合并后路径
string savePath = HttpContext.Current.Server.MapPath("~/AudioFile/ComBineFile/" + DateTime.Now.ToString("yyyyMMdd") + "/");
if (!Directory.Exists(savePath))
Directory.CreateDirectory(savePath);
/*...我是省略符...*/
byte[] buffer = new byte[];
string savefullName = savePath + DateTime.Now.ToString("yyyyMMddHHmmssff") + upfileType;
if (upfileType.ToLower().Equals(".mp3"))
CombineMp3(filepaths, savefullName);//mp3合并
else if ((upfileType.ToLower().Equals(".wav")))
CombineWav(filepaths, savefullName);//wav合并
/*...我是省略符...*/
return;
}
3.2 .mp3格式合并
//命名空间
using System.IO;
using NAudio;
using NAudio.Wave;
/// <summary>
/// Mp3格式合并
/// </summary>
/// <param name="inputFiles">待合并文件路径</param>
/// <param name="outputfullName">输出文件名</param>
private void CombineMp3(List<string> inputFiles, string outputfullName)
{
using (FileStream outputStream = new FileStream(outputfullName, FileMode.OpenOrCreate))
{
foreach (string file in inputFiles)
{
Mp3FileReader reader = new Mp3FileReader(file);
if ((outputStream.Position == ) && (reader.Id3v2Tag != null))
{
outputStream.Write(reader.Id3v2Tag.RawData, , reader.Id3v2Tag.RawData.Length);
}
Mp3Frame frame;
while ((frame = reader.ReadNextFrame()) != null)
{
outputStream.Write(frame.RawData, , frame.RawData.Length);
}
}
}
}
3.3.wav格式合并
/// <summary>
/// wav格式合并
/// </summary>
/// <param name="inputFiles">待合并文件</param>
/// <param name="outputfullName">输出文件名</param>
private void CombineWav(List<string> inputFiles, string outputfullName)
{
WaveStream waveStream = WaveFormatConversionStream.CreatePcmStream(new WaveFileReader(inputFiles[]));
using (WaveFileWriter waveFileWriter = new WaveFileWriter(outputfullName, waveStream.WaveFormat))
{
foreach (string file in inputFiles)
{
waveStream = WaveFormatConversionStream.CreatePcmStream(new WaveFileReader(file));
byte[] bytes = new byte[waveStream.Length];
waveStream.Position = ;
waveStream.Read(bytes, , (int)waveStream.Length);
waveFileWriter.Write(bytes, , bytes.Length);
}
}
}
未完待续....
- 解析WAV音频文件----》生成WAV音频文件头
前言:请各大网友尊重本人原创知识分享,谨记本人博客:南国以南i WAV音频文件介绍: WAV文件是在PC机平台上很常见的.最经典的多媒体音频文件,最早于1991年8月出现在Windows3.1操作系统 ...
- S3C2416裸机开发系列19_Fatfs播放录像wav音频文件
S3C2416裸机开发系列19 Fatfs播放录像wav音频文件 国际象棋男孩 1048272975 多媒体资源,一般都是以文件的形式存储在固化存储器中.Fatfs所支持的fat32为windo ...
- C语言解析WAV音频文件
C语言解析WAV音频文件 代码地址: Github : https://github.com/CasterWx/c-wave-master 目录 前言 了解WAV音频文件 什么是二进制文件 WAV的二 ...
- Windows Phone 8初学者开发—第21部分:永久保存Wav音频文件
原文 Windows Phone 8初学者开发—第21部分:永久保存Wav音频文件 第21部分:永久保存Wav音频文件 原文地址:http://channel9.msdn.com/Series/Win ...
- Windows Phone 8初学者开发—第20部分:录制Wav音频文件
原文 Windows Phone 8初学者开发—第20部分:录制Wav音频文件 原文地址:http://channel9.msdn.com/Series/Windows-Phone-8-Develop ...
- 用 Qt 的 QAudioOutput 类播放 WAV 音频文件
用 Qt 的 QAudioOutput 类播放 WAV 音频文件 最近有一个项目,需要同时控制 4 个声卡播放不同的声音,声音文件很简单就是没有任何压缩的 wav 文件. 如果只是播放 wav 文件, ...
- Qt ------ WAV 音频文件播放
1.用 QFile 打开 WAV 文件,读出文件头信息,看看是否符合音频播放设备的要求 QAudioDeviceInfo m_audioOutputDevice;//可以获取音频输出设备的信息,比如哪 ...
- ffmpeg 合并aac格式音频文件
1:连接到一起 'ffmpeg - i "concat:D:\learn\audio\1.aac|D:\learn\audio\2.aac" - acodec copy D:\le ...
- C# NAudio录音和播放音频文件及实时绘制音频波形图(从音频流数据获取,而非设备获取)
下午写了一篇关于NAudio的录音.播放和波形图的博客,不太满意,感觉写的太乱,又总结了下 NAudio是个相对成熟.开源的C#音频开发工具,它包含录音.播放录音.格式转换.混音调整等功能.本次介绍主 ...
随机推荐
- 说说 WebSocket,3 分钟让你全面认识它
"WebSocket 是一项先进的技术,它可以在用户的浏览器和服务器之间打开交互式通信会话.通过 WebSocket,您可以向服务器发送消息并实时接收响应,而无需通过传统的轮询服务器的方式来 ...
- 《Dotnet9》系列-开源C# Winform控件库强力推荐
时间如流水,只能流去不流回! 点赞再看,养成习惯,这是您给我创作的动力! 本文 Dotnet9 https://dotnet9.com 已收录,站长乐于分享dotnet相关技术,比如Winform.W ...
- 全平台轻量开源verilog仿真工具iverilog+GTKWave使用教程
前言 如果你只是想检查Verilog文件的语法是否有错误,然后进行一些基本的时序仿真,那么Icarus Verilog 就是一个不错的选择.相比于各大FPGA厂商的IDE几个G的大小,Icarus V ...
- HttpRunner学习9--切换测试报告模板
前言 在HttpRunner中,给我们提供了 2 套测试报告模板,分别是 default_report_template.html 和 extent_report_template.html . 默认 ...
- C#程序编写高质量代码改善的157个建议【20-22】[泛型集合、选择集合、集合的安全]
建议20.使用泛型集合来替代非泛型集合 http://www.cnblogs.com/aehyok/p/3384637.html 这里有一篇文章,是我之前专门来介绍泛型的.我们应尽量的使用泛型集合.因 ...
- Shell—定时任务(crontab)
如何让shell脚本每天定时执行? 1.新建需要定时执行的shell脚本,这里为date.sh脚本. #!/bin/bash PATH=/bin:/sbin:/usr/bin:/usr/sbin:/u ...
- Distributed Systems: When you should build them, and how to scale. A step-by-step guide.
原文链接 https://medium.com/free-code-camp/distributed-systems-when-you-should-build-them-and-how-to-sca ...
- [洛谷P1967][题解]货车运输
题目 这道题让我们求最小限重的最大值 显然可以先求出最大生成树,然后在树上进行操作 因为如果两点之间有多条路径的话一定会走最大的,而其他小的路径是不会被走的 然后考虑求最小权值 可以采用倍增求LCA, ...
- 2018 经典的CVPR 关于ImageCaptioning论文
1. SemStyle: Learning to Generate Stylised Image Captions using Unaligned Text(2018 CVPR) 主要研 ...
- mysql事务隔离级别、脏读、幻读
Mysql事务隔离级别本身很重要,再加上可能是因为各大公司面试必问的缘故,在博客中出现的概率非常高,但不幸的是,中国的技术博客要么是转载,要么是照抄,质量参差不齐,好多结论都是错的,对于心怀好奇之心想 ...