以下代码使用 Python 编写,并使用了 tkinter 库创建了一个简单的窗口,其中包含了三个按钮和一个停止按钮。点击不同按钮会调用相应的函数来播放不同种类的白噪音,并通过 sounddevice 库实现声音的播放。点击停止按钮会停止正在播放的声音。

import tkinter as tk
import numpy as np
import sounddevice as sd

def play_white_noise():
    duration = 5  # 持续时间(秒)
    sample_rate = 44100  # 采样率
    volume = 0.1  # 音量

    # 生成白噪音信号
    samples = np.random.normal(scale=volume, size=int(duration * sample_rate))

    # 播放白噪音
    sd.play(samples, sample_rate)

def play_pink_noise():
    duration = 5  # 持续时间(秒)
    sample_rate = 44100  # 采样率
    volume = 0.1  # 音量

    # 生成粉噪音信号
    samples = np.random.normal(scale=volume, size=int(duration * sample_rate))
    samples = np.cumsum(samples)
    samples /= np.max(np.abs(samples))

    # 播放粉噪音
    sd.play(samples, sample_rate)

def play_brown_noise():
    duration = 5  # 持续时间(秒)
    sample_rate = 44100  # 采样率
    volume = 0.1  # 音量

    # 生成棕噪音信号
    samples = np.random.normal(scale=volume, size=int(duration * sample_rate))
    samples = np.cumsum(samples)
    samples /= np.max(np.abs(samples))

    # 播放棕噪音
    sd.play(samples, sample_rate)

def stop_noise():
    sd.stop()

# 创建窗口
window = tk.Tk()

# 创建按钮
white_noise_button = tk.Button(window, text='白噪音', command=play_white_noise)
white_noise_button.pack()

pink_noise_button = tk.Button(window, text='粉噪音', command=play_pink_noise)
pink_noise_button.pack()

brown_noise_button = tk.Button(window, text='棕噪音', command=play_brown_noise)
brown_noise_button.pack()

stop_button = tk.Button(window, text='停止', command=stop_noise)
stop_button.pack()

# 运行窗口主循环
window.mainloop()

上述代码使用了 tkinter 库创建了一个简单的窗口,其中包含了三个按钮和一个停止按钮。点击不同按钮会调用相应的函数来播放不同种类的白噪音,并通过 sounddevice 库实现声音的播放。点击停止按钮会停止正在播放的声音。

Python 白噪音生成器:使用 Tkinter 创建按钮控制不同类型噪音

原文地址: https://www.cveoy.top/t/topic/pfub 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录