wavファイルを1部分切り取る方法

3分ほどの音声データ(wavファイル)から40秒から50秒の間の新たなwavファイルを作成したいと考えています。また名前は4050.wavのようにしたいと考えています。ご教授ください。よろしくお願いします。

 채택된 답변

Atsushi Ueno
Atsushi Ueno 2024년 9월 6일

0 개 추천

audioread 関数と audiowrite 関数でwavファイルの読み書きが出来ます。
サンプル数 "Fs" (データ数/1秒間) が判れば、何秒時点が何番目のデータかが判ります。
%% 3分ほどの音声データ(wavファイル)のサンプル
load handel.mat
audiowrite("handel.wav", repmat(y,20,1), Fs);
%% 各種パラメータの用意
sbgn = 40; mbgn = sbgn * Fs + 1; % 開始秒数, 開始index
send = 50; mend = send * Fs + 1; % 終了秒数, 終了index
filename = "" + num2str(sbgn) + num2str(send) + ".wav"; % ファイル名
%% wavファイルを1部分切り取って保存する
[wavdat, Fs] = audioread("handel.wav"); % サンプルwavファイル読込
audiowrite(filename, wavdat(mbgn:mend,:), Fs); % 切り取ったデータのwavファイル保存

댓글 수: 1

智貴
智貴 2024년 9월 6일
できました。ありがとうございました!

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 Audio I/O and Waveform Generation에 대해 자세히 알아보기

질문:

2024년 9월 6일

댓글:

2024년 9월 6일

Community Treasure Hunt

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

Start Hunting!