当前位置: 首页 > news >正文

音视频入门基础:PCM专题(3)——使用Audacity工具分析PCM音频文件

 =================================================================

音视频入门基础:PCM专题系列文章:

音视频入门基础:PCM专题(1)——使用FFmpeg命令生成PCM音频文件并播放

音视频入门基础:PCM专题(2)——使用Qt播放PCM音频文件

音视频入门基础:PCM专题(3)——使用Audacity工具分析PCM音频文件

=================================================================

一、引言

音频编辑录音器Audacity是一款开源免费的跨平台(包括Linux、Windows、Mac OS X)音频编辑器。可以使用它来录音,播放,输入输出PCM、WAV、AIFF、Ogg Vorbis和MP3等格式的音频文件。它还支持大部份常用的操作,如剪裁、贴上、混音、升/降音以及变音特效等功能。本文介绍通过Audacity工具打开、分析PCM音频文件的方法。

二、Windows平台安装Audacity工具

Audacity工具是开源的,其源码可以从github: https://github.com/audacity/audacity  下载。

在它的官网:https://support.audacityteam.org/  有提供文档讲解怎样下载和安装本工具。

根据官网上的文章:https://support.audacityteam.org/basics/downloading-and-installing-audacity

按照上面的提示操作,即可成功安装Audacity工具。

 

三、使用Audacity工具导入PCM音频文件

Audacity工具中,“文件” -> “导入” -> “原始数据”:

选择根据文章《音视频入门基础:PCM专题(1)——使用FFmpeg命令生成PCM音频文件并播放》中介绍的方法,生成的PCM音频文件:

填写该PCM音频文件的参数。因为PCM文件仅包含原始的无压缩的PCM音频数据,它没有文件头,也不包含任何采样频率、通道数、采样位数等信息,所以打开和播放的时候得指定这些参数。填写完成后点击“导入”按钮,即可成功导入:

打开后通过“暂停”和“播放”按钮即可实现暂停或者播放该PCM音频文件:

由于我们打开的PCM音频文件有2声道(立体声),所以显示了上下两个声音波形图:

四、音色、音调和响度的概念

这里先简单讲解一下声音的三个主要的主观属性,即音量(响度)、音调、音色(也称音品)。

1、响度。声音的强弱叫做响度。响度是感觉判断的声音强弱,即声音响亮的程度,根据它可以把声音排成由轻到响的序列。

2、音调。声音的高低叫做音调,频率决定音调。物体振动的快,发出声音的音调就高。振动的慢,发出声音的音调就低。

3、音色。音色指不同声音表现在波形方面总是有与众不同的特性,不同的物体振动都有不同的特点。

五、通过Audacity中的声音波形图分析音色、音调和响度

声音波形图指:将声波转换为电信号存起来,并以图展示出来。默认情况下,Audacity中的声音波形图的X轴是时间,Y轴是Amplitude(也就是声音的振幅,Audacity中可以通过修改配置,改成以分贝为单位)。

1.波形图的多少即波形的疏密程度(相同时间内振动的快慢)指音调;

2.波形图的高低即波形图的最高点和最低点的垂直距离(振幅大小)指响度;

3.波形图的形状即波形图上细小的波形差距指音色。

根据上面条件,我们可以判断出来,由于“区域2”比“区域1”的波形更密而且最高点和最低点的平均垂直距离更大,所以“区域2”比“区域1”的声音音调更高,响度更大:

六、参考文章

《如何利用波形图区分音调音色和响度-巧妙区分声音的三大特点》

《声音波形图怎么看音调和响度》

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 微信小程序 async-validator 表单验证 第三方包
  • MySQL第一阶段:多表查询、事务
  • 系留无人机在技术上有哪些优势或创新点
  • 华为高教校园网络解决方案 方案规划
  • Elasticsearch 基础
  • 关于线性代数(考研)
  • 挑战房市预测领头羊:KNN vs. 决策树 vs. 线性回归
  • 全栈嵌入式C++、STM32、Modbus、FreeRTOS和MQTT协议:工业物联网(IIoT)可视化系统设计思路(附部分代码解析)
  • 太美了!智能汽车触摸屏中控让驾驶员和乘客目不转睛
  • Oracle 解锁会话
  • 【Python】基础学习技能提升代码样例3:JSON文本处理
  • 计算机基础-IO
  • 【vluhub】elasticsearch漏洞
  • Android 基带版本号显示不正确,显示了多个一样的基带版本号
  • 【MySQL进阶之路 | 高级篇】事务的ACID特性
  • 深入了解以太坊
  • 自己简单写的 事件订阅机制
  • create-react-app做的留言板
  • golang中接口赋值与方法集
  • gops —— Go 程序诊断分析工具
  • LeetCode18.四数之和 JavaScript
  • Material Design
  • 不用申请服务号就可以开发微信支付/支付宝/QQ钱包支付!附:直接可用的代码+demo...
  • 道格拉斯-普克 抽稀算法 附javascript实现
  • 动态规划入门(以爬楼梯为例)
  • 官方解决所有 npm 全局安装权限问题
  • 前端之Sass/Scss实战笔记
  • 收藏好这篇,别再只说“数据劫持”了
  • mysql面试题分组并合并列
  • ​ 轻量应用服务器:亚马逊云科技打造全球领先的云计算解决方案
  • # 20155222 2016-2017-2 《Java程序设计》第5周学习总结
  • #php的pecl工具#
  • #WEB前端(HTML属性)
  • #每天一道面试题# 什么是MySQL的回表查询
  • #周末课堂# 【Linux + JVM + Mysql高级性能优化班】(火热报名中~~~)
  • (¥1011)-(一千零一拾一元整)输出
  • (10)Linux冯诺依曼结构操作系统的再次理解
  • (2024,Vision-LSTM,ViL,xLSTM,ViT,ViM,双向扫描)xLSTM 作为通用视觉骨干
  • (C11) 泛型表达式
  • (day 12)JavaScript学习笔记(数组3)
  • (k8s)Kubernetes本地存储接入
  • (ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY)讲解
  • (二)linux使用docker容器运行mysql
  • (附源码)ssm基于jsp高校选课系统 毕业设计 291627
  • (亲测成功)在centos7.5上安装kvm,通过VNC远程连接并创建多台ubuntu虚拟机(ubuntu server版本)...
  • (学习日记)2024.03.25:UCOSIII第二十二节:系统启动流程详解
  • (原创)可支持最大高度的NestedScrollView
  • ../depcomp: line 571: exec: g++: not found
  • .htaccess配置常用技巧
  • .NET 将混合了多个不同平台(Windows Mac Linux)的文件 目录的路径格式化成同一个平台下的路径
  • .net 前台table如何加一列下拉框_如何用Word编辑参考文献
  • .net项目IIS、VS 附加进程调试
  • :O)修改linux硬件时间
  • [ACL2022] Text Smoothing: 一种在文本分类任务上的数据增强方法
  • [BZOJ 1040] 骑士