前言

本次毕业设计的初步设想是想通过C语言解析并提取出wav格式文件的相关元数据,然后设计一种文本型的数据保存得到的wav文件的采样数据,最后再通过C将此种文本数据还原为wav文件。接下来本篇文章便是对wav文件格式进行相应的了解。

WAV音频信号文件

1、wav文件的概念

WAV是最常见的声音文件格式之一,是微软公司专门为Windows开发的一种标准数字音频文件,该文件能记录各种单声道或立体声的声音信息,并能保证声音不失真。但WAV文件有一个致命的缺点,就是它所占用的磁盘空间太大(每分钟的音乐大约需要12兆磁盘空间)。它符合资源互换文件格式(RIFF)规范,用于保存Windows平台的音频信息资源,被Windows平台及其应用程序所广泛支持。Wave格式支持MSADPCM、CCITT A律、CCITT μ律和其他压缩算法,支持多种音频位数、采样频率和声道,是PC机上最为流行的声音文件格式;但其文件尺寸较大,多用于存储简短的声音片段。(参考百度百科)

补充知识:在Windows环境下,大部分多媒体文件都是按照资源互换文件格式(Resources lnterchange File Format)存放信息,简称RIFF格式。构成RIFF文件的基本单位称之为块(chunk)。每个RIFF文档是由若干个块构成。每个块(chunk)由块标识、块长度及数据等三部分所组成。(wav文件也是如此)

2、wav文件的相关概念

(1)编码格式

PCM编码是直接存储声波采样被量化后所产生的非压缩数据,故被视为单纯的无损耗编码格式,其优点是可获得高质量的音频信号。基于PCM编码的WAV格式是最基本的WAV格式,被声卡直接支持,能直接存储采样的声音数据,所存储的数据能直接通过声卡播放,还原的波形曲线与原始声音波形十分接近,播放的声音质量是一流的,在Windows平台下被支持得最好,常常被用作在其它编码的文件之间转换的中间文件。PCM的缺点是文件体积过大,不适合长时间记录。正因为如此,又出现了多种在PCM编码的基础上经改进发展起来的编码格式,如:DPCM,ADPCM编码等。

PS:对WAV格式影响最大的参数是编码格式。采用不同的编码的WAV格式是不同的,PCM是最常见的编码格式,其它的为压缩编码格式,一般很少使用,有的已经废弃。随着人们认识的进步可能还会有新的编码格式出现。今后对WAV文件格式的更多的研究是压缩编码格式。

(2)采样频率

每秒钟采集音频数据的次数。采样频率越高,音频保真度越高。计算机广泛配置的16位声卡,使用的采样频率通常包括11025Hz、22050Hz、44100Hz和48000Hz四种,其中,采用11025Hz采样的声音效果相当于电话声音的效果;采用22050HZ采样的声音效果相当于FM调频广播的效果;采用44100HZ采样的声音效果相当于CD声音的效果。

(3)采样位数(振幅采样精度)

也叫量化位数(单位:比特),是存储每个采样值所用的二进制位数。采样值反应了声音的波动状态。采样位数决定了量化精度。采样位数越长,量化的精度就越高,还原的波形曲线越真实,产生的量化噪声越小,回放的效果就越逼真。常用的量化位数有4、8、12、16、24。量化位数与声卡的位数和编码有关。如果采用PCM编码同时使用8 位声卡, 可将音频信号幅度从上限到下限化分成256个音量等级,取值范围为0-255;使用16位声卡,可将音频信号幅度划分成了64K个音量等级,取值范围为-32768至32767。

(4)采样深度

采样深度可以理解为采集卡处理声音的解析度。这个数值越大,解析度就越高,录制和回放的声音就越真实。电脑中的声音文件是用数字0和1来表示的。连续的模拟信号按一定的采样频率经数码脉冲取样后,每一个离散的脉冲信号被以一定的量化精度量化成一串二进制编码流,这串编码流的位数即为采样深度,也称为量化精度。

(5)时长

即一个wav格式文件播放所需要的全部时间。

(6)声道数(或简称通道数)

声音的通道的数目。有单声道和立体声之分,单声道的声音只能使用一个喇叭发声(有的声卡也将单声道信息处理成两个喇叭同时输出),立体声的WAV可以使两个喇叭都发声(一般左右声道有分工),这样更能感受到音频信息的空间效果。显然,双声道数据还原特性更接近人们的听力习惯,但采集得到的数据量会增加1倍。

(7)帧

帧记录了一个声音单元,其长度为样本长度(采样位数)和通道数的乘积。

(8)比特率

