如何在Python中录制声音,并在用户定义的延迟后播放?

2024-10-02 12:34:15 发布

您现在位置:Python中文网/ 问答频道 /正文

我在寻找一个Python的代码,它可以录制一个声音,并在一定的延迟(例如10秒)后播放。换句话说,我想不断地(用耳机)听到外面发生了什么,但有一定的延迟。在

我在GitHub(https://gist.github.com/larsyencken/5641402)上找到了一个Python脚本,它应该能完成我所要查找的功能。但是,当我运行脚本时,播放将在5秒后开始(默认延迟),但它会记录周围的一切并实时播放(没有任何延迟)。在


Tags: 代码https功能github脚本com声音记录
1条回答
网友
1楼 · 发布于 2024-10-02 12:34:15

下面是一个使用sounddevice的示例,尽管您也可以使用其他audio/sound模块来实现。在

下面的示例根据变量#seconds#seconds录制麦克风中的音频,您可以根据需要对其进行修改。 使用标准音频输出(扬声器)播放相同的内容。 关于这个here的更多信息

工作代码

import sounddevice as sd
import numpy as np
import scipy.io.wavfile as wav

fs=44100
duration = 10  # seconds
myrecording = sd.rec(duration * fs, samplerate=fs, channels=2, dtype='float64')
print "Recording Audio for %s seconds" %(duration)
sd.wait()
print "Audio recording complete , Playing recorded Audio"
sd.play(myrecording, fs)
sd.wait()
print "Play Audio Complete"

输出

^{pr2}$

相关问题 更多 >

    热门问题