Вырезание (разделение) сегментов из аудиофайлов (массивов) и удаление их - PullRequest
0 голосов
/ 01 апреля 2020

Я хочу нарезать указанные c сегменты из длинных аудиофайлов (10 минут +) и сохранять их отдельно. Пока все работает нормально, но я хочу удалить эти сегменты из массива и сократить массив.

import numpy as np
import itertools

b = np.array([1,2,3,4,5,6,7,8,9])

start = 2
stop = 4
index = list(range(start, stop+1))
print(index)

b = np.array(list(itertools.compress(b, [i not in index for i in range(len(b))])))
print(b)

Это был мой подход, но он не работает в реальном сценарии с гораздо большими числами. Я использую librosa для загрузки и сохранения аудиофайлов, но я не нашел полезной команды для своей проблемы.

Есть ли более элегантный способ сделать это?

1 Ответ

2 голосов
/ 01 апреля 2020

Вы можете использовать np-разбиение и конкатенацию массивов следующим образом:

np.concatenate ([b [0: start], b [stop: len (b)]])

Hope это помогает

...