Предположим, что n
- это количество сэмплов в вашем аудиофайле:
n=numel(s_a);
При обработке вашего фрейма данных (с каждым окном) вы должны выполнить следующие действия:
for frame=1:frame_step:(n-(frame_len-1))
Tmp=s_a(frame:frame+frame_len-1).*win;
%do something with tmp
end
Таким образом, вы можете видеть, что количество окон, которые вписываются в ваши данные, может быть рассчитано следующим образом:
num_win=numel(1:frame_step:(n-(frame_len-1)));
Предполагая, что наихудший случай, когда n
не кратен frame_len
Вы можете рассчитать как:
num_win=floor((n-(frame_len))/frame_step)+1;