def _to_notesequences(self, samples):
output_sequences = []
dim_ranges = np.cumsum(self._split_output_depths)
for s in samples:
mel_ns = self._melody_converter.to_notesequences(
[s[:, :dim_ranges[0]]])[0]
bass_ns = self._melody_converter.to_notesequences(
[s[:, dim_ranges[0]:dim_ranges[1]]])[0]
drums_ns = self._drums_converter.to_notesequences(
[s[:, dim_ranges[1]:]])[0]
for n in bass_ns.notes:
n.instrument = 1
n.program = ELECTRIC_BASS_PROGRAM
for n in drums_ns.notes:
n.instrument = 9
ns = mel_ns
ns.notes.extend(bass_ns.notes)
ns.notes.extend(drums_ns.notes)
ns.total_time = max(
mel_ns.total_time, bass_ns.total_time, drums_ns.total_time)
output_sequences.append(ns)
return output_sequences
评论列表
文章目录