1. Камеры
  2. Автоаудио и электроника
  3. Домашнее аудио
  4. Персональное аудио
  5. Телевизоры
  6. Умный дом
  >> Электронные технологии >  >> Персональное аудио >> Минидисковые плееры

Как я могу создать графику звуковой волны с помощью генератора?

Вы не можете создать графику звуковой волны * true * непосредственно, используя одну функцию генератора так, как вы можете думать (например, одна функция Python, генерирующая PNG). Звуковые волны по своей природе временные данные (с течением времени изменяются давление). График - это пространственное представление. Вам нужно *генерировать данные звуковой волны *, затем *обработать эти данные для создания визуального представления *.

Вот как вы можете сделать это с помощью Python, используя библиотеки для создания звука и создания изображений:

1. Создать данные звуковой волны:

Эта часть создает числовые данные, представляющие звуковую волну. Мы используем `numpy` для численных вычислений и` scipy` для создания различных сигналов.

`` Python

импортировать Numpy как NP

Импорт matplotlib.pyplot как plt

Импорт scipy.io.wavfile как wav

от Scipy.Signal Import Sawtooth, Square

Параметры

частота =440 # Гц (примечание A4)

Продолжительность =2 # секунды

Sample_Rate =44100 # Гц (стандартная аудиокаума)

амплитуда =0,8 # сохранить его ниже 1, чтобы избежать обрезки

Вектор времени

t =np.linspace (0, продолжительность, int (sample_rate * duration), endpoint =false)

Выберите форму волны (синус, квадрат, пилот и т. Д.)

#waveform =np.sin (2 * np.pi * Частота * t) * Амплитуда # синусная волна

#waveform =square (2 * np.pi * частота * t) * амплитуда # квадратная волна

WAYSFORM =SAWTOOTH (2 * NP.PI * Частота * T) * Амплитуда # Sawtooth Wave

#Optional:добавьте немного шума

шум =np.random.normal (0, 0,1, len (форма волны))

форма волны +=шум

Нормализуйте, чтобы избежать обрезки (важно для аудио -вывода)

waveform =waveform / np.max (np.abs (форма волны))

#Optional:Сохранить как файл wav

wav.write ("output.wav", sample_rate, waveform.astype (np.float32)))

`` `

2. Создайте графику:

Эта часть принимает сгенерированные данные звуковой волны и разбирается с использованием `matplotlib`.

`` Python

Построить форму волны

Plt.Figure (FigSize =(10, 4))

plt.plot (t, форма волны)

plt.xlabel ("Время (S)")

plt.ylabel ("амплитуда")

plt.title ("звуковая форма волны")

plt.grid (true)

plt.savefig ("sound_wave.png") #save как png

plt.show ()

`` `

Полный код:

`` Python

импортировать Numpy как NP

Импорт matplotlib.pyplot как plt

Импорт scipy.io.wavfile как wav

от Scipy.Signal Import Sawtooth, Square

Параметры

частота =440 # Гц (примечание A4)

Продолжительность =2 # секунды

Sample_Rate =44100 # Гц (стандартная аудиокаума)

амплитуда =0,8 # сохранить его ниже 1, чтобы избежать обрезки

Вектор времени

t =np.linspace (0, продолжительность, int (sample_rate * duration), endpoint =false)

Выберите форму волны

waveform =Sawtooth (2 * np.pi * Частота * t) * амплитуда

#Optional:добавьте немного шума

шум =np.random.normal (0, 0,1, len (форма волны))

форма волны +=шум

Нормализуйте, чтобы избежать обрезания

waveform =waveform / np.max (np.abs (форма волны))

#Optional:Сохранить как файл wav

wav.write ("output.wav", sample_rate, waveform.astype (np.float32)))

Построить форму волны

Plt.Figure (FigSize =(10, 4))

plt.plot (t, форма волны)

plt.xlabel ("Время (S)")

plt.ylabel ("амплитуда")

plt.title ("звуковая форма волны")

plt.grid (true)

plt.savefig ("sound_wave.png")

plt.show ()

`` `

Этот код будет:

1. Сгенерируйте волну пилообразной (вы можете легко изменить ее на синусоидальные, квадратные или другие формы волны, используя функции `scipy.signal ').

2. При желании добавьте шум, чтобы сделать его более реалистичным.

3. Нормализуйте форму волны, чтобы предотвратить обрезку.

4. При желании сохранить его в виде файла WAV.

5. Создать и сохранить изображение PNG амплитуды звуковой волны с течением времени.

Не забудьте установить необходимые библиотеки:`numpy`,` matplotlib` и `scipy '. Вы можете установить их с помощью PIP:`PIP установить Numpy Matplotlib Scipy`

  1. Сколько стоит цифровой музыкальный мини-плеер mp3 емкостью 4 ГБ?
  2. Песня Лэндона Пигга - реклама бриллиантов?
  3. Какое преимущество имеет портативный игрок Minidisc?
  4. Как установить HD Fidelity Micro Cube серии hd-5911?
  5. Какая марка MP4-плеера лучше?