Мне нужно преобразовать аудиофайлы .wav в формат .hf или .npz, поскольку они являются поддерживаемым форматом для обучения систем перевода речи с помощью FBK-Fairseq-ST (https://github.com/mattiadg/FBK-Fairseq-ST). Следующий сценарий предназначен для запуска с терминала как python script.py /path/file.wav
и записи нового файла hdf, хранящего информацию о файле .wav в той же папке.
from scipy.io import wavfile
import tables
import numpy
import sys
#read data from wav
#fs, data = wavfile.read('/home/vittoria/Documents/corpus-test/01.wav')
fs, data = wavfile.read(sys.argv[1])
#ouput
folder=sys.argv[1][:-6]
name= sys.argv[1][-6:-3]+"h5"
#save_to acoular h5 format
acoularh5 = tables.open_file(folder+name, mode = "w", title = name)
acoularh5.create_earray('/','time_data', atom=None, title='', filters=None, \
expectedrows=100000, chunkshape=[256,64], \
byteorder=None, createparents=False, obj=data)
acoularh5.set_node_attr('/time_data','sample_freq', fs)
acoularh5.close()
Однако это вызывает ошибку значения: ValueError: ранги shape ((0,)) и chunkshape ((256, 64)) должны быть равны.
ввод с терминала: python 2hf.py 01_83.wav"
(python script.py относительный путь к файлу)
Ошибка трассировки, обратите внимание, что в "environment / hdf / lib / python3 .6 /" «hdf» - это папка root виртуальной среды. «/ tables /» - это папка для таблиц пакетов 3.6.1 (https://pypi.org/project/tables/), установленных с помощью команды pip в виртуальной среде.
Traceback (most recent call last):
File "2hf.py", line 18, in <module>
byteorder=None, createparents=False, obj=data)
File "/home/giuseppe/environments/hdf/lib/python3.6/site-packages/tables/file.py", line 1384, in create_earray
track_times=track_times)
File "/home/giuseppe/environments/hdf/lib/python3.6/site-packages/tables/earray.py", line 160, in __init__
track_times)
File "/home/giuseppe/environments/hdf/lib/python3.6/site-packages/tables/carray.py", line 212, in __init__
(shape, chunkshape))
ValueError: the shape ((0,)) and chunkshape ((256, 64)) ranks must be equal.
Closing remaining open files:01_83.h5...done