Я загружаю аудиофайл с помощью librosa и хотел бы потенциально преобразовать его в стерео из моно, если файл моно.
Я уверен, что это не нужно говорить, но временной ряд аудио - это np.ndarray [shape=(n,) or (2, n)]
. По сути, я действительно спрашиваю, есть ли у меня np.ndarray
из shape=(n,)
, как мне преобразовать его в shape=(2,n)
? Это возможно? Я не знаком с этой терминологией.
В качестве альтернативы, есть ли способ просто загрузить файл, используя librosa и только librosa, как стереофайл (при необходимости он выполняет преобразование для меня)? Тот факт, что существует функция librosa.to_mono()
, а не функция librosa.to_stereo
, меня пугает.
Для контекста я пытаюсь стандартизировать аудиофайлы на основе некоторых параметров (количество каналов, размер выборки и частота и т. д.). Все они будут преобразованы в файлы .wav
. Предположительно, файл, совместимый с .wav
PMC, можно преобразовать в стерео с помощью библиотеки wave
, но я бы предпочел по существу не создавать два файла wav
(я полагаю, функция потребует реконструкции файла wav
).
Какие-нибудь советы?
Редактировать:
Итак, я узнал о функции np.reshape()
. Теперь вопрос в том, как мне изменить форму массива?
Если у меня есть временной ряд аудио, равный shape=(746572,)
, какой должна быть стереоформа? Будет ли это двумерный массив, который, по сути, дважды является первым массивом? Так
[[1, 2, 3, ..., 746572],
[1, 2, 3, ..., 746572]]
Или это не так просто?