How to truncate number of sample in audiofiles using audioDatastore function in MATLAB?

4 ビュー (過去 30 日間)
Hi all
I am using audiodatadatastore function to classify my speech signal using wavelet scattering . Unfortunately all my audio files are having different length or sample size. I want to make it uniform for all files.
I did try following
% while hasdata(ads)
% [data,info] = read(ads);
%
% if length(data)<45000
% data=[data;zeros(45000-length(data),1)];
% else
% data=data(1:45000);
% end
% end
But that’s of no use. Help is highly appreciated.
  6 件のコメント
kc
kc 2020 年 4 月 25 日
Yes sir I am using that example only there each speech sample is of 30 sec duration.

サインインしてコメントする。

採用された回答

Walter Roberson
Walter Roberson 2020 年 4 月 23 日
data(45001, :) = 0;
data = data(1:45000, 1);
No if needed, and handles multiple channels converting to single channel.
  12 件のコメント
Walter Roberson
Walter Roberson 2020 年 4 月 25 日
It will take me more searching and testing. It turns out that audioDataStore ignores custom readFcn so it might be necessary to recode it for to use a datastore of type 'File'.
kc
kc 2020 年 4 月 25 日
Sir is it possible for you to customise it now. That is the only issue I am facing right now... unequal sample lengths

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeFeature Extraction についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by