作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
如何在Matlab中将音频文件拆分为1秒长的音频文件块(帧)?
真的有什么可以帮助的,请原谅我的无知,因为我对Matlab不太了解...
我努力了
clear all; close all;
[y, fs] = audioread('red.wav');
chunk_size = fs*1;
最佳答案
您可以使用audioread读取块中的文件,而不是一次读取整个文件。下面的代码可能会有所帮助。
info = audioinfo('handel.wav');
Fs = info.SampleRate;
chunkDuration = 1; % 1 sec
numSamplesPerChunk = chunkDuration*Fs;
chunkCnt = 1;
for startLoc = 1:numSamplesPerChunk:info.TotalSamples
endLoc = min(startLoc + numSamplesPerChunk - 1, info.TotalSamples);
y = audioread('handel.wav', [startLoc endLoc]);
outFileName = sprintf('outfile%03d.wav', chunkCnt);
audiowrite(outFileName, y, Fs);
chunkCnt = chunkCnt + 1;
end
关于matlab - 如何在Matlab中将音频文件拆分为1秒长的音频文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32049761/
我是一名优秀的程序员,十分优秀!