代码拉取完成,页面将自动刷新
import pygame
import time
import sys
import sounddevice as sd
from scipy.io.wavfile import write
import numpy as np
def record_audio(filename="output.wav", sample_rate=44100):
print("按下 Enter 开始录音...")
input() # 等待用户按下 Enter 键开始录音
print("录音中... 按下 Enter 键结束录音")
# 开始录音
recording = []
try:
def callback(indata, frames, time, status):
recording.append(indata.copy())
with sd.InputStream(samplerate=sample_rate, channels=1, callback=callback):
input() # 等待用户再次按下 Enter 键结束录音
except Exception as e:
print(f"录音出现错误: {e}")
return
# 将录音数据合并并保存为 WAV 文件
audio_data = np.concatenate(recording, axis=0)
write(filename, sample_rate, (audio_data * 32767).astype(np.int16))
print(f"录音已保存为 {filename}")
# --- 播放音频 -
def play_audio(file_path):
try:
pygame.mixer.init()
pygame.mixer.music.load(file_path)
pygame.mixer.music.play()
while pygame.mixer.music.get_busy():
time.sleep(1) # 等待音频播放结束
print("播放完成!")
except Exception as e:
print(f"播放失败: {e}")
finally:
pygame.mixer.quit()
# 使用函数录音,作为输入
record_audio("my_recording.wav")
play_audio('my_recording.wav')
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。