audio - 提取音频文件的二进制表示

标签 audio binary extract speech

我想从音频文件中提取确切的二进制实现(可能以大胆的方式记录)。我希望它能够提取那些表示来识别语音和声音,即一个基本的语音识别软件。

音频文件也可以是 .mp3 或 .wav 。请帮忙

编辑-
我想获得音频的波形,而不是图形,而是二进制表示,以便我可以将语音转换为文本。

最佳答案

一个基本的 WAV 文件由一个标题(我在想 60 字节长)和实际数据组成。

数据由整数集组成。为每个“样本”生成一组整数,可能是每秒 8000 次或每秒 44000 次或其他一些采样率。

一组整数(表示单个样本)由每个 channel 的一个整数组成,理论上可以是任何数字,但通常是 1(单声道)或 2(立体声)。每个单独的整数可以是 1、2、3 或 4 个字节长。

单个整数表示该 channel 在该特定时刻的声级。如果所表示的声音是正弦波,则整数的值为 V * sin(K * t) , 其中 V是音量,K是一些常数,t是当前时间。请注意,整数是有符号的,并且“声级”在任何特定时刻都可以是负数或正数(通常大约一半时间为负数)。
采样率、 channel 数和单个 channel 值的大小都编码在 header 中的字段中(以及其他几条信息)。

通常,要提取信号的频率,请应用 Fast Fourier Transform (FFT)到二进制声音数据,从“时域”转换到“频域”。这通常会在每秒大约 5 到 50 次之间完成,具体取决于采样率和其他因素。 (有几个可用的开源 FFT 库。)但是,语音识别也采用了许多其他算法。

关于audio - 提取音频文件的二进制表示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9558167/

相关文章:

ios - 在 iOS 中控制应用程序之外的音频

audio - 如果要创建音乐应用和音乐开发,应该考虑学习哪种编程语言。

javascript - JavaScript WebAudio产生多种频率的声音

python - 在python中编写二进制文件以供C读取

c - 使用 XOR 交换单个位

mysql - 安排将 SQL 数据库导出到 NoSQL 以进行图形数据挖掘是否有意义?

iphone - iPhone 上音效的最佳格式是什么

objective-c - 提取 Objective-c 二进制文件

python - 如何将图像的 Blob 转移到白色背景?

string - 在 Bash 中访问字符串的最后 x 个字符