如何用c++绘制音频文件的振幅
How to plot the amplitude of audio file with c++?
我正在尝试创建一个程序,使用Qt (c++),它可以绘制振幅信号(绘图像audacity但动态波形),当我播放音频文件(.wav, .mp3)使用QAudiooutput
和QIODevice
。
我所做的:
用QAudioouput
我可以播放任何音频文件,用qwtplot我可以在2D中绘制任何信号,在这种情况下,x轴将是时间,y轴将是振幅。
现在,我的问题是如何得到每一秒(时间)的振幅?
正常的、未压缩的音频表示只是其振幅作为时间的函数。.wav
文件通常是未压缩的,所以单声道.WAV
文件真的是最简单的音频文件:只是一个头跟着一系列振幅。
请注意,数字音频具有采样率。例如,32 kHz采样率意味着你的WAV文件每秒有32000个振幅。如果只有一个,你就听不见了!(& lt; 20 Hz)。你可以在Audacity中看到这一点;你可以把波形放大一点
相关文章:
- FFMpeg库:如何在音频文件中精确查找
- C++新手,想知道如何使用VS code 2019播放音频文件
- 媒体基础将音频流添加到视频文件
- 捕获音频数据并保存到AudioFlinger中的原始PCM文件
- QTCPSocket(Qt-C++)中的音频文件逐字节传输
- 音频插件.将 MIDI 映射到音频文件
- 如何在图像位中设置标志以标记音频文件的结尾
- 实时更改音频文件的速度
- webRTC : 如何通过从WAV文件获得的样本将webRTC的VAD应用于音频
- 正在读取 RAW 音频文件
- 是否可以使用带有random_shuffle的矢量随机播放音频文件
- 音频编程 SDL - 如何使用 wav 文件在命令行中指定频率切割
- 如何使用QT或Linux上的任何其他CPP框架播放WMA音频文件
- SFML不加载音频文件
- 无法使用 PlaySound 在 C++ 中播放音频文件
- 如何避免在 c++ 中使用 libssh scp 命令压缩从远程 ssh 下载的图像、音频和视频文件?
- 媒体基础多音频流文件解码错误
- 数据包大小(每数据包 mBytes)或核心音频中 AAC 文件的比特率
- 将WAV文件音频输入转换为纯ASCII字符
- 合并声音文件音频和记录在寡妇8 Metro Windows Store应用程序