Clear Filters
Clear Filters

Info

This question is closed. Reopen it to edit or answer.

Error when converting on matlab coder to cpp

1 view (last 30 days)
멋진남자
멋진남자 on 5 Jan 2024
Closed: 멋진남자 on 5 Feb 2024
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% spectrogram calculation
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
spec = zeros(winLenHalf+1,numOfFrames);
for i = 1 : numOfFrames
xi = xPadded(winPos(i):winPos(i) + winLen - 1) .* w;
if parameter.fftShift == 1
xi = fftshift(xi);
end
Xi = fft(xi);
spec(:,i) = Xi(1:winLenHalf+1); % This line is occured error when convert to C++.
end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
I convert to C++ use matlab coder so, occured below error message.
[problem code below]
spec(:,i) = Xi(1:winLenHalf+1);
[error message]
The left-hand side has been constrained to be non-complex, but the right-hand side is complex. To correct this problem, make the right-hand side real using the function REAL, or change the initial assignment to the left-hand side variable to be a complex value using the COMPLEX function.
[question]
How do I convert like a same matlab without loss original wav sound file?
I tried two method in error message but not same convert.
[download source code]
https://www.audiolabs-erlangen.de/resources/MIR/TSMtoolbox/
  5 Comments
멋진남자
멋진남자 on 5 Feb 2024
Thank you for @madhan ravi, @Walter Roberson I soved this problem like that your comments.

Answers (0)

This question is closed.

Products


Release

R2023a

Community Treasure Hunt

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

Start Hunting!