ここから本文です

今librosaを用いて、wavデータ500個ををmfcc化したものをnumpyを使って配列を保存...

wat********さん

2019/8/1215:22:55

今librosaを用いて、wavデータ500個ををmfcc化したものをnumpyを使って配列を保存したいのですが、以下のプログラムで試したところ、うまく行きません。ご教授していただけると助かります。

import librosa
import numpy as np
from pathlib import Path
import glob
x, fs = librosa.load(glob.glob('/Users/username/Desktop/dataset/onsei/*.wav'), sr=44100)
mfccs = librosa.feature.mfcc(x, sr=fs)
np.save("mfccnum",mfccs)

閲覧数:
26
回答数:
1
お礼:
250枚

違反報告

ベストアンサーに選ばれた回答

poc********さん

2019/8/1216:04:08

librosa.loadにglob.glob('/Users/username/Desktop/dataset/onsei/*.wav')というファイル名リストを渡してしまっているからうまくいかないのではないでしょうか。おそらく渡すべきはファイル名。
以下のようなコードではどうでしょうか。

import librosa
import numpy as np
import glob
files = glob.glob('/Users/username/Desktop/dataset/onsei/*.wav')
for index, file in enumerate(files):
____x, fs = librosa.load(file, sr=44100)
____mfccs = librosa.feature.mfcc(x, sr=fs)
____np.save("mfccnum_{:0=3}".format(index),mfccs)

のように、wavファイル1つずつ処理するのではダメなのでしょうか。
(wavファイル数分.npyファイルができることにはなりますが。)

※ _ は半角スペースに置き換えてください。

  • 質問者

    wat********さん

    2019/8/1322:18:03

    アドバイスありがとうございます。
    ファイルの個数分で大丈夫です。
    また、pickleファイルとして保存する方法も教えていただけたら助かります。

  • その他の返信(1件)を表示

返信を取り消しますが
よろしいですか?

  • 取り消す
  • キャンセル

質問した人からのコメント

2019/8/14 14:49:31

ありがとうございます!!

「wav」の検索結果

検索結果をもっと見る

この質問につけられたタグ

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

別のキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる