gpt4 book ai didi

matlab - 如何在Matlab中将音频文件拆分为1秒长的音频文件?

转载 作者:行者123 更新时间:2023-12-02 22:45:47 25 4
gpt4 key购买 nike

如何在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

希望这可以帮助。

Dinesh

关于matlab - 如何在Matlab中将音频文件拆分为1秒长的音频文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32049761/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com