—windows下一种通用格式叫做RIFF(资源互换文件格式),wav文件也是RIFF格式支持的音频文件结构。
RIFF基本结构图

wav文件格式归纳


注:本图摘自北京电子科技学院学报第12卷第2期

举例分析

在网上下载了一段12秒wav格式的windows开机音乐,二进制读取后如下图



选中出存放的是RIFF相应的ascll码值,说明本文件为RIFF文件类型。

选中处代表文件长度为002292D4H字节

选中处代表该文件是WAVE文件

选中处代表为wav文件基本块之一的fmt(wav文件格式类型)块;

0010一:0013(黑色)单元的内容表示fmt块的净长度为10H字节0
:0014(红色)单元内容0001表示本语音信号采用的编码方式为PcM制;
:0016(绿色)单元内容0002表示为立体声语音信号,其采样频率为56ACH(:0018一:001B单元的双字(黄色)),单位时间所记录的数据量(:001C一:001F单元内容所表示)为02B110H字节.
从0022单元可以看出本音频文件采用16位采样。
注:本文主要参考《WAV语音文件格式的分析与处理》——张敬怀 马道钧,为其中基础知识的简化版本。
问题一:8比特和16比特样值的二进制编码表示一样吗?
答:8位单声道语音文件单位时间所记录的数据量约为21.SKB,依此类推,16位立体声语音文件单位时间记录的数据量约为86KB

问题二:现有的wav文件支持哪几种音频压缩方法?

数字化波形声音的wav文件浅析相关推荐

  1. java wav 波形_java读取wav文件(波形文件)并绘制波形图的方法

    本文实例讲述了java读取wav文件(波形文件)并绘制波形图的方法.分享给大家供大家参考.具体如下: 因为最近有不少网友询问我波形文件读写方面的问题,出于让大家更方便以及让代码能够得到更好的改进,我将 ...

  2. 大型WAV文件的播放

    大型WAV文件的播放 在多媒体软件的设计中经常要处理声音文件,用Windows提供的API函数sndPlaySound可以实现小型WAV文件的播放.但是当WAV文件大于可用内存时,sndPlaySou ...

  3. 用API函数播放wav文件声音不连续的解决方法

    作为一个多媒体技术方面的初学者,我从wav文件的播放开始了解媒体播放的流程. 于是从建立两个线程开始,线程1用来将文件中的数据读到Buffer中去,以后称为读线程,线程2用来将Buffer中的数据送到 ...

  4. 在XNA 3.0 项目添加声音——通过Xact播放简单的.wav文件

    问题 你想在游戏中播放声音. 注意:Zune不支持Xact,所以参见教程7-1和7-2学习如何在Zune上播放声音. 解决方案 通过使用Xact,一个XNA Game Studio 3.0自带的免费工 ...

  5. java播放wav文件没声音_java播放wav文件,该如何处理

    (SoundDemo.java:22) at SoundDemo.main(SoundDemo.java:43) 我的wav文件可以放出来的 代码如下:是摘自一本书上的. import java.aw ...

  6. php javascript wav波形绘制,php分析.wav文件并绘制png格式的波形图_php技巧

    用Php分析并绘制音频文件的波形图,网上还是很少见到.其实只要根据wav文件的规范,用Php的fseek,fopen,fopen,pack/unpack等函数,以及强大的gd图形库,这些都是很容易的. ...

  7. 【音频驱动】Linux之ALSA声卡、WAV文件相关概念

    Linux之ALSA音频相关概念 Linux之ALSA音频相关概念 一.ALSA简介 二.音频相关概念 1.采样频率 2.量化位数(ADC精度) 3.声道数 4.交错模式 三.WAV文件 1.编码格式 ...

  8. .wav文件详解,PCM数据格式,.wav生成C语言数组

    .WAV文件,PCM数据 1. 音频简介 经常见到这样的描述: 44100HZ 16bit stereo 或者 22050HZ 8bit mono 等等.44100HZ 16bit stereo: 每 ...

  9. NAudio用法详解(7)Wav文件结构分析及NAudio相关对象对应关系分析

    目录 波形文件的基础知识 波形文件的存储过程 与声音有关的三个参数 1.采样频率 2.采样位数 3.声道数 WAV文件的编码 文件整体结构 RIFF区块 fmt区块(FORMAT区块) DATA区块 ...

最新文章

  1. Python3 的urllib实例
  2. 论Docker swarm与Kubernetes孰强孰弱
  3. 特斯拉AI主管给你的33条深度学习训练建议
  4. 【杂谈】为什么有三AI自断财路,从来不接广告
  5. WebStorm 2017.1增加对Vue.js的支持
  6. ERP text object hard code
  7. 用HttpReports快速搭建API分析平台
  8. 设计模式C++实现--Decorator模式
  9. 如何修改linux的 系统语言
  10. Eclipse编辑python时的快捷键
  11. 第二章从收入的预测分析开始
  12. SQL将A库表的数据插入B库的某张表
  13. ARMv6 ARMv7 架构 整体介绍
  14. envi与arcgis文件转换_ArcGIS ENVI中土地分类格式互转、土地利用转移矩阵、变化图谱计算详解...
  15. sap 流程图 退货销售订单_ERP系统:退货流程的解决方案
  16. 光栅图形学-中点画线法
  17. 网易人工智能事业部:“悄无声息”再捞金!
  18. 一群阿里码农的公益实践:用技术禁毒、打拐
  19. VMware vSphere 7.0 发行说明文档
  20. 阿里云大数据组件零碎点总结(不定时更新)

热门文章

  1. 怎么修复SONY索尼相机摄像机断电死机损坏的MP4视频文件
  2. Android设备上一张图片的显示过程
  3. ipv4转ipv6的算法
  4. 欢迎使用Windows安装MySQL(安装版)教程,全网最细
  5. python遇到错误跳过_python跳过错误
  6. linux卸载cuda10.0,Ubuntu卸载cuda10.0
  7. ubuntu将cuda卸载干净
  8. 阿里云短信验证码提示“Message“:“模板变量缺少对应参数值“
  9. 【RK3399】[Android 6.0] linux4.4 调试8723BU记录过程
  10. 虚拟机安装Win10纯净版操作系统