Can't use gpuArray with melSpectrogram

1 次查看(过去 30 天)
Hi!
I'm using Matlab R2019a and i'm trying to make some mel spectrograms for a dataset. As I have to use many songs and my PC isn't the best, I thought about using my gpu in order to enhance the performance (I have a GeForce 940MX).
It goes something like this:
[audioIn,fs] = audioread(song_path);
audioIn = gpuArray(audioIn); % gpu
figure('visible', 'off')
melSpectrogram(audioIn,fs)
colorbar('off')
colormap(gray)
set(gca,'visible','off')
export_fig(final_melspect_path, '-png', '-transparent', '-r75');
But I ran into the following:
Error using cast
Unsupported data type for conversion:
'gpuArray'.
Error in melSpectrogram (line 75)
range=hz2mel(cast(params.FrequencyRange,class(x)));
Error in dataset_generator (line 28)
melSpectrogram(audioIn,fs)
I went to cast() and melSpectrogram() MATLAB pages and both says that they SUPPORT GPU ARRAYS.
It may have something to do with my version? Maybe something about the code?
Thank you in advance!

采纳的回答

Edric Ellis
Edric Ellis 2021-5-7
gpuArray support for melSpectrogram was added in R2020a. See the release notes.

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Feature Extraction 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by