AI人工智能 生成單調(diào)音頻信號

2020-09-24 13:47 更新

到目前為止你所看到的兩個步驟對于了解信號很重要。 現(xiàn)在,如果要使用某些預(yù)定義參數(shù)生成音頻信號,此步驟將很有用。 請注意,此步驟會將音頻信號保存在輸出文件中。

示例

在下面的例子中,我們將使用 Python 生成一個單調(diào)信號,它將被存儲在一個文件中。需要采取以下步驟 -

導(dǎo)入必要的軟件包 -

import numpy as np
import matplotlib.pyplot as plt
from scipy.io.wavfile import write

指定輸出保存的文件 -

output_file = 'audio_signal_generated.wav'

現(xiàn)在,指定選擇的參數(shù),如圖所示 -

duration = 4 # in seconds
frequency_sampling = 44100 # in Hz
frequency_tone = 784
min_val = -4 * np.pi
max_val = 4 * np.pi

在這一步中,我們可以生成音頻信號,如下代碼所示 -

t = np.linspace(min_val, max_val, duration * frequency_sampling)
audio_signal = np.sin(2 * np.pi * tone_freq * t)

現(xiàn)在,將音頻文件保存在輸出文件中 -

write(output_file, frequency_sampling, signal_scaled)

如圖所示,提取圖形的前100個值 -

audio_signal = audio_signal[:100]
time_axis = 1000 * np.arange(0, len(signal), 1) / float(sampling_freq)

現(xiàn)在,將生成的音頻信號可視化如下 -

plt.plot(time_axis, signal, color='blue')
plt.xlabel('Time in milliseconds')
plt.ylabel('Amplitude')
plt.title('Generated audio signal')
plt.show()

可以觀察這里給出的圖形 -

img

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號