matlab如何录制声音
时间: 2024-03-07 12:44:54 浏览: 21
在MATLAB中,你可以使用`audiorecorder`函数来制声音。下面是一个简单的示例代码:
```matlab
% 设置录音参数
Fs = 44100; % 采样率
nBits = 16; % 采样位数
nChannels = 1; % 声道数
% 创建录音对象
recorder = audiorecorder(Fs, nBits, nChannels);
% 开始录音
disp('开始录音...');
recordblocking(recorder, 5); % 录制5秒钟的声音
% 停止录音
disp('停止录音...');
stop(recorder);
% 获取录制的声音数据
audioData = getaudiodata(recorder);
% 播放录制的声音
disp('播放录制的声音...');
play(recorder);
% 绘制录制的声音波形图
disp('绘制声音波形图...');
plot(audioData);
xlabel('时间');
ylabel('幅度');
% 保存录制的声音为WAV文件
disp('保存录制的声音为WAV文件...');
audiowrite('recorded_sound.wav', audioData, Fs);
```
上述代码首先设置了录音的参数,包括采样率、采样位数和声道数。然后创建了一个`audiorecorder`对象,并指定了录音参数。接着使用`recordblocking`函数开始录音,并指定了录制的时长(这里是5秒)。然后使用`stop`函数停止录音。接下来使用`getaudiodata`函数获取录制的声音数据,并使用`play`函数播放录制的声音。然后使用`plot`函数绘制录制的声音波形图。最后使用`audiowrite`函数将录制的声音保存为WAV文件。