Can't use gpuArray with melSpectrogram

조회 수: 1 (최근 30일)
Ivan Lisman
Ivan Lisman 2021년 5월 6일
답변: Edric Ellis 2021년 5월 7일
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