要使用Python编写一个收音机,你可以使用PyAudio库来实现音频的录制和播放。以下是一个简单的示例代码:

import pyaudio

def record_audio(filename, duration):
    chunk = 1024
    sample_format = pyaudio.paInt16
    channels = 2
    fs = 44100

    p = pyaudio.PyAudio()

    stream = p.open(format=sample_format,
                    channels=channels,
                    rate=fs,
                    frames_per_buffer=chunk,
                    input=True)

    frames = []

    for i in range(0, int(fs / chunk * duration)):
        data = stream.read(chunk)
        frames.append(data)

    stream.stop_stream()
    stream.close()

    p.terminate()

    wf = wave.open(filename, 'wb')
    wf.setnchannels(channels)
    wf.setsampwidth(p.get_sample_size(sample_format))
    wf.setframerate(fs)
    wf.writeframes(b''.join(frames))
    wf.close()

def play_audio(filename):
    chunk = 1024

    wf = wave.open(filename, 'rb')

    p = pyaudio.PyAudio()

    stream = p.open(format=p.get_format_from_width(wf.getsampwidth()),
                    channels=wf.getnchannels(),
                    rate=wf.getframerate(),
                    output=True)

    data = wf.readframes(chunk)

    while data:
        stream.write(data)
        data = wf.readframes(chunk)

    stream.stop_stream()
    stream.close()

    p.terminate()

# 录制音频
record_audio("recording.wav", 5)

# 播放音频
play_audio("recording.wav")

这个示例中,record_audio函数用于录制音频,它使用PyAudio打开一个音频流,读取音频数据并保存到文件中。play_audio函数用于播放音频,它使用PyAudio打开一个音频流,从文件中读取音频数据并播放出来。

你可以根据需要修改代码,例如改变录制的时长、文件名等。另外,你可能需要安装PyAudio库,可以使用以下命令进行安装:

pip install pyaudio
``
用python写一个收音机

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

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