게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
매트랩 질문도 받아주시나요.
게시물ID : programmer_14674짧은주소 복사하기
작성자 : qweryt
추천 : 0
조회수 : 5561회
댓글수 : 1개
등록시간 : 2015/11/29 22:19:14
옵션
  • 본인삭제금지
오디오 파일을 받아와서 FFT한 결과가 나와야 하는데
 
'인덱스가 행렬의 차원을 초과합니다' 라고 나옵니다..
 
하루종일 이거때문에 찾아다녔는데 해결을 못하고 있습니다
 
도와 주시면 감사하겠습니다.
 
지금쓴 코드입니다.......
 
% Wave파일 읽어 들이기
[yy,Fs] = audioread('sound.m4a'); % 음원 파일 입력
L = length(yy);                     % Length of signal
y = zeros(L,1);
for k = 1:L;
y(k,1) = yy(k,1) + yy(k,2);
end
T = 1/Fs;                     % Sample time
t = (0:L-1)*T;                % Time vector
%plot(Fs*t(1:50),y(1:50))
%title('Signal Corrupted with Zero-Mean Random Noise')
%xlabel('time (milliseconds)')
NFFT = 2^nextpow2(L); % Next power of 2 from length of y
Y = fft(y,NFFT)/L;
f = Fs/2*linspace(0,1,NFFT/2+1);
% Plot single-sided amplitude spectrum.
 plot(f,2*abs(Y(1:NFFT/2+1)))
%axis([0 4000 0 0.01]);%축 고정
title('Single-Sided Amplitude Spectrum of y(t)')
xlabel('Frequency (Hz)')
ylabel('amplitude')
전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호