数字化波形声音的wav文件浅析
—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文件浅析相关推荐
- java wav 波形_java读取wav文件(波形文件)并绘制波形图的方法
本文实例讲述了java读取wav文件(波形文件)并绘制波形图的方法.分享给大家供大家参考.具体如下: 因为最近有不少网友询问我波形文件读写方面的问题,出于让大家更方便以及让代码能够得到更好的改进,我将 ...
- 大型WAV文件的播放
大型WAV文件的播放 在多媒体软件的设计中经常要处理声音文件,用Windows提供的API函数sndPlaySound可以实现小型WAV文件的播放.但是当WAV文件大于可用内存时,sndPlaySou ...
- 用API函数播放wav文件声音不连续的解决方法
作为一个多媒体技术方面的初学者,我从wav文件的播放开始了解媒体播放的流程. 于是从建立两个线程开始,线程1用来将文件中的数据读到Buffer中去,以后称为读线程,线程2用来将Buffer中的数据送到 ...
- 在XNA 3.0 项目添加声音——通过Xact播放简单的.wav文件
问题 你想在游戏中播放声音. 注意:Zune不支持Xact,所以参见教程7-1和7-2学习如何在Zune上播放声音. 解决方案 通过使用Xact,一个XNA Game Studio 3.0自带的免费工 ...
- java播放wav文件没声音_java播放wav文件,该如何处理
(SoundDemo.java:22) at SoundDemo.main(SoundDemo.java:43) 我的wav文件可以放出来的 代码如下:是摘自一本书上的. import java.aw ...
- php javascript wav波形绘制,php分析.wav文件并绘制png格式的波形图_php技巧
用Php分析并绘制音频文件的波形图,网上还是很少见到.其实只要根据wav文件的规范,用Php的fseek,fopen,fopen,pack/unpack等函数,以及强大的gd图形库,这些都是很容易的. ...
- 【音频驱动】Linux之ALSA声卡、WAV文件相关概念
Linux之ALSA音频相关概念 Linux之ALSA音频相关概念 一.ALSA简介 二.音频相关概念 1.采样频率 2.量化位数(ADC精度) 3.声道数 4.交错模式 三.WAV文件 1.编码格式 ...
- .wav文件详解,PCM数据格式,.wav生成C语言数组
.WAV文件,PCM数据 1. 音频简介 经常见到这样的描述: 44100HZ 16bit stereo 或者 22050HZ 8bit mono 等等.44100HZ 16bit stereo: 每 ...
- NAudio用法详解(7)Wav文件结构分析及NAudio相关对象对应关系分析
目录 波形文件的基础知识 波形文件的存储过程 与声音有关的三个参数 1.采样频率 2.采样位数 3.声道数 WAV文件的编码 文件整体结构 RIFF区块 fmt区块(FORMAT区块) DATA区块 ...
最新文章
- Python3 的urllib实例
- 论Docker swarm与Kubernetes孰强孰弱
- 特斯拉AI主管给你的33条深度学习训练建议
- 【杂谈】为什么有三AI自断财路,从来不接广告
- WebStorm 2017.1增加对Vue.js的支持
- ERP text object hard code
- 用HttpReports快速搭建API分析平台
- 设计模式C++实现--Decorator模式
- 如何修改linux的 系统语言
- Eclipse编辑python时的快捷键
- 第二章从收入的预测分析开始
- SQL将A库表的数据插入B库的某张表
- ARMv6 ARMv7 架构 整体介绍
- envi与arcgis文件转换_ArcGIS ENVI中土地分类格式互转、土地利用转移矩阵、变化图谱计算详解...
- sap 流程图 退货销售订单_ERP系统:退货流程的解决方案
- 光栅图形学-中点画线法
- 网易人工智能事业部:“悄无声息”再捞金!
- 一群阿里码农的公益实践:用技术禁毒、打拐
- VMware vSphere 7.0 发行说明文档
- 阿里云大数据组件零碎点总结(不定时更新)
热门文章
- 怎么修复SONY索尼相机摄像机断电死机损坏的MP4视频文件
- Android设备上一张图片的显示过程
- ipv4转ipv6的算法
- 欢迎使用Windows安装MySQL(安装版)教程,全网最细
- python遇到错误跳过_python跳过错误
- linux卸载cuda10.0,Ubuntu卸载cuda10.0
- ubuntu将cuda卸载干净
- 阿里云短信验证码提示“Message“:“模板变量缺少对应参数值“
- 【RK3399】[Android 6.0] linux4.4 调试8723BU记录过程
- 虚拟机安装Win10纯净版操作系统