in svoice/data/data.py [0:0]
def __init__(self, json_dir, sample_rate=16000, segment=4.0, stride=1.0, pad=True):
mix_json = os.path.join(json_dir, 'mix.json')
s_jsons = list()
s_infos = list()
sets_re = re.compile(r's[0-9].json')
for s in os.listdir(json_dir):
if sets_re.search(s):
s_jsons.append(os.path.join(json_dir, s))
with open(mix_json, 'r') as f:
mix_infos = json.load(f)
for s_json in s_jsons:
with open(s_json, 'r') as f:
s_infos.append(json.load(f))
length = int(sample_rate * segment)
stride = int(sample_rate * stride)
kw = {'length': length, 'stride': stride, 'pad': pad}
self.mix_set = Audioset(sort(mix_infos), **kw)
self.sets = list()
for s_info in s_infos:
self.sets.append(Audioset(sort(s_info), **kw))
# verify all sets has the same size
for s in self.sets:
assert len(s) == len(self.mix_set)