#前提・実現したいこと
機械学習でμ’sの声を識別する
上記のサイト様を参考に電話の音とチャイムの音を識別するコードを作成したいと考えております。
#発生している問題・エラーメッセージ
RuntimeError: Error opening 'bell/bell01.wav': System error.
上記のようなエラーメッセージが発生しております。
#コード
import scipy.io.wavfile as wav import librosa from sklearn.svm import SVC import numpy def getMfcc(filename): y, sr = librosa.load(filename) return librosa.feature.mfcc(y=y, sr=sr) artists = ["bell", "call"] songs = [ [ "bell01", "bell02", "bell03", "bell04", "bell05", "bell07", "bell08", "bell09", "bell10", "bell11", "bell12", "bell13", ], ["call01", "call02", "call03", "call04", "call05"], ] song_training = [] artist_training = [] for artist, artist_songs in zip(artists, songs): for song in artist_songs: path = "%s/%s.wav" % (artist, song) print(path) mfcc = getMfcc(path) song_training.append(mfcc.T) label = numpy.full((mfcc.shape[1], ), artists.index(artist), dtype=numpy.int) artist_training.append(label)
下記にエラーメッセージ全文を記載いたします。
#エラーメッセージ(全文)
kuromaguroというのは自分のユーザー名です。
エラーメッセージ①
/Users/kuromaguro/.pyenv/versions/3.6.5/lib/python3.6/site-packages/librosa/core/audio.py:161: UserWarning: PySoundFile failed. Trying audioread instead. warnings.warn('PySoundFile failed. Trying audioread instead.') --------------------------------------------------------------------------- RuntimeError Traceback (most recent call last) ~/.pyenv/versions/3.6.5/lib/python3.6/site-packages/librosa/core/audio.py in load(path, sr, mono, offset, duration, dtype, res_type) 128 try: --> 129 with sf.SoundFile(path) as sf_desc: 130 sr_native = sf_desc.samplerate ~/.pyenv/versions/3.6.5/lib/python3.6/site-packages/soundfile.py in __init__(self, file, mode, samplerate, channels, subtype, endian, format, closefd) 628 format, subtype, endian) --> 629 self._file = self._open(file, mode_int, closefd) 630 if set(mode).issuperset('r+') and self.seekable(): ~/.pyenv/versions/3.6.5/lib/python3.6/site-packages/soundfile.py in _open(self, file, mode_int, closefd) 1183 _error_check(_snd.sf_error(file_ptr), -> 1184 "Error opening {0!r}: ".format(self.name)) 1185 if mode_int == _snd.SFM_WRITE: ~/.pyenv/versions/3.6.5/lib/python3.6/site-packages/soundfile.py in _error_check(err, prefix) 1356 err_str = _snd.sf_error_number(err) -> 1357 raise RuntimeError(prefix + _ffi.string(err_str).decode('utf-8', 'replace')) 1358 RuntimeError: Error opening 'bell/bell01.wav': System error. During handling of the above exception, another exception occurred:
エラーメッセージ②
FileNotFoundError Traceback (most recent call last) <ipython-input-103-ddbaad947d9e> in <module> 35 print(path) 36 ---> 37 mfcc = getMfcc(path) 38 song_training.append(mfcc.T) 39 label = numpy.full((mfcc.shape[1], ), <ipython-input-103-ddbaad947d9e> in getMfcc(filename) 5 6 def getMfcc(filename): ----> 7 y, sr = librosa.load(filename) 8 return librosa.feature.mfcc(y=y, sr=sr) 9 ~/.pyenv/versions/3.6.5/lib/python3.6/site-packages/librosa/core/audio.py in load(path, sr, mono, offset, duration, dtype, res_type) 160 if isinstance(path, six.string_types): 161 warnings.warn('PySoundFile failed. Trying audioread instead.') --> 162 y, sr_native = __audioread_load(path, offset, duration, dtype) 163 else: 164 six.reraise(*sys.exc_info()) ~/.pyenv/versions/3.6.5/lib/python3.6/site-packages/librosa/core/audio.py in __audioread_load(path, offset, duration, dtype) 184 185 y = [] --> 186 with audioread.audio_open(path) as input_file: 187 sr_native = input_file.samplerate 188 n_channels = input_file.channels ~/.pyenv/versions/3.6.5/lib/python3.6/site-packages/audioread/__init__.py in audio_open(path, backends) 109 for BackendClass in backends: 110 try: --> 111 return BackendClass(path) 112 except DecodeError: 113 pass ~/.pyenv/versions/3.6.5/lib/python3.6/site-packages/audioread/rawread.py in __init__(self, filename) 60 """ 61 def __init__(self, filename): ---> 62 self._fh = open(filename, 'rb') 63 64 try: FileNotFoundError: [Errno 2] No such file or directory: 'bell/bell01.wav'
#試していること
エラーメッセージ②について別の質問で回答していただいているのでおそらくは、上記の「RuntimeError」が発生しているからファイルが正常に読み込めてないのではないかと考えております。
自分なりにエラーメッセージ①について調べておりましたところ、
Run TIMIT data preparation. #22
上記のサイト様に似たような質問があり、なんとか解読を進めている途中です。
#補足
使っているPCはmacOS Suerra バージョン10.12.6
Pythonのバージョンは3.6.5です。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/05/31 17:05
2020/06/01 06:10