필터 지우기
필터 지우기

Info

이 질문은 마감되었습니다. 편집하거나 답변을 올리려면 질문을 다시 여십시오.

Error when converting on matlab coder to cpp

조회 수: 1 (최근 30일)
멋진남자
멋진남자 2024년 1월 5일
마감: 멋진남자 2024년 2월 5일
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% 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
멋진남자
멋진남자 2024년 2월 5일
Thank you for @madhan ravi, @Walter Roberson I soved this problem like that your comments.

답변 (0개)

이 질문은 마감되었습니다.

제품


릴리스

R2023a

Community Treasure Hunt

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

Start Hunting!

Translated by