将声波字节转换为整数

Python 语音语言处理

Daniel Bourke

Machine Learning Engineer/YouTube Creator

将字节转换为整数

  • 无法直接使用字节
  • 使用 numpy 将字节转为整数
import numpy as np

# 将 soundwave_gm 从字节转换为整数 signal_gm = np.frombuffer(soundwave_gm, dtype='int16')
# 显示前 10 个元素 signal_gm[:10]
array([ -3,  -5,  -8,  -8,  -9, -13,  -8, -10,  -9, -11], dtype=int16)
Python 语音语言处理

查找帧率

  • 频率(Hz)= 波形数组长度 / 音频时长(秒)
# 获取帧率
framerate_gm = good_morning.getframerate()

# 显示帧率 framerate_gm
48,000
  • 音频时长(秒)= 波形数组长度 / 频率(Hz)
Python 语音语言处理

获取声波时间戳

# 返回 start 到 stop 之间等间距的值
np.linspace(start=1, stop=10, num=10)
array([ 1.,  2.,  3.,  4.,  5.,  6.,  7.,  8.,  9., 10.])
# 获取"早安"声波的时间戳
time_gm = np.linspace(start=0, 
                      stop=len(soundwave_gm)/framerate_gm,
                      num=len(soundwave_gm))
Python 语音语言处理

获取声波时间戳

# 查看"早安"声波的前 10 个时间戳
time_gm[:10]
array([0.00000000e+00, 2.08334167e-05, 4.16668333e-05, 6.25002500e-05,
       8.33336667e-05, 1.04167083e-04, 1.25000500e-04, 1.45833917e-04,
       1.66667333e-04, 1.87500750e-04])
Python 语音语言处理

Passons à la pratique !

Python 语音语言处理

Preparing Video For Download...