每秒的传输速率(位速, 也叫比特率)。如705.6kbps 或 705600bps, 其中的 b 是 bit, ps 是每秒的意思,表示每秒705600bit的容量。

参考博客:https://www.cnblogs.com/ranson7zop/p/7657874.html

WAV音频信号文件的相关知识相关推荐

  1. SQLServer数据库文件组相关知识笔记

    1.数据库文件组概念 数据库文件被组织在称为"文件组"的逻辑组中.文件组是所创建对象(如表或索引)的目标容器,对象数据将分散在其所在目标文件组的文件中,文件组可以按你要求的方式来控 ...

  2. 关于DICOM文件的相关知识

    DICOM(Digital Imaging and Communications in Medicine)即医学数字成像和通信,是医学图像和相关信息的国际标准(ISO 12052).它定义了质量能满足 ...

  3. 【C语言进阶】文件的顺序读写、随机读写、文本文件和二进制文件、文件读取结束的判定以及文件缓冲区相关知识

    ​ ​

  4. Python文件操作相关的知识笔记总结

    python文件操作相关知识 1.文件操作 路径相关 上下文管理 文件的打开模式 文件操作的常见功能 学前知识背景回顾: 字符串类型(str):程序中表示文字信息,本质是unicode编码中的二进制. ...

  5. HTML入门基础教程相关知识

    HTML入门基础教程 html是什么,什么是html通俗解答: html是hypertext markup language的缩写,即超文本标记语言.html是用于创建可从一个平台移植到另一平台的超文 ...

  6. linux怎么打开.o文件,Linux下文件I/O操作的相关知识

    Linux文件I/O主要指的是文件的输入输出,很多初学者对文件的I/O不是很了解,Linux文件I/O的操作较多,下面小编就给大家详细介绍下Linux文件I/O. linux 文件I/O教程(1) 一 ...

  7. (更新时间)2021年3月24日 python基础知识(文件和文件夹相关操作)

    文件和文件夹相关操作 有些时候,需要对文件进行重命名.删除等一些操作,python的os模块中都有这么功能 1. 文件重命名 os模块中的rename()可以完成对文件的重命名操作 rename(需要 ...

  8. 基于谱减法的音频信号噪声抑制算法实现理论知识学习总结

    一.内容 1. 音频信号噪声抑制原理 2. 谱减法的原理和相关算法 3. WAV音频文件的格式 二.音频信号噪声抑制原理 2.1语音和噪声 1.冲激噪声 冲激噪声的时域波形是类似于冲激函数那样的窄脉冲 ...

  9. Android音频开发(1):音频相关知识

    Android 音频开发 目录 Android音频开发(1):音频相关知识 Android音频开发(2):使用AudioRecord录制pcm格式音频 Android音频开发(3):使用AudioRe ...

最新文章

  1. Vs2010与VC的区别
  2. Bitmap转圆形图片Bitmap
  3. hdu 4545 魔法串 2013金山西山居创意游戏程序挑战赛——初赛(1)
  4. 计算机在职考研一月联考院校,在职研究生一月联考的分数线是多少?
  5. Python内置函数总结
  6. react之路:使用immutable管理store中的数据
  7. python爬取天天基金网_天天基金网精选基金组合年度报告20201231
  8. JavaScript操作DropDownList(Set value to dropdownlist with JavaScript)
  9. 2019.10.15学习总结
  10. spring+hibernate 下载
  11. 数学建模综合评价方法
  12. 【21天python打卡】第15天 python经典案例(1)
  13. windows7系统下使DOS窗口最大化(全屏)
  14. Oracle 索引原理和种类
  15. 深入理解JVM - 系统性能优化
  16. autocad 二次开发 拆分图纸_2,手动创建CAD二次开发项目--AutoCAD二次开发(2020版)...
  17. 大话设计模式笔记(二十四)の解释器模式
  18. 支付宝对账单功能开发
  19. eclipse中访问受限api
  20. npm卸载appium,重新安装桌面版appium

热门文章

  1. 从硬盘中安装ubuntu 18,04
  2. 什么是Nginx?有什么用?
  3. 家用千兆路由器排行榜前十名_2019最适合家用路由器哪个好_排行榜_智能家
  4. Ubuntu下彻底卸载mysql、安装mysql、及MySQLdb模块
  5. 关于HTTP Authorization
  6. 攻防世界xff和refereer
  7. android studio 闪电编译,Android Studio中Instant Run
  8. relay_log_purge参数一则
  9. 大型项目前端架构浅谈(8000字原创首发)
  10. 呀,葵花宝典![IT项目经理成长晋升记2]