元高専生のロボット作り

元高専生のロボット作り

主にプログラミング, 電子系について書きます。たまに機械系もやります。メモ代わりの記事ばっか書きます

iphoneで撮影したビデオの音声をFFTするだけ

iphoneでビデオを撮影すると.MOV形式で動画が保存されます.

まずはそのビデオをそのままPCに転送します.
USB接続で送信してもいいし,私はGoogle drive経由で取り込みました





で,matlabFFTにかけます.
なにも難しいことはやっていなくて,fftコマンドを打つだけです.
matlabのaudioreadは.MOVファイルもそのまま読み込めるので特にビデオの編集はいりません.

以下,コードです.
sound(y, Fs); で音声を再生することができるので,正しく取り込めているかの確認ができます.

解析するビデオファイル(以下のコードではIMG_0574.MOV)を実行するコードと同じディレクトリに保存してから実行します.

Fs = 44100;
y = audioread('IMG_0574.MOV');
sound(y, Fs);
L = length(y);
figure(1);
plot((0:L-1)/Fs, y(:,1));

Y = fft(y);
P2 = abs(Y/L);
P1 = P2(1:int32(L/2));
P1(2:end-1) = 2*P1(2:end-1);
f = Fs*(0:(L/2))/L;
figure(2);
plot(f,P1);

実行結果はこんな感じ
figure1は取り込んだ音声の時系列データ,figure2はFFTの結果