Matlab批量读取指定文件夹下的所有ogg后缀的音频文件并将读取的多个音频文件分别保存在txt中
时间: 2024-05-03 15:18:16 浏览: 117
可以使用Matlab中的`dir`和`audioread`函数来实现批量读取指定文件夹下的所有ogg后缀的音频文件,然后将读取的多个音频文件分别保存在txt中。以下是一个可能的实现:
```matlab
% 设置要读取的文件夹路径和要保存的txt文件路径
folder_path = 'path/to/folder';
txt_file_path = 'path/to/save/txt/file.txt';
% 查找指定文件夹下所有ogg后缀的音频文件
files = dir(fullfile(folder_path, '*.ogg'));
num_files = length(files);
% 遍历所有找到的音频文件,读取并保存到txt文件中
for i = 1:num_files
% 获取当前文件的完整路径
file_path = fullfile(files(i).folder, files(i).name);
% 使用audioread函数读取音频文件
[audio, sample_rate] = audioread(file_path);
% 将读取的音频数据保存到txt文件中
txt_file = fopen(txt_file_path, 'a');
fprintf(txt_file, 'File: %s\n', file_path);
fprintf(txt_file, 'Sample rate: %d\n', sample_rate);
fprintf(txt_file, 'Audio data: %s\n', mat2str(audio));
fclose(txt_file);
end
```
以上代码会在指定文件夹下查找所有ogg后缀的音频文件,并将每个音频文件的路径、采样率和音频数据保存到指定的txt文件中。如果txt文件不存在,则会创建一个新的文件;如果txt文件已经存在,则会在文件末尾追加数据。
阅读全文