Как я могу создать звуковую волну из аудио?
Вот как вы можете сделать это, используя различные языки и библиотеки программирования:
1. Использование Python с Librosa и Matplotlib:
Это популярный и относительно простой метод.
`` Python
импортировать Librosa
Импорт librosa.display
Импорт matplotlib.pyplot как plt
Загрузите аудиофайл
file_path ='your_audio_file.wav' # заменить с помощью пути файла
y, sr =librosa.load (file_path)
отображать форму волны
Plt.Figure (FigSize =(14, 5))
librosa.display.waveshow (y, sr =sr)
plt.title ('waveform')
plt.xlabel ('time (s)')
plt.ylabel ('амплитуда')
plt.show ()
необязательно, чтобы сохранить рисунок:
plt.savefig ('waveform.png')
`` `
Этот код делает следующее:
* Импорт необходимых библиотек: `librosa` для обработки аудио и` matplotlib` для построения.
* загружает аудио: `librosa.load ()` считывает аудиофайл и возвращает аудиоданные (`y`) и скорость дискретизации (` sr`).
* отображает форму волны: `librosa.display.waveshow ()` Создает сюжет. Он автоматически обрабатывает масштабирование времени на основе скорости дискретизации.
2. Использование Python с Scipy и Matplotlib:
Этот подход использует библиотеки более низкого уровня, предоставляя вам больше контроля, но требует немного большего кода:
`` Python
Импорт scipy.io.wavfile
Импорт matplotlib.pyplot как plt
импортировать Numpy как NP
Загрузите аудиофайл
rate, data =scipy.io.wavfile.read ('your_audio_file.wav')
Построить форму волны
Plt.Figure (FigSize =(14, 5))
plt.plot (данные)
plt.title ('waveform')
plt.xlabel ('образец')
plt.ylabel ('амплитуда')
plt.show ()
для стерео аудио, постройте каждый канал отдельно
Если Data.ndim ==2:
Plt.Figure (FigSize =(14, 5))
plt.plot (data [:, 0], label ='левый канал')
plt.plot (data [:, 1], label ='правый канал')
plt.legend ()
plt.title ('wareform (steroo)')
plt.xlabel ('образец')
plt.ylabel ('амплитуда')
plt.show ()
`` `
Этот код:
* Использует `scipy.io.wavfile` для чтения файла wav. Обратите внимание, что это загрузит необработанные аудиоданные; Вам может потребоваться обработать различные типы данных (например, преобразование в точку с плавающей запятой).
* Рассказывает данные непосредственно с использованием `matplotlib.pyplot.plot ()`. Ось X представляет номер выборки, а не время (в отличие от примера Librosa).
перед запуском любого кода:
* Установите необходимые библиотеки: Вам нужно будет установить `librosa`,` matplotlib`, `scipy` и` numpy '. Вы можете сделать это с помощью PIP:`PIP установить Librosa matplotlib scipy numpy`
* заменить `'your_audio_file.wav'' на фактический путь к вашему аудиофайлу. Убедитесь, что файл является файлом WAV; Другие форматы могут потребовать дополнительных библиотек или этапов конверсии.
Помните, что эти методы визуализируют звуковую волну. Фактическая звуковая волна является физическим явлением изменений давления воздуха; Визуализация представляет собой графическое представление цифровых данных, представляющих эти вариации.
- Как создать Music Hall MMF2 Поворотная платформа
- Как использовать кварцевые Direct Drive Turntable автоматическую систему
- Как установить приводной ремень на JT-133
- Что разница между 33 и усилителя; 78 мин записи
- Что заставит компьютерных динамиков не работать после того, как вы их отключили, а затем подключились к?
- Как избавиться от контура заземления проигрывателя?
- Как изменить пояс на Зенит Turntable
- Как я могу исправить иглу на Мой проигрыватель, который сломал
- Как подключить электрический Разъемное соединение для двойной 1209 Turntable