Общие принципы работы проекта
Плата Arduino сконструирована на основе микроконтроллера ATmega328P и имеет встроенные аналогово-цифровые преобразователи (в англ. аббревиатуре ADC — Analog To Digital converter), которые в нашем проекте используются для преобразования поступающего аналогового аудио сигнала в цифровую форму. АЦП Arduino производит дискретизацию поступающего входного сигнала с частотой дискретизации 38,46 кГц. Это достигается при помощи установки коэффициента деления предделителя (prescaler) АЦП равным 32. Если частота дискретизации равна 38,46 кГц, то согласно теореме Котельникова это значит что максимальная частота входного аналогового сигнала, который может быть преобразован без потерь в цифровую форму, равна 19,32 кГц – этого вполне достаточно для большинства аудио сигналов.
Главная цель проекта – показать спектр музыкального аудио сигнала. Для этого левый и правый каналы аудио сигнала смешиваются вместе и подаются на аналоговый контакт A0 платы Arduino. При необходимости вы можете использовать сплиттер чтобы подавать аудио сигнал одновременно и на анализатор спектра, и в другое какое-нибудь устройство, например, усилитель.
АЦП в данном проекте конфигурируются на использование внешнего опорного напряжения (reference voltage). В этом проекте в качестве опорного напряжения для АЦП используется стабилизированное напряжение 3.3v с платы Arduino. Поскольку аналоговый сигнал колеблется как выше, так и ниже нуля, мы должны использовать положительное напряжение смещения на входе АЦП – это необходимо для того чтобы АЦП не обрезал отрицательные циклы сигнала. То же самое стабилизированное напряжение разделяется с помощью двух резисторов R1 и R2 и затем подается на вход АЦП для формирования положительного напряжения смещения. С таким напряжением смещения на выходе АЦП будет значение 512 при отсутствии аудио сигнала на входе. В дальнейшем в коде программы это значение 512 вычитается чтобы получить реальные изменения входного сигнала.
«Сердцем» кода программы является библиотека ArduinoFFT – именно она выполняет быстрое преобразование Фурье (БПФ) и вычисляет спектр входного сигнала. Опытный образец данного проекта был сконфигурирован для формирования 64 отсчетов (сэмплов, samples) и выполнения быстрого преобразования Фурье над этими отсчетами. Библиотека ArduinoFFT может выполнять БПФ над числом отсчетов от 16 до 128 – это можно сконфигурировать в программе. Но для 128 отсчетов БПФ выполняется достаточно медленно, поэтому в нашем проекте мы решили ограничиться 128 отсчетами.
В качестве средства отображения спектра в нашем проекте используется светодиодная матрица 32 столбца х 8 строк. Управлять подобной матрицей сравнительно просто с помощью библиотеки MD_MAX72xx, которую мы будем использовать в нашем проекте. С помощью этой библиотеки можно включить/выключить любое число светодиодов в столбце, который в данный момент времени используется в программе. Амплитуда каждого частотного канала (полосы) конвертируется в диапазон от 0 до 8 и в зависимости от этой амплитуды зажигается необходимое количество светодиодов в столбце, то есть чем больше амплитуда, тем больше светодиодов в столбце будут гореть.
В проекте доступны 5 режимов дисплея, которые заключаются в различных вариантах включения светодиодов в столбцах. Каждый из этих режимов вы при необходимости можете перепрограммировать самостоятельно. Для переключения режимов используется кнопка. С каждым нажатием кнопки происходит переход к следующему режиму, при нажатии кнопки на 5-м режиме снова происходит переход к 1-му режиму. Эта кнопка подключена к цифровому контакту платы Arduino и после каждого обновления экрана дисплея производится проверка ее нажатия.
Частотная характеристика
Частотная характеристика проектируемого анализатора спектра была проверена с помощью подачи на вход анализатора синусоидального колебания, сформированной генератором сигналов на одном из веб-сайтов. Было установлено, что частотная характеристика анализатора достигает частоты 18,6 кГц.
Дополнительные детали
Чтобы узнать более полную информацию о данном проекте, необходимо посетить страницу автора этого проекта на сервисе github — https://github.com/shajeebtm/Arduino-audio-spectrum-visualizer-analyzer/.
Pinguin Audio Meter v2.2
Этот продукт не обладает такими гибкими настройками как его собратья. Но мне он понравился своей простотой и дизайном, ведь далеко не всегда и не всем нужно использовать массу всех сложных настроек.
Программа Pinguin Audio Meter имеет всего 4 окна (рис. 8)
Рисунок 8. Основное окно Pinguin Audio Meter v2.2
Удобство сей программы в том, что каждое окно можно развернуть и так наблюдать гораздо приятнее. При нажатии правой кнопки мыши выскакивает меню с настройками для каждого окна.
PPM Meter — индикатор уровня (рис. 9). Доступные настройки — горизонтальное/вертикальное расположение (horizontal), статическое отображение пиковых уровней (peak hold), отображение пиковых уровней с затуханием (peak decay), время спада уровней (decay time) и цветовые настройки (color).
Рисунок 9. PPM Meter — индикатор уровня в Pinguin Audio Meter
Stereo meter — индикатор фазовой корреляции и ширину стереобазы в X-Y координатах (рис. 10).
Рисунок 10. Stereo meter в Pinguin Audio Meter
Доступны следующие настройки:
Visible points — количество видимых точек, для регулировки четкости картины.
Thick points — жирные или мелкие точки.
Samples — время выборки. Регулируется для снижения нагрузки на процессор.
Spectrum analyzer — анализатор спектра (как несложно догадаться)(рис. 11).
Рисунок 11. Анализатор спектра в Pinguin Audio Meter
В меню настроек доступны те же, что и у индикатора уровня, но есть еще парочку своих.
Windowing — весовые функции преобразования Фурье (см. выше, про Spectra Lab). Доступны 7 функций. Создатели программы считают интересной функцию Уэлша (Welch).
Input mode — режим отображения анализируемых каналов. Здесь, в отличие от рассмотренных ранее программ, нельзя отображать сразу несколько каналов.
Correlation meter — коррелометр. Отображает разность (корреляцию) фаз между двумя каналами (рис. 12). Это своего рода проверка «качества стерео картины». У него всего лишь две настройки — включение (On) и вертикальный/горизонтальный режим (Horizontal).
Рисунок 12. Коррелометр в Pinguin Audio Meter
Вот и все для нашего «пингвиньего анализатора». Да, на панели инструментов есть еще пару настроек типа частоты семплирования (sample rate), выбор устройства (device) и приоритет программы (priority).
Что ж, в завершение я решил свести основные данные в таблицу, т.е. сравнить вышеперечисленные анализаторы.
Параметр | PAS Analysis Center v3.5 | 4Pockets PocketRTA PC v1.0 | Pinguin Audio Meter v2.2 |
анализатор спектра | + | + | + |
спектрограф | + | + | — |
осциллограф | + | + | — |
индикатор фазовой корреляции (X-Y) | — | — | + |
коррелометр | — | — | + |
настройки БПФ (FFT) | + | + | — |
генератор сигналов | + | + | — |
анализ файлов | + | + | — |
количество «окон» (типов отображения спектра) | 7 | 4 | 7 |
внешний вид (5-бальная шкала) | 3 | 2 | 4 |
Как видно из сводной таблицы Pinguin Audio Meter v2.2 по функциям слабоват, но обладает несколькими «фишками», которыми не могут похвастать его более мощные собратья — коррелометром и индикатором фазовой корреляции. Внешний вид — оценка лично моя, т.е. достаточно субъективная. Оценивал я по 5-ти бальной шкале. 5 не поставил никому, ведь, согласитесь, можно было и покруче в плане графики сделать (вспомнить те же плагины Winamp-а). Но все же по виду мне понравился «пингвин».
Farmatique, 27.10.2005CJCity.ru
Программы, описываемые в данной статье:Скачать PAS Analysis Center v3.5Скачать 4Pockets PocketRTA PC v1.0Скачать Pinguin Audio Meter v2.2
Mel Spectrogram
Analytical spectrograms aimed at achieving maximum frequency resolution are presented using linear scaling, where every row of pixels is evenly spaced in the frequency domain. However, biological sensory systems tend to be logarithmic, and the human ear can differentiate frequency shifts better at lower frequencies than at higher ones.
Cropped Linear Scale (0-3kHz) | Mel Scale (0-22 kHz) |
---|---|
Amplitude perception in humans, like frequency perception, is logarithmic. Therefore, Mel spectrograms typically display log-transformed spectral power and are presented using Decibel units.
(double[] audio, int sampleRate) = ReadWavMono("hal.wav"); var sg = new SpectrogramGenerator(sampleRate, fftSize: 4096, stepSize: 500, maxFreq: 3000); sg.Add(audio); // Create a traditional (linear) Spectrogram sg.SaveImage("hal.png"); // Create a Mel Spectrogram Bitmap bmp = sg.GetBitmapMel(melSizePoints: 250); bmp.Save("halMel.png", ImageFormat.Png);
Wavetools
Осцилограф.
Эта программа имитирует двухканальный запоминающий осциллограф.
Следующие элементы управления доступны:
Позволяет регулировать усиление Оси Y в шагах на 10 дБ. В 0 дБ, на экране, показывает полномасштабный звуковой вход.
Режимы:
- Только Левый канал;
- Только Правый Канал;
- Двойной левый и правый;
- Левый минус Правый;
- Левый плюс Правый…
Копирование данных.
В настоящее время показываемые данные могут быть скопированы в Windows.
Анализатор
Эта программа моделирует узкополосный анализатор спектра. Показывает уровень (Ось Y) и частоту (Ось X) со следующими средствами управления:Частота Макс
Выбирает самую высокую показанную частоту: 5, 10 или 20 кГц, соответствующих типовым показателям 11025, 22050 или 44100 Гц.Частота Exp/Lin
Выбирает линейный или логарифмический масштаб частоты,
Лин полезна для рассмотрения гармоники, Регистрация ближе к тому, как человеческое слушание интерпретирует масштаб частоты.
Уровень Max
Измеряет Ось Y в шагах на 10 дБ относительно входа полного масштаба.
Уровень dB/Lin
Выбирает линейный или логарифмический (dB) масштаб уровня. Лин полезна для рассмотрения сигналов, поскольку пики обнаруживаются ясно. dB полезен для создания измерений, особенно сигналов широкого диапазона или низкого уровня.
Время Exp/Lin
Линейное время, составляя в среднем вычисляет среднюю амплитуду за группу по спектрам N, затем останавливается.
Дисплей
Показывает:
Спектр как единственную линию, вертикальные бары или барные схемы.
Уровень входного сигнала, пиковый уровень и уровень маркера показаны рядом с кнопкой Run/Stop.
Копирование данных
Нажатие на Copy в меню Edit скопирует текущие частоты группы и уровни к разграниченному счетом списку.
Аудиометр
Эта программа дает следующие показания с входов звуковой карты:
Пиковые значения стерео: от 0 до -18dB.
Пиковые значения стерео: от 0 до -96dB.
RMS (средние значения) стерео: от 0 до -96dB.
Phase Correlation meter: От 0 до 180
Vectorscope: мгновенный захват уровня
Peak Hold: высший уровень.
Генератор сигнала
Генератор сигнала может произвести испытательные тоны от 20 Гц до 20 кГц плюс бело-розовый шум. 1/3-octave диапазона и музыкальные ноты (based on A440) могут быть непосредственно отобраны из меню.
Размер: 0.55 Mб
Интерфейс: Английский
Платформа: Windows 3.1 и выше
***************************************************************************************
Популярность: 13 221 просм.
Spectral selection
Spectral Selection is used to make selections that include a frequency range as well as a time range on tracks in view. Spectral Selection is used with special effects to make changes to the content of the selected audio. Among other purposes, spectral selection and editing can be used for cleaning up unwanted sound, enhancing certain resonances, changing the quality of a voice or removing mouth sounds from voice work.
For full details, see Spectral Selection and Editing.
To define a time range combined with a spectral range, hover at a vertical position that you want to be the approximate center frequency to act on then click and drag a selection horizontally. A horizontal line appears beside the I-Beam mouse pointer that defines the center frequency.
Drag vertically, with or without continuing to drag horizontally, to define the range of frequencies to be acted on. A «box» containing a combined frequency and time range is now drawn in a colored tint as shown below (the exact color of the tint will depend on the version of Audacity and the settings of your monitor):
The frequencies in the spectral selection can then be in various ways, affecting their , using the special effects in the Effect Menu. This can be useful to remove unwanted extraneous noises from the audio or to apply very specific tone quality changes to it.
In order to define a spectral selection you need to be in view.
Also you must have checked «on» the Enable Spectral Selection in either Spectrograms Preferences, or the dropdown menu of the choosing Spectrogram Settings…. |
Приложения для сравнения качества аудио файлов
Торговый маленький помощник
Просто установив эту программу, у нас будет возможность проверить, есть ли файлы в формате WAV, FLAC или AIFF, которые у нас есть Качество CD , Для начала расскажем, что программу можно скачать с эту ссылку и его работа основана на сообщении нам, имеет ли аудио файл качество CD, как мы упоминали.
Имеет простой интерфейс пользователя где нам нужно только перетащить файл, который нужно проанализировать. Как только процесс завершен как таковой, программа показывает нам отчет со всеми подробностями, относящимися к качественным свойствам файла, чтобы мы знали, есть ли у него CD качество, или потерял часть этого.
Проверка звука без потерь
Это еще одно интересное предложение такого типа для проверки реального качества имеющихся у нас музыкальных файлов. Таким образом, что без потерь Аудио Checker действительно анализирует аудио треков без потерь и обнаруживает транскодирование, чтобы сообщить нам, если это качество ниже ожидаемого.
Всего этого можно добиться, загрузив программу как таковую с , Также стоит знать, что самое интересное в этом предложении заключается в том, что оно совсем не усложняет жизнь. Это портативное и бесплатное приложение, в которое нам нужно только перетаскивать музыкальные файлы для анализа без каких-либо дополнительных сложностей.
Аудио Checker
Одна из главных характеристик, которую предлагает нам эта альтернатива, о которой мы сейчас говорим, — это то, что она предлагает нам привлекательного и визуального пользователя. интерфейс , Его работа так же проста, как и в других описанных приложениях, поскольку достаточно загрузить файл в этом интерфейсе, чтобы оценить его качество по сравнению с оригиналом.
Однако некоторые пользователи жалуются на надежность анализы проводится здесь. Например, некоторые из этих ошибок могут быть обнаружены при разборе файлов в формате FLAC. Если вы хотите заполучить программу и попробовать ее из первых рук, это то, что вы можете получить от эту ссылку .
Спек
В то же время важно знать, что ваша внутренняя работа несколько отличается от того, что мы видели до сих пор. И это то, что Спек на самом деле заявление что после загрузки рассматриваемого аудиофайла возвращает соответствующий ему акустический спектр
Это будет очень полезно для нас, чтобы мгновенно узнать частотный диапазон файла. Кроме того, спектр также покажет нам диапазон децибел файла, который помогает узнать, понес ли он потери качества или нет.
Тау анализатор
Это еще одна программа такого типа, также совершенно бесплатная, которая помогает нам отличать файлы оригинальных компакт-дисков от подделок с потерей качества. Итак, как мы упоминали ранее, эта программа отвечает за анализ эти файлы, чтобы увидеть, есть ли утечка в загруженном файле. Поэтому с помощью этой программы мы можем проверить подлинность ваших музыкальных компакт-дисков.
Скажите, что после загрузки из эту ссылку , он предоставляет нам довольно интуитивно понятный и простой пользовательский интерфейс. Это позволяет нам работать непосредственно с этими аудио файлы и предлагает нам внутренний анализатор спектра и частоты.
Spectro
Когда дело доходит до анализа звуковых файлов, которые мы сохранили на наших жестких дисках, Spectro является еще одним очень интересным решением в этом отношении. Это абсолютно бесплатная программа, которую мы можем скачать с эту ссылку и это отвечает за анализ наших аудиофайлов.
Скажем, что приложение как таковое представляет собой анализатор звуковых файлов, способный работать с такими форматами, как FLAC, APE, MP3 и WAV. Таким образом, он показывает нам наиболее важные данные загруженных файлов и создает спектрограмму с ними. Таким образом и визуально мы можем быстро обнаружить снижение качества.
PAS Analysis Center v3.5
Итак, начнем по порядку: запустив программу мы видим несколько окон (рис. 1). Вот их мы и будем рассматривать далее.
Рисунок 1. Окна в PAS Analysis Center v3.5
Первое из окон — Spectrum Analyzer, собственно анализатор спектра. На первой вкладке (FFT Length) производятся настройки для преобразования Фурье (собственно, сам процесс представления сигнала в спектральном виде). Blackman, Hamming, Parzen и пр. — это так называемые «окна», проще говоря это имена математиков, которые предложили каждый свою весовую функцию для представления спектра звука. Если хотите ощутить между ними разницу, то включите генератор (рис. 2) и сгенерируйте синусоиду (Sine).
Рисунок 2. Включаем генератор
Так как синусоида должна в идеале давать один пик в спектральной области, то можно переключать вышеупомянутые «окна» и посмотреть на результат.
Следующий параметр — FFT Length. Это количество отсчетов при Фурье-преобразовании. Чем это значение больше, тем точнее спектральная характеристика но медленней процесс. И наоборот.
Следующая вкладка — Scale. Здесь находятся настройки шкалы спектроанализатора. Все три характеристики регулируют растяжение/сжатие по осям.
Display. В этой вкладке находятся настройки вида спектроанализатора.
Log Amplitude и Log Frequency — логарифмическая либо линейная шкалы по соответствующим осям. Draw grid — прорисовка сетки. Draw inactive — подсветка спектральных полос. Draw amplitude scale и Draw frequency scale — отображать градуировку шкалы уровня и частоты соответственно. Draw peaks — прорисовка пиковых значений. Peaks hold — отображение последнего пикового значения.
Kind — тип визуализации спектра. Тут особо интересный режим Scroll, т.к. в этом режиме еще включается 3-е измерение — время.
Peaks — настройка отображения пиков. Numbers — толщина пиков. Peak delay — задержка пиков. Peak speed — скорость спада пиков.
Decay — настройка времени регенерации спектральных столбцов. Необходимо для коррекции скорости, т.е. чтоб они не прыгали с бешенной скоростью или наоборот не ворочались еле-еле.
Рисунок 3. Осциллограф
Следующее окно Oscilloscope (осциллограф) (рис. 3). Он показывает форму волны в случае звука, а в общем случае изменение напряжения (или тока в зависимости от подключения) анализируемого сигнала.
FFT Length — как я уже говорил, это настройка для преобразования Фурье.
Scale — здесь настройка подписей шкал. Effect — выбирается разделение по цвету для пиков (Peaks) или для верхней/нижней части (Splitt).
Display — настройка вида. Здесь стоит выделить Scroll — значительное сжатие по времени, удобно для наблюдения более общей картины.
Outfits — тип прорисовки волны.
Trigger mode — эта функция похожа на функцию синхронизации в осциллографах. И полезна она для анализа музыки вряд-ли будет. Up Flag и Down Flag — по какому фронту синхронизировать (заметно на пилообразных сигналах). Trigger level — уровень срабатывания.
И последнее окно — Spectrogram (рис. 4) это фактически перевернутый спектр, растянутый по времени. Амплитуда (уровень) здесь отображается цветом.
Рисунок 4. Спектрограф
FFT Length — см. ранее.
Scale — установки шкалы и усиления. Amp scale — усиление. Sensitive — чувствительность. Freq scale — степень растяжения оси частоты. Freq base — основная (нижняя) частота.
Display — настройки отображения спектрограммы. Accelerate — ускорение во времени. Embossed — смена фона спектрографа, особо эффектно бывает при других подстройках (Black-White в Outfit). Scroll display — прокручивать дисплей по прохождении или возвращаться назад.
Outfit — цветовые настройки спектрограммы.
На этом обзор окон закончен.
Теперь я хочу немного сказать об основных принципах работы этой программы, да и других подобных ей (анализаторов сигнала).
Существует 3 режима работы таких программ: 1. Вживую (анализ звука в реальном времени со входа звуковой платы). Здесь смотри рисунок 5
Рисунок 5. «Живой» режим
2. Проигрыватель файлов. Анализирует уже записанные файлы (см. рис. 6)
Рисунок 6. Режим плеера
3. Режим генератора. О нем я уже упоминал выше (см. рис.2). Полезен для подстроек и настроек.
Read data from a WAV File
You should customize your file-reading method to suit your specific application. I frequently use the NAudio package to read data from WAV and MP3 files. This function reads audio data from a mono WAV file and will be used for the examples on this page.
(double[] audio, int sampleRate) ReadWavMono(string filePath, double multiplier = 16_000) { using var afr = new NAudio.Wave.AudioFileReader(filePath); int sampleRate = afr.WaveFormat.SampleRate; int bytesPerSample = afr.WaveFormat.BitsPerSample 8; int sampleCount = (int)(afr.Length bytesPerSample); int channelCount = afr.WaveFormat.Channels; var audio = new List<double>(sampleCount); var buffer = new float; int samplesRead = ; while ((samplesRead = afr.Read(buffer, , buffer.Length)) > ) audio.AddRange(buffer.Take(samplesRead).Select(x => x * multiplier)); return (audio.ToArray(), sampleRate); }
Новости музыкального софта
-
Ableton представляет Live 11
25 февраля, 2021Быстрое, удобное и гибкое программное обеспечение для создания музыки и исполнения. В нем есть всевозможные эффекты, инструменты, звуки и креативные…
-
Arturia представила V COLLECTION 8
17 декабря, 2020Культовая антология инструментов, которая создавалась десятилетиями. V Collection 8, объединяющий культовые аналоговые синтезаторы, ретро-сэмплеры,…
-
04 февраля, 2019
Synth One от компании AudioKit получил высокую оценку для iPad-версии не только из-за превосходного звучания. Этот бесплатный гибридный аналоговый/FM…
-
Digital Performer 10 от MOTU идут по пути Ableton
04 февраля, 2019Digital Performer от MOTU всегда была одной из «традиционных» рабочих станций, которая работает в классическом стиле линейной аранжировки….
-
Instant Phaser Mk II от Eventide — сверхточный эмулятор железа
27 января, 2019Instant Phaser компании Eventide открыл новое направление в далёком 1972 году. Eventide утверждают, что это был первый в истории электронный…
Пополнения софта для Windows
-
RDGAudio Stage31 мая 2021
Бесплатные плагины Gain Staging и Stereo Enhancing для постановки и улучшения стерео. Он имеет несколько режимов: узкий, моно, стерео, нормальный, широкий, расширенный, сверхширокий.
-
MVs Plugins La Voz Cantante v6.431 мая 2021
Бесплатный эффект VST вокодер с 512 каналами. Входной модулятор — обычно поётся или говориться голос, анализируется относительно его спектрального состава, который затем применяется
-
Togu Audio Line TAL-Chorus-LX v1.6.013 мая 2021
TAL-Chorus-LX — бесплатный эффект хорус, который имитирует характеристики встроенного хоруса из железного синтезатора «Juno-60». Особенности: Эмуляция работы встроенного хоруса
-
Togu Audio Line TAL-Reverb-4 v2.4.013 мая 2021
Бесплатный плагин VST эффект для Windows. TAL-Reverb-4 — это автономная версия высококачественного ревербератора из TAL-Sampler. Особенности: Модулированный старинный звук
-
Togu Audio Line TAL-Filter 2 v3.0.013 мая 2021
TAL-Filter-2 — бесплатный многорежимный фильтр, синхронизируемый с темпом хоста, в котором можно управлять панорамированием и громкостью посредством модуляции. Плагин включает
Что будем мерить
Сперва хочу предупредить: невозможно, полагаясь лишь на программные средства (анализаторы и т.п.), с абсолютной уверенностью судить о превосходстве качества одной версии трека над другой. Имеются ввиду, например, различные раздачи на торренте, отличающиеся как источником, так и способом, которым они были закодированы. Ни одна программа не даст Вам полного понятия о звучании трека.
О чем же в данном случае можно судить? Во-первых — о частотном диапазоне анализируемого сигнала (это единственное, что можно определить точно), о его спектральном составе, ну и, как следствие (уже с той или иной вероятностью):
1. Если это lossless трек: был ли он получен из lossless источника, или же ранее был закодирован с использованием одного из lossy алгоритмов. Имеются ввиду алгоритмы, использующие психоакустическое сжатие. Сжатие с динамическим понижением разрядности (lossy WavPack, lossyWAV) скорей всего выявить не удастся, возможно, только на слух, по фоновым шумам.
2. Если это lossy: соответствует ли материал текущему своему виду, т.е., опять же, был ли источником кодирования lossless сигнал, или это апконверт. Апконвертом является любое преобразование с повышением битрейта. Например, перекодирование MP3 128 кбит/с в 320 кбит/с. Однако, осознанное перекодирование качественного AAC, OGG или MPC 200-256 кбит/с в MP3 320 кбит/с (для лучшей совместимости с устройствами воспроизведения) — случай довольно спорный, и при отсутствии других исходников даже не осуждается. Но, конечно же, при создании раздачи подобного материала, источник надо обязательно указывать.
Кроме того, для lossy (и в особенности, для LAME MP3) можно с той или иной степенью достоверности определить параметры кодирования. А определив например такой параметр, как частота срез НЧ фильтра, и сравнив его с актуальным частотным диапазоном записи, можно в некоторых случаях выявить тот самый апконверт.
4Pockets PocketRTA PC v1.0
Данный продукт интересен тем, что он сделан для двух платформ: PC и Pocket PC, т.е. как для настольных так и для карманных ПК. Я буду рассматривать версию для настольного ПК.
Итак, включив программу мы видим основное окно программы (рис. 7).
Рисунок 7. Основное окно 4Pockets PocketRTA PC v1.0
Сверху мы видим уровни входного сигнала. Чуть ниже расположена секция, показывающая уровень самой громкой частоты спектра в виде, собственно, числового значения в герцах, а также приблизительно ноту, соответствующую этой частоте. Еще ниже расположено окно анализатора. В самом низу идет секция настроек. Вот ее мы и рассмотрим поподробнее.
Scale — выбор точности и типа анализатора. Кроме всего есть осциллограф (Sample), спектрограф (Spectrograph) и такая необычная функция как уровень звукового давления (SPL). С помощью SPL определяют отношение сигнал/шум и некоторые характеристики «железа».
Average — функция для удобства наблюдения спектра (замедляет/убыстряет)
Mon — (Monitor channel) выбор типа анализируемых каналов (моно, стерео, левый, правый)
Trace — сохраняет на экране пиковые уровни. Удобно при настройках на octave.
Weight — как утверждают разработчики, на частотах ниже 500 Гц и выше 4 кГц слуховая чувствительность падает, это значит что вне этих частотных пределов человек слышит звуки тише. Для компенсации этого эффекта в профессиональной аппаратуре используют весовые кривые (weight curves). Здесь доступны 4 типа весовой кривой.
Decay — скорость спада спектральных столбцов.
Gain — регулировка усиления. Увеличение на 3 дБ все равно что умножение в 2 раза.
Pause — пауза (а кто сомневался).
Tone — генератор. Доступны 8 синусоидальных пресетов разной частоты и 2 шумовых пресета.
Еще я хочу обратить внимание на то что в режиме спектрального анализатора мы можем увидеть в секции ниже уровней частоту, ноту и уровень в точке куда мы кликнем мышкой. Иногда полезно
Классификация жанров музыки с помощью ANN
Набор данных состоит из 1000 звуковых треков, длина каждого составляет 30 секунд. Он содержит 10 жанров, каждый из которых представлен 100 треками. Все дорожки — это монофонические 16-битные аудиофайлы 22050 Гц в формате .wav.
Жанры, представленные в наборе:
- Блюз
- Классика
- Кантри
- Диско
- Хип-хоп
- Джаз
- Метал
- Поп
- Регги
- Рок
Для работы с нейронными сетями мы будем использовать — бесплатный сервис, предоставляющий GPU и TPU в качестве сред выполнения.
План:
В первую очередь нужно преобразовать аудиофайлы в изображения формата PNG (спектрограммы). Затем из них нужно извлечь значимые характеристики: MFCC, спектральный центроид, скорость пересечения нуля, частоты цветности, спад спектра.
После извлечения признаки можно добавить в файл CSV, чтобы ANN можно было использовать для классификации.
Приступим!
- Извлекаем и загружаем данные в Google Drive, а затем подключаем диск в Colab.
Структура директорий Google Colab после загрузки данных.
2. Импортируем все необходимые библиотеки.
3. Теперь конвертируем файлы аудиоданных в PNG или извлекаем спектрограмму для каждого аудио.
Спектрограмма семпла песни в жанре блюз:
Преобразование аудиофайлов в соответствующие спектрограммы упрощает извлечение функций.
Создание заголовка для файла CSV.
5. Извлекаем признаки из спектрограммы: MFCC, спектральный центроид, частоту пересечения нуля, частоты цветности и спад спектра.
6. Выполняем предварительную обработку данных, которая включает загрузку данных CSV, создание меток, масштабирование признаков и разбивку данных на наборы для обучения и тестирования.
7. Создаем модель ANN.
8. Подгоняем модель:
После 100 эпох точность составляет 0,67.
Заключение
На этом первая часть подходит к концу. Мы провели анализ аудиоданных, извлекли важные признаки, а также реализовали ANN для классификации музыкальных жанров.
Во второй части попробуем выполнить то же самое с помощью сверточных нейронных сетей на спектрограмме.
- Максимальная производительность Pandas Python
- Продвинутые методы и техники списков в Python
- Автоматизация работы с Python
Перевод статьи Nagesh Singh Chauhan: Audio Data Analysis Using Deep Learning with Python (Part 1)
Что будем использовать
1. foobar2000 — для декодирования, воспроизведения и просмотра технических характеристик музыкальных файлов. Дополнения к foobar2000: fooCDTect (оболочка к auCDTect — проверка lossless на предмет апконверта), AuSpec (удобный просмотр спектрограммы нажатием одной кнопки), MP3 Packer — просмотр специфических параметров MP3.
Примечание: дабы не устанавливать дополнительно горы декодеров и дополнений, рекомендую сразу скачать мою сборку. Альтернативы foobar2000 и дополнениям не советую, т.к. по возможностям они значительно уступают.
2. EncSpot Professional — с его помощью мы будем просматривать технические характеристики MP3 файлов.
3. Adobe Audition 2 — для просмотра спектрограмм с удобным масштабированием.
Тонгенератор (Онлайн воспроизведение звука на определенной заданной Вами частоте и громкости. Используется для настройки звучания или тестирования акустики/сабвуфера)
Главная • Сервисы • Тонгенератор (Онлайн воспроизведение звука на определенной заданной Вами частоте и громкости. Используется для настройки звучания или тестирования акустики/сабвуфера)
Как пользоваться тонгенератором для установки нужной частоты среза на регуляторе фильтра усилителя.
Для начала на вход усилителя нужно подать аудиосигнал с устройства (ПК, смартфон и т.д.), подключенного к интернету и воспроизводящего звук.
Все остальные устройства от входа усилителя нужно отключить.
Убедившись, что звук с подключенного к усилителю устройства воспроизводится можно начинать настройку фильтров усилителя.
Рассмотрим настройку фильтров усилителя на примере двухполосной системы, построенной на поканальном подключении к 4-х канальному усилителю.
Допустим, высокочастотники (твитера) подключены на выходы усилителя 1 и 2. Подключаем на соответствующие входы усилителя тонренератор.
Если твитер должен работать с ограничением в 4000 Гц — устанавливаем эту частоту на тонгенераторе. На усилителе, при этом, нужно установить регулятор HPF на более высокое значение (например на 8000 Гц или в крайнее положение ручки регулятора). Включаем тонгенератор и очень плавно и медленно поворачиваем ручку регулятора в обратном направлении до тех пор, пока не услышим в твитерах заданный тонсигнал. Как только громкость тонсигнала перестала прибавляться при повороте ручки — это означает, что фильтр усилителя установлен на заданной частоте в 4000 Гц.
Теперь нужно настроить мидбас.
Переключаем устройство с тонгенератором с входов 1 и 2 на входы 3 и 4.
Сначала настраиваем HPF на частоте, к примеру 65 Гц (настраивается так же как и для твитера). После того как настройка HPF закончена, переходим к настройке LPF (фильтра низких частот).
Устанавливается частота, например те же 4000 Гц, на тонгенераторе. Ручкой регулятора LPF на усилителе устанавливаем значение, ниже заданной частоты тонгенератора.
Включаем тонсигнал и медленно поворачиваем регулятор вперед.
Когда мы услышим в настраиваемом динамике сигнал тонгенератора и громкость его перестанет возрастать при повороте ручки — заданное значение фильтра установлено.
Все остальные компоненты системы настраиваются точно так же.
Sound Meter
Инструмент анализа и мониторинга, разработанный с целью измерения уровня шума в децибелах. Как подсказывают разработчики, работает Sound Meter в диапазоне от 0 до 90 дБ, а вот дальше замер сложно назвать точным, а потому стоит использовать физические и профессиональные измерители звука. Впрочем, до 90 дБ появится шанс замерить шум, исходящий от фабрик, офисов или улиц, заполненных автомобилями, пешеходами и общественным транспортом.
Замеры в Sound Meter производятся в двух режимах – наглядном, когда по экрану бегает стрелка и появляется соответствующий график, или же – в виде статистики, которая появляется уже после тестов.
Способ 2. (Digital) Optical -> Multichannel Analog
Ради этого статья и затевалась. Мне часто задают вопросы вида: «Как подключить мой домашний кинотеатр к новому телевизору? У него нет аналоговых аудиовыходов!».
У моего есть только двухканальный мини-джек и оптический Toslink . На время до покупки новой акустики старый комплект 5.1 я подключил при помощи такого китайского конвертера.
Внутри устройства прячется довольно примитивный цифроаналоговый преобразователь и DSP-процессор
— микросхема, отвечающая за микширование, эквалайзинг и эффекты.
Применение очень простое — подключаем в аналоговые RCA-выходы акустическую систему, с другой стороны подаем аудиосигнал через коаксикальный или оптический разъем и внешнее питание от комплектного блока питания.
Если сигнал соответствует числу подключенных каналов акустики — он проходит без микширования и обработки. Как есть.
То есть, если у фильма 5.1-канальная аудиодорожка
, и мы используем соответствующую аудиосистему — качество звука будет таким же, как в оригинале.
Если на него подается двухканальная дорожка, то сигнал преобразовывается с помощью «виртуального» микширования в процессоре, и раскидывается на все колонки.
Конечно, это сильно отличается от настоящего 5.1-канального звука, но, все-таки — звучит приятнее, чем обычное стерео. Если, конечно, мы говорим о фильмах.
Так можно подключить акустику и к другим устройствам
— например, через обычных выход для наушников ноутбука, планшета или плеера.
Но на выходе получится только виртуальный 5.1-канальный звук, даже если изначальная дорожка — многоканальная. Из стереоразъема иного получить не выйдет.
При необходимости, конвертер позволяет воспроизводить любой входящий аудиосигнал в двухканальный. Удобно для музыкальных систем стандарта систем 2.1
, а так же в тех случаях, когда DSP-конвертер воспроизводит дорожку некорректно.