How can I reshape and resize an array?
1 visualizzazione (ultimi 30 giorni)
Mostra commenti meno recenti
Hanuman Crawford
il 24 Lug 2017
Commentato: Hanuman Crawford
il 24 Lug 2017
I am trying to divide a signal (audio file) into frames with a length of 128.
I'm using the reshape() function but the problem is that the number of samples cannot be divided by 128 so I am getting an error "To RESHAPE the number of elements must not change.".
The solution I thought of is to increase the number of elements in the array to the next multiple of 128 before using the reshape() function. So far I have written code for calculating the number of elements I should extend the array by (copy/pasted below). I am looking for a way to extend the array by the calculated number of elements.
It feels like this should be a pretty simple task but I am fairly new to Matlab so I don't yet know the syntax.
[x,fs] = audioread('audio.wav');
windowLength = 128;
frames = length(x)/windowLength;
frames = ceil(frames);
extend = windowLength*frames - length(x);
0 Commenti
Risposta accettata
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Multidimensional Arrays in Help Center e File Exchange
Prodotti
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!