Спектрограмма звука: Рисуем звук / Хабр

Содержание

Рисуем звук / Хабр

Пять лет назад на Хабре была опубликована статья «Печать и воспроизведение звука на бумаге» — о системе создания и проигрывания спектрограмм. Затем, полтора года назад Meklon опубликовал квест, в котором такая чёрно-белая логарифмическая спектрограмма стала одним из этапов. По авторскому замыслу, её надо было распечатать на принтере, отсканировать смартфоном с приложением-проигрывателем, и воспользоваться таким образом «надиктованным» паролем.

У меня в тот момент не было в досягаемости ни принтера, ни смартфона, так что меня заинтересовали два аспекта задачи:

  1. Как проще всего расшифровать спектрограмму без дополнительных устройств и без дополнительного софта — желательно, прямо в браузере?
  2. Можно ли её расшифровать вообще без софта — «на глаз»?

(Для тех, кто видит спектрограммы впервые, стоит пояснить, что это график, где по горизонтальной оси идёт время воспроизведения, по вертикальной (она логарифмическая) — частота звука, а степень черноты точки обозначает мощность данной частоты в данный момент времени.)

Готовых скриптов для воспроизведения спектрограмм я не нашёл, хотя для обратного преобразования — звука в спектрограмму — легко* находятся примеры, благодаря тому, что функциональность AnalyserNode.getByteFrequencyData() встроена в Web Audio API. А вот для преобразования массива частот в массив PCM для воспроизведения — не обойтись без реализации в скрипте обратного преобразования Фурье (DFT).

*В первом примере в качестве аудиозаписи для спектрального анализа предлагается фрагмент трека «» от Aphex Twin: в качестве секретного послания музыкант встроил в этот трек селфи, проявляющееся на логарифмической спектрограмме. К сожалению, в этом примере спектрограмма отображается линейно, так что лицо получается растянутым вверху и сжатым внизу.
По поводу реализации DFT сразу ясно, что такая «числодробилка» на чистом JavaScript будет работать медленно и печально; к счастью, я обнаружил готовый порт библиотеки FFTW («Fastest Fourier Transform in the West») на asm.js — это форма представления низкоуровневого кода, обычно написанного на Си, которую современные браузеры обещают выполнять со скоростью почти как у скомпилированного в машинный код. Обвязку для FFTW, превращающую чёрно-белое изображение в WAV-файл, я взял из ARSS и собственноручно переписал на JavaScript. ARSS принимает изображения, инвертированные по сравнению с PhonoPaper, и я не стал это менять.

Результатом вы можете полюбоваться на tyomitch.github.io/#meklon.png

Внизу видны повторяющиеся горизонтальные полосы — форманты, по положению которых распознаются гласные. Вверху — вертикальные «всплески», соответствующие шумным согласным: более широкие — щелевым (фрикативным), более узкие — смычным. Сонорным же согласным ([р] и [л]) соответствуют «облака» в средних частотах.

Для того, чтобы можно было поиграть со спектрограммой, я приделал примитивную рисовалку, почти целиком скопированную из туториала по рисованию на canvas. Кнопка «Copy» позволяет перевести изображение в красный канал (он игнорируется синтезатором) и попытаться «обвести» звуки.

Википедия пишет: «Считается, что для характеристики звуков речи достаточно выделения четырёх формант». Обведём форманты F2-F4 (F1 почему-то игнорируется синтезатором), и убедимся, что гласные вполне распознаются:

Затем обведём шумные согласные: аффриката [ч] — это [т], плавно переходящее в [ш]; а звонкое [д] от глухого [т] отличается наличием среднечастотных формант. Теперь уже можно различить цифры «шесть» и «де’ить»:

Добавляем тёмно-серым сонорные согласные: заодно заметим, что [р] немного «приподнимает» гласные форманты, а [л] — наоборот, опускает.

Остались недорисованными только губные согласные [б] и [в], но и без них пароль более-менее ясен.

А можно ли нарисовать звук с чистого листа, не обводя спектрограмму аудиозаписи? Скажу честно, у меня не получилось. Может быть, хотите попробовать сами?

Как нейронная сеть SincNet выделяет значимые частоты в звуке через Back Propagation / Хабр

Недавно вышла одна очень интересная статья «Speaker Recognition from raw waveform with SincNet», в которой была описана end-to-end архитектура нейронной сети для распознавания говорящего по голосу. Ключевая особенность этой архитектуры — специальные одномерные сверточные слои, которые имеют всего два параметра с четкой интерпретацией. Интерпретируемость параметров нейронной сети — дело довольно затруднительное, поэтому эта статья привлекла мой интерес.


Если заинтересовало описание идеи этой статьи, а также почему эта идея близка по смыслу к построению мел-спектрограмм, то милости прошу под кат.

Отмечу, что все изображения, используемые в этом посте либо взяты из исходной статьи, либо их можно получить с помощью Jupyter Notebook’а, хранящегося в этом репозитории.

Авторами описываемой статьи был выложен исходный код на гитхаб, с ним можно ознакомиться здесь.


Мел-спектрограммы

Чтобы понять суть этой статьи, давайте сначала вспомним, что такое мел-спектрограмма, как ее получить и в чем ее смысл. Если эта тема вам знакома, то эта часть будет не очень интересной. Ее вычисляют по обычной спектрограмме, построенной с помощью оконного преобразования Фурье:

Суть этой операции в последовательном применении преобразования Фурье к коротким кусочкам речевого сигнала, домноженным на некоторую оконную функцию. Результат применения оконного преобразования — это матрица, где каждый столбец является спектром короткого участка исходного сигнала. Посмотрите на пример ниже:


Эксперименты ученых показали, что человеческое ухо более чувствительно к изменениям звука на низких частотах, чем на высоких. То есть, если частота звука изменится со 100 Гц на 120 Гц, человек с очень высокой вероятностью заметит это изменение. А вот если частота изменится с 10000 Гц на 10020 Гц, это изменение мы вряд ли сможем уловить.

В связи с этим была введена новая единица измерения высоты звука — мел. Она основана на психо-физиологическом восприятии звука человеком, и логарифмически зависит от частоты:


Собственно, мел-спектрограмма — это обычная спектрограмма, где частота выражена не в Гц, а в мелах. Переход к мелам осуществляется с помощью применения мел-фильтров к исходной спектрограмме. Мел-фильтры представляют из себя треугольные функции, равномерно распределенные на мел-шкале. В качестве примера здесь изображены 10 мел-фильтров (на практике их берут больше, здесь их мало для наглядности):


При переводе в частотную шкалы, те же самые фильтры будут выглядеть так:


Каждый столбец исходной спектрограммы скалярно умножается на каждый мел-фильтр (размещенный на частотной шкале), после чего получается вектор чисел, по размеру равный количеству фильтров. На картинке ниже изображен один из столбцов спектрограммы (значения амплитуды переведены в логарифмический масштаб для наглядности, то, что на картинке кодировалось цветом, здесь отражено по оси ординат) и два мел-фильтра, с помощью которых строится мел-спектрограмма:


В результате таких преобразований значения из низких частот спектрограммы остаются практически неизменными на мел-спектре, а в высоких частотах происходит усреднение значений из более широкого диапазона. В качестве примера предлагаю посмотреть на мел-спектрограмму, построенную по предыдущей спектрограмме с использованием 64 мел-фильтров:


Резюмируя все вышесказанное: на мел-спектрограмме сохраняется больше информации, которая хорошо воспринимается и различается человеком, чем на обычной спектрограмме. Иными словами, такое представление звука больше сфокусировано на низких частотах, и меньше — на высоких.


При чем же здесь SincNet?

Вспомним, что мел-шкала была создана на основе человеческого психо-физического восприятия звука. Но что если мы хотим выбрать другие полосы частот, которые нас интересуют больше чем остальные в какой-либо конкретной задаче? Как выбрать самый лучший набор фильтров для решения какой-либо задачи?

Именно эту задачу и решает предложенная авторами архитектура.

Авторы рассматривают в качестве фильтра следующую функцию:

в этой формуле — это прямоугольная функция. Такой фильтр задает диапазон частот от до . Вот ее график:


С помощью обратного преобразования Фурье для этой функции можно получить ее аналог во временной области:


Функция — это импульсная характеристика идеального полосового фильтра, который нельзя реализовать практически, поэтому авторы усекают эту функцию окном Хэмминга. В цифровой обработке сигналов такой подход называется синтезом фильтров методом окон.

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

По теореме о свертке, свертка исходного сигнала с функцией эквивалентна умножению спектра исходного сигнала на функцию . Грубо говоря, выполняя свертку исходного сигнала с функцией , мы «обращаем внимание» нейронной сети на данный диапазон частот в рассматриваемом сигнале.

Конечно, здесь не применяется преобразование Фурье и явно нейросети не сообщаются конкретные значения спектра в диапазоне . По всей видимости, задача извлечения спектральных характеристик возлагается на следующие блоки, расположенные в нейронной сети.

Из достоинств такого подхода, авторы отмечают следующее:


  1. Быстрая сходимость
  2. Гораздо меньшее количество параметров. В классическом сверточном блоке количество параметров равно длине свертки. При описанном же подходе, количество параметров не зависит от длины свертки и равно 2
  3. Интерпретируемость параметров

Выводы

Фильтров, с помощью которых преобразуются спектрограммы, существуют много. Например, кроме описанных мел-фильтров, есть еще барк-фильтры (почитать можно здесь и здесь). По крайней мере барк — это тоже психофизическая величина, подобранная «под человека».

В своем исследовании авторы предложили метод, по которому можно заставить нейронную сеть самостоятельно выбрать наиболее подходящие диапазоны частот в процессе обучения в зависимости от набора данных. Как по мне, это очень похоже на процесс построения мел-спектрограммы, при котором больший приоритет отдается низким частотам. Вот только мел-спектрограммы придумали на основе человеческого восприятия звука, а в предложенном методе нейросеть сама решает, что важно, а что нет.

Скрытые послания в музыке / Хабр

Нетрудно вообразить места применения знаний того, как в неявном виде поделиться какой-то информацией, введенной в артефакты массовой культуры. Сегодня в большинстве случаев в скрытии каких-то посланий в музыке нет ровно никакой практической нужды — это лишь приятные бонусы для особенно ярых поклонников музыкальных коллективов. Вплетение посланий в слова песен и меняющиеся краски рисунков в оформлении музыкальных альбомов здесь, конечно, не рассматриваются.

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


Потенциал подобной техники увидел ещё изобретатель фонографа Томас Эдисон, а впервые ею воспользовались пионеры электронной музыки в 50-ых годах прошлого века, хотя, конечно, популяризации приемов бэкмаскинга мы обязаны группе Beatles. В частности, под воздействием марихуаны Леннон прокручивал пленки задом наперед, и полученный звук его очень заинтересовал. Первой песней со скрытым сообщением была Rain.

Цензуру таким образом обходил, например, Фрэнк Заппа, звукозаписывающий лейбл которого не пропустил некоторые строчки.


Better look around before you say you don’t care.
Shut your f…ing mouth ’bout the length of my hair.
How would you survive, if you were alive, shitty little person?

Менее известен прием наложения человеческой речи в ускоренном или замедленном виде, которым воспользовался Джими Хендрикс для песни Third Stone from the Sun. Если ускорить версию трэка в издании The Jimi Hendrix Experience: 1966–1967 в два раза (или проигрывать пластинку на 33⅓ оборота в минуту на скорости в 45), можно услышать отчетливый диалог космических пришельцев, изображаемых Джими и его менеджером.


Хендрикс: Star fleet to scout ship, please give your position. Over.
Чэндлер: I am in orbit around the third planet of star known as Sun. Over.
Хендрикс: May this be Earth? Over.
Чэндлер: Positive. It is known to have some form of intelligent species. Over.
Хендрикс: I think we should take a look. (Джими издает звукоподражания космическому кораблю)

Спад интереса к скрытию посланий в обратном направлении или в проигрывании с повышенной скоростью связан, в первую очередь, с переходом на цифровые носители, проигрыватели которых далеко не всегда имеют функционал реверсирования проигрывания и его ускорения. Не стоит скрывать создание в конце 80-х в Калифорнии и некоторых других штатах законопроектов против заложения в музыку сообщений: фанатизм поиска пасхалок помог находить «послания антихриста» практически везде. Начало слухам о смерти Пола Маккартни положил именно бэкмаскинг.


Получить спектрограмму легко, возможно ли восстановить звук по спектрограмме? Да, но со значительными аппроксимациями, что никак не помешает создать музыку, которую нужно не слушать — всё равно получится жуткий металлический звон, — а смотреть. Такой музыкой является, к примеру трэк стороны B сингла Windowlicker британского электронного музыканта Aphex Twin, чаще всего называемый «Уравнение» или «Формула», но имеющий более эпатажное название:

Пропустите до 5:30, чтобы увидеть патентованную ухмылку Ричарда. Прием не был нов даже в 99-ом году: к примеру, вот конец трэка Windowlicker:

Легко догадаться, что будет в трэке Look глитч-альбома Songs About My Cats.


На виниловой пластике возможно напечатать две дорожки, как это иногда случалось. Например, в оригинальном издании The Monty Python Matching Tie and Handkerchief 1973 года мало того, что не были подписаны стороны пластинок, и не имелось списка трэков, так ещё и на стороне B были нанесены две паралелльные друг другу концентрические дорожки. Для прослушивания скрытой песни на «трехсторонней» пластинке была необходима лишь удачная установка иглы.

Такую же выходку провернул Mad Magazine на диске It’s a Super Spectacular Day, только дорожек было 8. На каждой из них красочно расписывались неприятности, которые могут с вами сегодня произойти. Записи в несколько дорожек были популярны ещё в 50-ых, но, как правило, использовались лишь в пластинках с аудиорассказами для детей, что позволяло получить несколько различных историй с одной двухсторонней пластинки.

Формат данных компакт-диска, описанный в Красной книге, допускает так называемый прегап — отступ от первого трэка. По умолчанию, он длится две секунды и содержит тишину. Множество музыкантов размещали в прегапе аудиоматериалы. К сожалению, обновление в Windows 95 сделало невозможным доступ системы к прегапу первого трэка, видимо, ради поддержки формата CD-Extra. Однако цифровые данные можно размещать следующим способом.


Как записать текстовый файл на виниловой пластинке? Американский коллектив Information Society смог без труда это сделать: название трэка 300bps N, 8, 1 (Terminal Mode or Ascii Download) альбома Peace and Love, Inc. явным образом указывало на то, как можно прочесть их послание. Модем на 300 бод позволял получить текстовый файл, содержавший рассказ группы о давлении на них бразильских государственных структур. Непонятно лишь, почему они выбрали столь странный формат для рассказа.Скрытый текстAtz Ok Atx3dt Connect 300

So we’re supposed to play in curitiba in 18 hours, but our bus is being held hostage by the local promoters. they’ve formed some unholy alliance with the brazilian counterpart of ascap: the prs. Rently the prs has the legal power to arrest people, and they want a piece of the national tour promoter’s money. the local security force, “gang mexicana”, has been bought out for 180 Zados and a carton of marlboros each. the only faction still operating in our defense is “big john”, our personal security man, and he’s hiding in his room because a local gang is out Is blood because of a 1982 knifing incident in which he was involved. our 345-pound road manager, rick only had this to say: “you wanted the life of a rock star!”. paul, jim and I real That this was one situation we were going to have to get out of ourselves.

We convened a hasty conference in the hotel lobby. paul suggested contacting our national tour promoter in sao paulo, but we remembered that he was in recife with faith no more, who had just arr For their brazilian tour. we thought about contacting our brazilian record company in rio, but they weren’t home. our ever-diligent american manager was arranging help of numerous forms, but he N new york, and just too far away to get anything moving in time.

And there were 6000 kids in curitiba who just wouldn’t understand.

We knew it was time for action. paul went up to the prs guys and invited them into the bar to discuss it like civilized men over a few brazilian drinks, offering each of them a cigar on his way. Amused prs heavies seemed to like the idea of a few free drinks, even if they knew they would never give us our bus back. when paul winked at jim and I on his way in, we went into action.

I stole off to my room to prepare while jim went into action. creeping carefully through a service duct, he managed to gain a vantage point some three meters above the bus, and dropped carefully The roof. after using his all-purpose swiss army knife (affectionately known as the “skit knife”) to jimmy open the roof hatch, he went through the darkened inside of the bus and remo He inside engine service panel. using some spare electronic parts he found while on an island in the amazon, he wired the entire bus for remote control, not unlike a remote control toy car.

At this point, he asked himself “now how shall I get out of here? !? “

Paul was having difficulties of his own.

“couldn’t you see your way clear to letting us fulfill our contractual obligations in curitiba? think of the kids!”

Through our translator, fabio, the prs man, aldo, said:

no. you americans think you own the world. hah! we’ll burn down our rain forest if we damn well please. we need room for cows!!! we want a mcdonald’s on every… oh, sorry, yes anyway, no. Ed 40% of your concert receipts to give to david bowie,” he said, winking to the local promoter, phillipe.

As paul continuted this elaborate distraction, jim effected an escape from the heavily guarded bus by crawling down into the cargo bay, cutting a hole in the floor with the swiss army knife’s ar Der, slipping into the manhole cover situated under the bus, and walking up to the hotel’s basement from there. jim called up to me in my room and gave the signal. we were now to meet at the bac Rance, with our tech guys. but first, paul would need some help getting away from his unwelcome guests, as things were getting ugly.

“he says he has lost his patience, and that he can think of other ways of extracting payment from you kurt and jim physically,” our trembling interpreter said.

The moment had come. jim began operating the bus from his back entrance vantage point. as the remote-controlled bus lurched towards the parking lot exit, the superstitious security youths fled i Ror. paul was pulling anxiously on his collar as the prs man began describing his collection of world war ii nazi ceremonial knives when a sudden crash split the tableau.

Jim had purchased me the gift of a complete black ninja stealth assassin outfit in aracaju. I had been gearing up and crawling through the air conditioning ducts all this time. as I crashed thro He cheap imitation-styrofoam hung ceiling tiles, skates first, I flashed ninja stars all about me. in the ensuing panic, paul escaped to the pre-arranged bus pick-up point. unfortunately, my ska Ere a poor choice of foot gear for escaping over the broken glass of the table I had landed on. were it not for the confusion and the ninja-star-inflicted-wounds delivered to the bad guys, I wou Ve been set upon while floundering on the glass-strewn carpet. as it happened, however, I leapt through the open door of the careening bus as it departed the city of maringa forever.

If only we had managed to get our equipment in the bus, too…

Every word of this story is true.

Имя трэка CLOAD «Q» альбома Information Retrieved Pt. B — это команда загрузки файла Q в Бейсике TRS-80, персонального компьютера начала 80-ых. Как видно, инди-группа Pinback зачем-то уместила на альбоме игру для давно устаревшего компьютера.

В ранние годы распространения персональной компьютерной техники звук для записи кассет ZX Spectrum вещался даже по телевидению. Встречались и трэки, целиком являющиеся программами, и если это были альбомы на виниле, их нужно было переписать на кассету. Чаще всего этим приемом пользовались коллективы из Великобритании.

К примеру, шестой трэк британских изданий альбома XL1 Пита Шелли содержал пульсации звуков, которые, будучи загруженными в «Спектрум», являли собой рудиментарную графику и тексты песен, воспроизводившиеся синхронно с проигрыванием альбома. Для таких же информационных целей служил трэк Hectic Electric с альбома New Anatomy группы Inner City Unit: программа содержала расписание выступлений, описание коллектива, трэков и т.д.

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


Сингл Camouflage Криса Сиви включал созданную музыкантом ужасненькую игрушку Flying Train. Она была примечательна лишь своими взрывами. Крис также написал невключенную в альбом игру The Biz, являющуюся симулятором успешной музыкальной группы, испытывающей бурный карьерный рост.

Наиболее ироничное послание для ZX Spectrum создала шотландская группа Urusei Yatsura: программа просто выводила сообщение «Славьте сатану». В коде также содержались комментарии «Привет, Ник, Робин у вас?», «Сатанинское Послание №3 от Жреца Иуды», «Что грустней: а) находить это б) писать это».

Так или иначе, но музыканты прошлых лет очень много экспериментировали над своими поклонниками, чего сегодня, к сожалению, наблюдается меньше.

Бесплатные VST анализаторы спектра |

Всем привет, сегодня представляем вашему вниманию небольшой набор из анализаторов спектра для мониторинга звука ваших инструментов и эффектов.

Важнейшим этапом в обработке является анализ сигнала. Анализатор спектра — это прибор как раз позволяющий «визуализировать» звук, и помогающий обнаружить как частотные конфликты так и другие неточности. Каждый раз, когда любой аудио-сигнал поступает в анализатор, программа работает и строит график, который отображает частотную характеристику сигнала, равно как и громкость каждой отдельно взятой частоты.
Но ни в коем случае не стоит забывать про свои уши, ведь можно пойти по ложному пути долго занимаясь разглядыванием графиков. Главное помните, слух — наше все.

SPAN от Voxengo

SPAN высокоточный, не требовательный к ресурсам спектральный анализатор от отечественного программиста Алексея Ванеева. Плагин имеет хорошо продуманный и нереально удобный интерфейс, с возможностью изменения масштаба окна. Спектральный анализатор работает в режиме реального времени и использует алгоритм основанный на быстрых преобразованиях Фурье (алгоритм позволяющий сократить время спектрального анализа). В целом это очень качественный и удобный анализатор с достаточным количеством настроек для отображения данных, и что не мало важно бесплатный.

Скачать можно по ссылке: SPAN

FreqAnalyst от Blue Cat Audio

Blue Cat’s FreqAnalyst это анализатор спектра с высокой степенью разрешения для полного контроля над анализом содержимого вашего аудио сигнала. Его гибко настраиваемый пользовательский интерфейс с функцией «прозрачности» позволяет полностью интегрироваться в вашем аудио приложении, проверить спектр и не закрывая поместить позади. Специально разработанная система определения порога входящего сигнала, поможет вам с легкостью определится с важными частями спектра. Либо вы можете с увеличением масштаба дисплея проверить только интересующую вас часть на графике.

Скачать можно по ссылке: Blue Cat’s Freq Analyst

SSpectrumAnalyzer Free от SIR Audio Tools

SpectrumAnalyzer Free бесплатный многоканальный спектра анализатор с возможностью визуализации сигнала с двух звуковых дорожек. Он показывает соотношение громкости и частоты звука, гармоники, ширину полос, а также преобладающие частоты.
Плагин в реальном времени может произвести анализ двух источников сигнала рядом друг с другом, что будет крайне полезно при настройке эквализации в случае обнаружения конфликтующих частот. Анализатор также включает в себя аналоговое отображение, FFT и позволяет пользователю настроить мониторинг пиков, время задержки эквализации и анализ RMS.

Скачать можно по ссылке: Spectrum Analyzer Free

Sonogram SG-1 от ag-works

Sonogram SG-1 быстрый и подробный спектральный анализ в реальном времени.
Плагин немного отличается от других анализаторов, и является на самом деле сонограммой (она же спектрограмма), но по сути это просто другой тип анализатора спектра. Попробуйте воспользоваться им при анализе ваших последних миксов, например, чтобы проконтролировать очень высокие частоты.

Скачать можно по ссылке: Sonogram SG-1

The Seeker от Himiltungl Labs

Himiltungl Labs The Seeker быстрый и динамический анализатор спектра, с безумным расширением вплоть до 1/192 октав. Двойной график отобразит динамику и амплитуду одновременно, а гибкое время интеграции в пределах 10 — 500 мс отлично подойдет для различных типов материала. Плагин оптимизирован для более низкого использования ресурсов ЦП, имеет возможность изменения размера, и позволяет сделать минимальный пользовательский интерфейс.

Скачать можно по ссылке: The Seeker

#free #analyzer #spectre #бесплатные_программы

Анализатор-визуализатор спектра аудио сигнала на базе Arduino / Хабр

Как вы думаете, что делают девушки, когда собираются вместе? Идут по магазинам, фотографируются, ходят по салонам красоты? Да, так и есть, но так делают далеко не все. В данной статье пойдёт речь о том, как две девушки решили собрать радиоэлектронное устройство своими руками.

Почему именно анализатор-визуализатор спектра?


Ведь программных решений данной задачи довольно много и вариантов аппаратной реализации так же немало. Во-первых, очень хотелось поработать с большим количеством светодиодов (т.к. мы уже собирали led-куб, каждый для себя, но в небольших размерах), во-вторых, применить на практике полученные знания по цифровой обработке сигналов и, в-третьих, в очередной раз попрактиковаться в работе с паяльником.

Разработка устройства


Т.к. брать готовое решение и делать строго по инструкции – это скучно и неинтересно, поэтому мы решили разрабатывать схему сами, лишь немного опираясь на уже созданные устройства.

В качестве дисплея выбрали светодиодную матрицу 8х32. Можно было использоваться готовые led-матрицы 8х8 и собирать из них, но мы решили не отказывать себе в удовольствии посидеть вечерком с паяльником, и поэтому собирали дисплей сами из светодиодов.

Для управления дисплеем мы не изобретали велосипед и использовали схему управления с динамической индикацией. Т.е. выбрали один столбец, зажгли его, остальные столбцы в этот момент погасили, затем выбирали следующий, зажгли его, остальные погасили и т.д. Ввиду того, что человеческий глаз не идеален, мы можем наблюдать статическую картинку на дисплее.
Пойдя по пути наименьшего сопротивления было решено, что все вычисления разумно будет перенести на контроллер Arduino.

Включение той или иной строки в столбце осуществляется с помощью открытия соответствующего ключа. Для уменьшения количества выходных пинов контроллера, выбор столбца происходит через дешифраторы (таким образом, мы можем сократить количество управляющих линий до 5).

В качестве интерфейса подключения к компьютеру (или другому устройству, способному передавать аудио сигнал) был выбран разъём TRS (mini-jack 3.5 mm).

Сборка устройства


Сборку устройства начинаем с того, что делаем макет лицевой панели устройства.

Материалом для лицевой панели был выбран чёрный пластик толщиной 5мм (т.к. диаметр линзы диода также 5мм). По разработанному макету размечаем, вырезаем лицевую панель под необходимый размер и просверливаем отверстия в пластике под светодиоды.

Таким образом получаем готовую лицевую панель, на которой можно уже собирать дисплей.

В качестве светодиодов для матрицы были использованы двухцветные (красный-зелёный) с общим катодом GNL-5019UEUGC. Перед началом сборки матрицы, руководствуясь правилом “лишний контроль не повредит” все светодиоды, а именно 270 шт. (брали с запасом на всякий случай), были проверены на работоспособность (для этого было собрано тестирующее устройство, включающее в себя разъём, резистор 200Ом и источник питания на 5В).

Дальше разгибаем светодиоды следующим образом. Аноды красного и зеленого диодов отгибаем в одну сторону (вправо), катод отгибаем в другую сторону, при этом следим, чтобы катод был ниже чем аноды. И затем под 90° загибаем катод вниз.

Сборку матрицы начинаем с правого нижнего угла, сборку производим по столбцам.

Вспоминая про правило “лишний контроль не повредит”, после одного-двух спаянных столбцов, проверяем работоспособность.

Готовая матрица выглядит следующим образом.

Вид сзади:

По разработанной схеме паяем схему управления строками и столбцами, распаиваем шлейфы и место под Arduino.

Было решено так же выводить не только амплитудно-частотны, но и фазо-частотный спектр, а также выбирать количества отсчетов для отображения (32,16,8,4). Для этого были добавлены 4 переключателя: один на выбор типа спектра, два на выбор количества отсчётов, и один на включение и выключение устройства.

Написание программы


В очередной раз руководствуемся нашим правилом и убеждаемся, что наш дисплей полностью в рабочем состоянии. Для этого пишем простую программу, которая полностью зажигает все светодиоды на дисплее. Естественно, по закону Мёрфи, нескольким светодиодам не хватало тока, и их необходимо было заменить.

Удостоверившись, что всё работает, мы приступили к написанию основного программного кода. Он состоит из трёх частей: инициализация необходимых переменных и считывание данных, получение спектра сигнала при помощи быстрого преобразования Фурье, вывод полученного спектра с необходимым форматированием на дисплей.

Сборка конечного устройства


В конце мы имеем лицевую панель, а под ней куча проводов, которые необходимо чем-то закрыть, да и переключатели нужно на чём-то закрепить. До этого были мысли сделать корпус из остатков пластика, но мы не вполне представляли, как это будет конкретно выглядеть и как это сделать. Решение проблемы пришло довольно неожиданно. Прогулявшись по строительному магазину, мы обнаружили пластиковый цветочный горшок, который на удивление идеально подошёл по размеру.

Дело оставалось за малым, разметить отверстия под разъёмы, кабели и переключатели, а также вырезать две боковые панели из пластика.

В итоге, собрав всё воедино, подключив устройство к компьютеру мы получили следующее:

Амплитудно-частотный спектр (32 отсчёта):

Амплитудно-частотный спектр (16 отсчётов):

Амплитудно-частотный спектр (8 отсчётов):

Амплитудно-частотный спектр (4 отсчёта):

Фазо-частотный спектр:

Вид задней панели:

Видео работы устройства


Для большей наглядности видео снималось в темноте. На видео устройство выводит амплитудно-частотный спектр, а затем на 7 секунде переключаем его в режим фазо-частотного спектра.

Список необходимых элементов


  1. Светодиоды GNL-5019UEUGC – 256 шт. (Для дисплея)
  2. Транзисторы n-p-n KT863A – 8 шт. (Для управления строками)
  3. Транзисторы p-n-p С32740 – 32 шт. (Для управления столбцами)
  4. Резисторы 1кОм – 32 шт. (Для ограничения тока базы p-n-p транзисторов)
  5. Дешифраторы 3/8 IN74AC138 – 4 шт. (Для выбора столбца)
  6. Дешифраторы 2/4 IN74AC139 – 1 шт. (Для каскадирования дешифраторов)
  7. Монтажная плата 5х10см – 2 шт.
  8. Шлейфы
  9. Arduino Pro micro – 1 шт.
  10. Разъём mini-jack 3.5мм – 1 шт.
  11. Переключатель – 4 шт.
  12. Чёрный пластик 720*490*5 мм – 1 лист. (Для лицевой панели)
  13. Горшок цветочный чёрный 550*200*150 мм – 1 шт. (Для корпуса)
Компьютер в роли осциллографа, спектроанализатора, частотомера и генератора

Современная измерительная аппаратура давно срослась с цифровыми и процессорными средствами управления и обработки информации. Стрелочные указатели уже становятся нонсенсом даже в дешевых бытовых приборах. Аналитическое оборудование все чаще подключается к обычным ПК через специальные платы-адаптеры. Таким образом, используются интерфейсы и возможности программ приложений, которые можно модернизировать и наращивать без замены основных измерительных блоков, плюс вычислительная мощь настольного компьютера.

Кроме того, и расширение возможностей обычного компьютера возможно за счет разнообразных программно-аппаратных средств, — специальных плат расширения, содержащих измерительные АЦП (аналого-цифровой преобразователь) и ЦАП (цифро-аналоговый преобразователь). И компьютер очень легко превращается в аналитический прибор, к примеру, — спектроанализатор, осциллограф, частотомер… , как и во многое другое. Подобные средства для модернизации компьютеров выпускаются многими фирмами. Однако цена и узконаправленная специфика не делают это оборудование распространенным в наших условиях.

Но зачем далеко ходить? Оказывается, простой ПК в своей конструкции уже содержит средства, которые с некоторыми ограничениями способны превратить его в тот же осциллограф, спектроанализатор, частотомер или генератор импульсов. Согласитесь, уже немало. К тому же делаются все эти превращения только с помощью специальных программ, которые к тому же совершенно бесплатны и каждый желающий может их скачать в Интернете.

Вы, наверное, зададитесь логичным вопросом — как же в измерениях можно обойтись без АЦП и ЦАП? Никак нельзя. Но ведь и то и другое присутствует почти в каждом компьютере, правда, называется по другому — звуковая карта. А чем не АЦП/ЦАП, скажите, пожалуйста? Это уже давно поняли те, кто написал для нее массу программ, не имеющих никакого отношения к воспроизведению музыки. Ведь обычная звуковая плата ПК способна воспринимать и преобразовывать сигнал сложной формы в пределах звуковой частоты и амплитудой до 2В в цифровую форму со входа LINE-IN или же с микрофона. Возможно и обратное преобразование, — на выход LINE-OUT (Speakers). Таким образом, вы можете работать с любым сигналом до 20 кГц, а то и выше, в зависимости от звуковой платы. Максимальный предел уровня входного напряжения 0,5-2 В тоже не составляет проблемы, — примитивный делитель напряжения на резисторах собирается и калибруется за 15 минут. Вот на таких-то нехитрых принципах и строятся программное обеспечение: осциллографы, осциллоскопы, спектроанализаторы, частотомеры и, наконец, генераторы импульсов всевозможной формы. Такие программы эмулируют на экране компьютера работу привычных для нас приборов, естественно со своей спецификой и в пределах частотного диапазона вашей звуковой платы.

Как это работает? Для пользователя все выглядит очень просто. Запускаем программу, в большинстве случаев такое ПО не нужно даже инсталлировать. На экране монитора появляется изображение осциллографа: с характерным для этих приборов экраном с координатной сеткой, тут же и панель управления с кнопками, движками и регуляторами, тоже часто копирующими вид и форму таковых с настоящих — аппаратных осциллографов. Кроме того, в программных осциллографах могут присутствовать дополнительные возможности, как, например, возможность сохранения исследуемого спектра в памяти, плавное и автоматическое масштабирование изображения сигнала и т.д. Но, конечно же, есть и свои недостатки.

Как подключиться к звуковой карте? Здесь нет ничего сложного — к гнезду LINE-IN, с помощью соответствующего штекера. Типичная звуковая плата имеет на панельке всего три гнезда: LINE-IN, MIC, LINE-OUT (Speakers), соответственно линейный вход, микрофон, выход для колонок или наушников. Конструкция всех гнезд одинакова, соответственно и штекеры для всех идут одни и те же. Программа осциллограф будет работать и отображать спектр и в том случае если снимается звуковой сигнал с помощью микрофона, подключенного к своему входу. Более того, большинство программных осциллографов, спектроанализаторов и частотомеров нормально функционируют, если в это же время на выход звуковой платы LINE-OUT выводится какой-то другой сигнал с помощью другой программы, пусть даже музыка. Таким образом, на одном и том же компьютере можно задавать сигнал, скажем с помощью программы генератора, и тут же его контролировать осциллографом или анализатором спектра.

При подключении сигнала к звуковой плате следует соблюдать некоторые предосторожности, не допуская превышения амплитуды выше 2 В, что чревато последствиями, такими как выходом устройства из строя. Хотя для корректных измерений уровень сигнала должен быть гораздо ниже от максимально допустимого значения, что так же определяется типом звуковой карты. Например,  при использовании популярной недорогой платы на чипе Yamaha 724 нормально воспринимается сигнал с амплитудой не выше 0,5 В, при превышении этого значения пики сигнала на осциллографе ПК выглядят обрезанными (рис.1). Поэтому для согласования подаваемого сигнала со входом звуковой карты потребуется собрать простой делитель напряжения (рис.2).

Анализ качества музыкального материала с использованием программных средств

Copyright © 2017, Taras Kovrijenko

Полное или частичное копирование текста допускается только с письменного разрешения автора.

Пролог

Хоть интернет полнится различного рода инструкциями по проверке честности lossless аудио, проверке на апконверт и т. п., я решил написать на этот счет свою инструкцию, подойдя к рассмотрению вопроса с должной основательностью и расстановкой.

Итак, перейдем непосредственно к делу.

Что будем мерить

Сперва хочу предупредить: невозможно, полагаясь лишь на программные средства (анализаторы и т.п.), с абсолютной уверенностью судить о превосходстве качества одной версии трека над другой. Имеются ввиду, например, различные раздачи на торренте, отличающиеся как источником, так и способом, которым они были закодированы. Ни одна программа не даст Вам полного понятия о звучании трека.

О чем же в данном случае можно судить? Во-первых — о частотном диапазоне анализируемого сигнала (это единственное, что можно определить точно), о его спектральном составе, ну и, как следствие (уже с той или иной вероятностью):

1. Если это lossless трек: был ли он получен из lossless источника, или же ранее был закодирован с использованием одного из lossy алгоритмов. Имеются ввиду алгоритмы, использующие психоакустическое сжатие. Сжатие с динамическим понижением разрядности (lossy WavPack, lossyWAV) скорей всего выявить не удастся, возможно, только на слух, по фоновым шумам.

2. Если это lossy: соответствует ли материал текущему своему виду, т.е., опять же, был ли источником кодирования lossless сигнал, или это апконверт. Апконвертом является любое преобразование с повышением битрейта. Например, перекодирование MP3 128 кбит/с в 320 кбит/с. Однако, осознанное перекодирование качественного AAC, OGG или MPC 200-256 кбит/с в MP3 320 кбит/с (для лучшей совместимости с устройствами воспроизведения) — случай довольно спорный, и при отсутствии других исходников даже не осуждается. Но, конечно же, при создании раздачи подобного материала, источник надо обязательно указывать.

Кроме того, для lossy (и в особенности, для LAME MP3) можно с той или иной степенью достоверности определить параметры кодирования. А определив например такой параметр, как частота срез НЧ фильтра, и сравнив его с актуальным частотным диапазоном записи, можно в некоторых случаях выявить тот самый апконверт.

Что будем использовать

1. foobar2000 — для декодирования, воспроизведения и просмотра технических характеристик музыкальных файлов. Дополнения к foobar2000: fooCDTect (оболочка к auCDTect — проверка lossless на предмет апконверта), AuSpec (удобный просмотр спектрограммы нажатием одной кнопки), MP3 Packer — просмотр специфических параметров MP3.

Примечание: дабы не устанавливать дополнительно горы декодеров и дополнений, рекомендую сразу скачать мою сборку. Альтернативы foobar2000 и дополнениям не советую, т.к. по возможностям они значительно уступают.

2. EncSpot Professional — с его помощью мы будем просматривать технические характеристики MP3 файлов.

3. Adobe Audition 2 — для просмотра спектрограмм с удобным масштабированием.

Собственно, сам процесс

Lossy

И так, возьмем в качестве примера закодированный мной Pink Floyd — Time (Pink Floyd — The Dark Side Of The Moon (AAD, Capitol CDP 7 46001 2)). Загрузим его в foobar2000 и поставим на воспроизведение:

foobar2000 playback

Вверху мы видим примерную форму огибающей громкости (которая совмещена с полосой прокрутки), над ней VU Meter (аналог пикметра, но с некоторым усреднением по времени), внизу расположены остальные анализаторы:

Осциллограмма — волновая форма проигрываемого в данный момент отрезка записи.

Спектральная диаграмма (Spectrum Analyser), показывающая распределение мощности среди спектральных составляющих в данный момент времени,
пикметр, показывающий текущий уровень семпла (точнее, модуль его отклонения от нулевого положения)

Спектрограмма — аналог спектральной диаграммы, но с третей осью (время). Т.е., если мысленно выстроить спектральные диаграммы одну за одной, и глянуть на них сверху, получим спектрограмму («высота столбцов» задается яркостью цвета). Проще говоря, по горизонтали у нас время, по вертикали — линейно частота от 0 до 22 кГц, яркость — мощность спектральной составляющей.

Что мы сейчас видим на анализаторах:

— довольно высокий уровень записи (мы находимся на относительно громком участке) показывает нам пикметр
-как видно из огибающей громкости, динамический диапазон (диапазон, в котором меняется громкость фрагментов) трека довольно велик — это хорошо (для более-менее качественного оборудования).
— судя по спектральной диаграмме: наличие спектральных составляющих примерно до 20 кГц включительно, высокий уровень наиболее слышимого диапазона ВЧ (~11-16 кГц), что обычно говорит о значительной «звонкости» материала (это конечно же зависит от качества самой студийной записи и её (ре)мастеринга).
— спектрограмма подтверждает вышесказанное, но для более тщательного анализа спектра надо воспользоваться дополнительными утилитами

Теперь посмотрим на вкладку Info (справа). foobar2000 говорит нам о том, что запись имеет два канала, частоту дискретизации 44100 Гц и битрейт потока 320 кбит/с (реальный битрейт файла может немного отличаться, здесь он — 319 кбит/с). Насчет частоты: запомните, что весь музыкальный материал, выпускаемый на Audio CD, имеет частоту дискретизации 44.1 кГц, а потому музыка, имеющая семплрейт 48 кГц — это весьма подозрительно (т.к. неизвестно, каким алгоритмом и с каким качеством мог быть выполнен ресемплинг).
Далее написано, что трек был закодирован релизной версией кодера LAME 3.99 (на момент написания статьи это последняя версия). Более точное указание версии (например, 3.99.5) стандартом LAME Tag, к сожалению, не предусмотрено, однако есть один способ: надо открыть MP3 файл в текстовом редакторе и в поиске прописать «LAME» — у последней версии LAME (возможно, и в других недавних версиях) в закодированных данных периодически прописана версия — «LAME3.99.5».

А сейчас выделим трек и нажмем кнопочку RG (вверху, на панели плеера). После анализа нажмем кнопку Update File Tags. Теперь у нас появится дополнительная графа ReplayGain, где нас интересует значение Track Peak — уровень пикового семпла записи. В данном случае оно составляет 1.018077, что для MP3 (и lossy в целом) вполне нормально и не требует каких-либо действий направленных ан предотвращение клиппинга. Вообще, значения до 1.10 включительно (перегрузка до +1 dBFS) можно считать допустимыми. Подробнее о ReplayGain и громкости читайте в моей статье О понятии громкости в цифровом представлении звука и о методах её повышения

Постепенно переходим к тяжелой артиллерии. Открываем папку с треком в программе EncSpot и в контекстном меню файла жмем Lame Header. Видим следующее:

EncSpot: LAME Tag

Полное описание информации отображаемой EncSpot можно почитать в отдельной статье. Здесь мы видим, опять же, что использовался кодер LAME 3.99, был применен НЧ фильтр на частоте 20.5 кГц. Качество алгоритма кодирования использовалось максимальное (Quality кратно 10), источник имел частоту дискретизации 44.1 кГц. Возвращаясь к теме частоты семплирования — очень важно, чтобы частота источника (точнее, частота потока поступившего на вход кодера) и MP3 файла совпадала. Если это не так, то был использован встроенный в LAME ресемплер, а он качеством не отличается.

Отдельно хочу сказать о параметрах Join Stereo mode и Safe Joint — для музыки сочетание этих параметров наиболее предпочтительно (JS без режима Safe допустимо только при низких битрейтах).

Идем дальше, открываем в контекстном меню файла Details.

EncSpot: Details

Все фреймы конечно же имеют битрейт 320 кбит/с.

EncSpot: Details

Здесь видно, что запись имеет широкую стереопанораму, различия между каналами довольно велики, а потому большинство фреймов закодированы в режиме Simple Stereo. Большинство блоков имеют тип Long, что говорит об относительно простой форме сигнала (малое количество транзиентов).

EncSpot: Details

Тут стоит обратить внимание на резервуар бит — для MP3 CBR 320 он должен активно использоваться. Также хорошо, если стоят отметки Scalefac_scale и Scfsi.

А теперь можно перейти к более детальному анализу спектра. Жмем правой кнопкой на треке->Run Srviice->Open As… и открываем его через Adobe Audition 2:

Adobe Audition

Развернем окно на весь экран и уменьшим масштаб колесиком мышки:

Adobe Audition: Spectrum zoomed

Перед Вами просто таки характернейший для MP3 спектр: частотный диапазон составляет ~20 кГц, при этом спектральная плотность, начиная с 16 кГц резко падает. Это обусловлено особенностями психоакустической модели используемой в MP3 — она просто таки нещадно вырезает большинство слабых гармоник с частотой выше 16 кГц. Таким образом MP3 (даже с высоким битрейтом) очень легко узнать по спектру: если на записи есть фоновые шумы, выше 16 кГц они вырезаются, и на этом уровне образуется такая себе полка. Хотя, при достаточно высоком уровне ВЧ (обычно в электронной музыке), они могут в большинстве своём и сохранится.

Давайте рассмотрим спектры еще для нескольких кодеков-битрейтов.

LAME 3.99.5, VBR V2:

Спектрограмма LAME 3.99.5, VBR V2

Здесь видно еще более жесткое обращение с ВЧ (хотя на слух это обычно неотличимо).

LAME 3.99.5, CBR 128 kbps (-q 0):

Спектрограмма LAME 3.99.5, CBR 128 kbps (-q 0)

При 128 кбит/с частоты выше 16 кГц практически всегда отсутствуют, а НЧ фильтр установлен на 17000 Гц (ширина фильтра по умолчанию — 5%, так что спад начинается с 16.15 кГц). Вдобавок здесь спектр явно прорежен уже даже в районе 8 кГц, а то и ниже, в итоге спектрограмма начинает чем-то походить на решето.

Fraunhofer MP3 Encoder, CBR 320 kbps (highest, join stereo):

Спектрограмма Fraunhofer MP3 Encoder, CBR 320 kbps (highest, join stereo)

Как видите, битрейт 320, а по спектру скорее похож на VBR V2 (~200 кбит/с). Кстати, это тот случай, когда результаты для спектрограммы совпадают с результатами прослушивания — качество кодера FhG заметно хуже LAME (за исключением CBR 128 кбит/с — здесь результаты прослушивания весьма спорные).

Как я уже говорил, сравнивая значение Lowpass Filter из EncSpot с фактической шириной спектра материала, можно судить о «честности» данного рипа (не апконверт). Тут же приведу соответствие популярных пресетов и стандартных частот среза для последней версии LAME:

CBR 320 — 20500 Гц
CBR 256 — 19700 Гц
CBR 192 — 18600 Гц
CBR 160 — 17500 Гц
CBR 128 — 17000 Гц
VBR V0 — 22100 Гц
VBR V2 — 18500 Гц

Если ширина спектрального диапазона не соответствует данному значению, это может говорить об апконверте. Однако, здесь довольно много «но» — ширина зависит от версии кодера, настроек (есть настройка, меняющая значение предельной частоты), самого материала в конце концов.

И последний штрих — конечно же MP3 Packer. Эта программка покажет нам, насколько эффективно сжат MP3 файл (чисто математически). Кликаем по треку правой кнопкой, выбираем Run service->MP3 Info. Видим окно:

MP3 Packer Info

Тут нас прежде всего интересует пункт Minimum bitrate possible — он показывает нам, какого битрейта можно достичь при перепаковке фреймов данного CBR файла в VBR фреймы (без потерь качества). Сравнив это значение с актуальным битрейтом, можно судить об эффективности сжатия. Это расхождение обычно связано с нерациональным использованием резервуара бит старыми версиями LAME. Приемлемыми можно считать отклонения до 10 кбит/с включительно (310 кбит/с для актуальных 320 кбит/с), если расхождения больше — это косвенно может говорить о низком качестве кодирования. Также обратите внимание на значение Largest frame uses (kbps) — оно указывает пиковый битрейт для трека с учетом битов из резервуара. Большое значение (>400) говорит об эффективном использовании резервуара и сложности отдельных фрагментов трека.

Теперь, что касается современных кодеров (AAC, OGG Vorbis, Musepack). Они обладают более гибкими алгоритмами и не имеют такой статичной полки на 16 кГц, как MP3 (она у них динамически перемещается, в зависимости от целевого битрейта/качества), а на высоких битрейтах (>300 кбит/с) могут быть на глаз (не говоря уже о «на слух») неотличимы от lossless (если конечно не сравнивать непосредственно со спектром источника). Так что здесь ситуация посложнее, особенно если взять такой продвинутый формат как Musepack (MPC) — он работает по несколько другому принципу, чем MP3, AAC и Vorbis. Это сказывается как на спектральном отображении, так и на звучании. Например, тот же фрагмент, MPC q 6 (~210 кбит/с):

Спектрограмма Musepack q 6 (~210 кбит/с)

Преимущество перед LAME MP3 VBR V2 — очевидное, и, к тому же, ощутимое на слух. Сохранены практически все составляющие до 18 кГц (этого диапазона обычно бывает достаточно даже людей с «идеальным» слухом), а пики достигают и 20. К тому же этот кодер практически не страдает от пре-эхо — главной проблемы психоакустического lossy кодирования.

А теперь взглянем на спектры AAC и OGG Vorbis.

QuickTime AAC True VBR 127 (~350 кбит/с):

Спектрограмма QuickTime AAC True VBR 127 (~350 кбит/с)

OGG Vorbis -q9 (~350 кбит/с):

Спектрограмма OGG Vorbis -q9 (~350 кбит/с)

А теперь, для сравнения, спектр оригинала:

Спектрограмма оригинала

Как видите, оба кодека охраняют весь частотный диапазон, а QAAC даже практически не урезает спектр фоновых шумов. Согласитесь: довольно трудно догадаться, что спектр QAAC принадлежит lossy источнику. А если бы на записи еще не было фоновых шумов — это не смог сделать никто (даже специальная программа). Впрочем, и на слух этот метод кодирования остается (по крайней мере, для меня) лучшим.

Касаемо определения параметров кодирования AAC, OGG и MPC — здесь инструментарий довольно скромный. Практически всю доступную информацию можно найти на вкладке Properties в foobar2000.

Lossless

О спектрах мы уже говорили, с характерными особенностями спектра MP3 (и других кодеров) Вы уже знакомы, а потому, обнаружив их в спектре lossless трека, уже сможете сделать соответствующие выводы. Но, что касается спектра апконвертов — один очень важный момент. Большинство lossless кодеров не принимают на вход PCM с плавающей точкой, а если источником является lossy, в нем с большой вероятностью присутствуют фрагменты с уровнем выходящим за 0 dBFS. После преобразования в фиксированную точку, так как «умникам», клепающим lossless из MP3, лимитирование сделать мозгов не хватает, мы получаем срезы, а прямоугольные срезы содержат полный спектр частот. В итоге на спектрограмме полученного трека мы будем видеть вертикальные полосы, простирающиеся аж до 22.05 кГц (при чем сама запись обычно уложена в диапазон до 20 кГц). Вот пример такого безобразия:

Спектрограмма оригинала

Завидев это дело, можете смело расстреливать автора раздачи из реактивного гранатомета.

Ну а теперь можно смело перейти к автоматическому анализу.

Здесь всё просто: выделяете lossless треки, нажимаете третью с конца кнопку на панели моего foobar2000 и через несколько минут видите что-нибудь эдакое:

fooCDTect

Я специально выделил кроме lossless (TAK) еще и закодированные ранее (для получения спектрограмм выше) lossy треки — чтобы показать, насколько хорошо программа обнаруживает lossy кодирование. «95% MPEG» можно интерпретировать как «скорее всего, имело место lossy кодирование». «CDDA 100%» — означает, что материал с очень большой вероятностью (конечно не 100 %, но 99 уж точно) не был подвергнут lossy кодированию. Обмануть эту программу удается только Musepack на высоком битрейте (и то редко) или lossyWAV.

Честно говоря, программа при анализе фактически руководствуется теми же критериями, что и мы при рассмотрении спектрограммы — поиск резкого спада плотности спектра, той самой «полки» — а потому, её выводы практически всегда совпадают с заключением человека с наметанным глазом, сделанным по спектрограмме.

Целостность

Также очень важно проверять треки на наличие ошибок. Для этого выделите их в foobar2000, нажмите на выделенном правую кнопку мыши и выберите из раскрывшегося списка Utils->Verify Integrity. При наличии ошибок в файлах формата MP3 foobar2000 может их исправить. Если Вы увидите ошибку вроде «Reported length is inaccurate…», выделите треки для которых отобразилась данная ошибка, нажмите правую кнопку и выберите Utils->Fix VBR MP3 Header, после обработки проверьте трек еще раз, ошибка должна отсутствовать. Если при проверке Вы наблюдаете ошибку вида «MPEG Stream error…», её можно исправить с помощью опции Utils->Rebuild MP3 Stream. После выполнения операции исправления ошибки не забывайте повторно проверять треки.

Для других lossy форматов, а также lossless исправить ошибки в foobar2000 нельзя, но проверить всё равно стоит.

Das Ende

В общем, по теме — это всё, чем я хотел с Вами поделиться. Если есть вопросы, обращайтесь, пишите — помогу разобраться.

[Обсудить на форуме]


Ссылки по теме


Информация от спонсора

Газгольдер.ру: автономные системы снабжения сжиженным газом, автономная газификация. Общепризнанный лидер в отрасли, стоявший в России у истоков её основания. Вам предоставляется широчайший спектр услуг по газификации, в т.ч. гарантийное и сервисное обслуживание. Компания работает как с частными, так и с юридическими лицами. Стоимость автономной газификации Вы можете узнать на сайте компании (по ссылке выше).

Анализатор спектра

| Academo.org — бесплатное, интерактивное, обучение.


Загрузить свой собственный

Приведенный выше анализатор спектра дает нам график всех частот, которые присутствуют в записи звука в данный момент времени. Результирующий график известен как спектрограмма. Более темные области — это области, где частоты имеют очень низкую интенсивность, а оранжевый и желтый области представляют частоты, которые имеют высокую интенсивность звука. Вы можете переключаться между линейной или логарифмической шкалой частот, поставив галочку или сняв галочку с флажка логарифмической частоты.

Во многих отношениях эта демонстрация похожа на демонстрацию Виртуального осциллографа, но есть важное и очень важное отличие. В демонстрационном примере осциллографа график показывает смещение звукового сигнала в зависимости от времени, которое называется сигналом во временной области. Эта демонстрация показывает сигнал, представленный другим способом: частотная область. Частотный спектр генерируется путем применения преобразования Фурье к сигналу во временной области.

Приведенная выше демонстрация позволяет вам выбрать несколько предустановленных аудиофайлов, таких как щелчки китов / дельфинов, полицейские сирены, песни птиц, свист, музыкальные инструменты и даже старый модем 56k модемной связи.Каждый из них имеет уникальные и интересные модели для вас, чтобы наблюдать. Кроме того, вы можете загрузить свои собственные аудио файлы. Для просмотра спектрограммы выберите вход звука, затем нажмите кнопку воспроизведения, и на экране появится график, двигаясь справа налево. Вы можете остановить движение, нажав кнопку паузы на аудиоплеере.

В частности, запись скрипки четко демонстрирует богатый гармонический контент для каждой сыгранной ноты (это появляется на спектрограмме в виде нескольких более высоких частот, генерируемых для каждой основной частоты).Это в отличие от свистящей записи, которая имеет очень сильный фундаментальный компонент, и имеет только одну дополнительную гармонику, указывающую, что человеческий свист очень близок к чистой синусоиде.

Вот несколько ссылок на сайты с интересными звуковыми файлами, с помощью которых вы можете создавать свои собственные спектрограммы.

Обратите внимание, что мы знаем о проблеме с браузером Safari, которая не позволяет спектрограмме появляться. В дополнение к этому, Internet Explorer не пока есть функции для поддержки демо.Поэтому для достижения наилучших результатов используйте Chrome или Firefox. Спасибо.


Кредиты
Пожалуйста, включите JavaScript для просмотра комментариев на основе Disqus. ,

Понимание Спектрограмм

Спектрограмма является одним из наиболее ярких и информативных аудио инструментов в нашем распоряжении. В этой статье мы рассмотрим, как работает спектрограмма, как ее использовать для проверки аудиофайла и как точно настроить тип и количество информации, представленной в спектрограмме RX.

Что такое спектрограмма?

Спектрограмма — это детальное представление аудио, способное представлять время, частоту и амплитуду на одном графике.Спектрограмма может визуально выявить широкополосный, электрический или прерывистый шум в звуке и может позволить вам легко локализовать эти проблемы со звуком. Из-за высокого уровня детализации спектрограмма особенно полезна в постпроизводстве, поэтому неудивительно, что вы найдете ее в таких инструментах, как RX 7 и Insight 2.

The Spectrogram view in RX 7

Вид спектрограммы в RX 7

Спектрограмма

против формы волны

В звуковом программном обеспечении мы привыкли видеть форму волны, которая отображает изменения амплитуды сигнала с течением времени.Спектрограмма, однако, отображает изменения частот сигнала с течением времени. Амплитуда затем представляется в третьем измерении с переменной яркостью или цветом.

Давайте рассмотрим аудиофайл в традиционном виде сигнала и спектрограмму. Во-первых, вот синусоидальная волна, движущаяся вверх по высоте от 60 Гц до 12 кГц, как видно на традиционной форме волны:

Pitching sine wave shown as a traditional waveform

Синусоидальная волна, показанная как традиционная форма волны

Вы заметите, что форма волны показывает амплитуду во времени, но мы не можем реально увидеть, что происходит на отдельных частотах.Мы можем видеть, что синусоида находится на постоянном уровне на протяжении всего файла, но мы не можем много рассказать о том, как высота или частота меняются с течением времени.

Здесь тот же аудиофайл с использованием спектрограммы.

Pitching sine wave shown as a traditional waveform

В представлении спектрограммы вертикальная ось отображает частоту в герцах, горизонтальная ось представляет время (точно так же как отображение формы сигнала), а амплитуда представлена ​​яркостью.

Черный фон — это тишина, а ярко-оранжевая кривая — это синусоида, движущаяся вверх по высоте. Это позволяет нам просматривать диапазон частот (самые низкие в нижней части дисплея, самые высокие в верхней части) и насколько громкими являются события на разных частотах. Громкие события будут казаться яркими, а тихие события — темными.

Теперь давайте рассмотрим более сложный звуковой пример: человеческий голос.

Вот короткая произнесенная фраза, которая видна на дисплее формы сигнала. Здесь мы видим амплитуду произнесенных слов с течением времени.

Dialogue shown as a traditional waveform

Диалог показан как традиционный сигнал

Если мы перейдем к представлению спектрограммы, мы увидим много вещей, которые мы не можем видеть в представлении формы волны.

Dialogue shown in a spectrogram

Диалог показан на спектрограмме

Вот почему наличие подробного отображения спектрограммы так важно при редактировании аудио: оно помогает четко отображать проблемы, которые вы, возможно, захотите устранить.

Ключ к успешному восстановлению звука лежит в вашей способности правильно анализировать ситуацию — так же, как врач, распознающий симптомы, указывающие на определенную болезнь.

Постоянная тренировка слуха по распознаванию шумов и звуковых событий, которые необходимо исправить, может быть пожизненной задачей. К счастью, как объяснялось ранее, технология спектрограммы облегчает эту задачу, представляя эти звуковые события визуально.

Спектрограмма / Форма волны отображается в RX

RX оснащен расширенным дисплеем спектрограмм, который способен показывать большее временное и частотное разрешение, чем другие спектрограммы, позволяя вам видеть беспрецедентный уровень детализации при работе со звуком.

Обзор формы волны всего аудиофайла будет отображаться над основным дисплеем спектрограммы / формы волны в Обзоре формы волны. В Обзоре формы волны всегда отображается весь аудиофайл, а также отображаются все выбранные параметры, сделанные на главном экране.

Можно также просмотреть традиционную форму волны или их комбинацию, отрегулировав ползунок «Непрозрачность формы волны / спектрограммы» влево чуть ниже спектрограммы.

Waveform/Spectrogram Opacity slider

Ползунок непрозрачности осциллограммы / спектрограммы

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

Как настроить дисплей

Не все спектрограммы созданы равными. Алгоритм, известный как «быстрое преобразование Фурье», или сокращенно FFT, используется для вычисления этого визуального отображения. Многие плагины с дисплеем спектрограммы позволяют регулировать размер БПФ, но что это означает для восстановления и восстановления звука? Изменение размера FFT изменит алгоритм вычисления спектрограммы, в результате чего он будет выглядеть по-другому.В зависимости от типа аудио, с которым вы работаете и визуализируете, изменение размера FFT может помочь.

Как правило, более высокие размеры FFT дают вам больше деталей в частотах, называемых частотным разрешением, в то время как более низкие размеры FFT дают вам больше деталей во времени, называемых временным разрешением.

Если вы пытаетесь идентифицировать взрывной шум, шум при работе с микрофоном или другую грязную низкочастотную информацию, более высокий размер БПФ в настройках спектрограммы поможет. Если вы пытаетесь идентифицировать высокочастотное событие или работаете с переходным сигналом (например, перкуссия или ударная петля), выберите меньший размер БПФ.

Использование спектрограммы для решения проблем со звуком

Существует ряд различных проблем со звуком, которые могут помочь вам исправить инструменты RX. Определение типа проблемы может помочь определить наиболее подходящий инструмент и метод ее решения.

Мы собрали советы, которые помогут вам определить семь распространенных типов проблем со звуком в спектрограмме, а также модули в RX, чтобы быстро и эффективно устранить их. Проблемы со звуком, которые мы рассмотрим:

  • гул
  • Buzz
  • Hiss и другие широкополосные шумы
  • Щелчки, треск и другие короткие импульсные шумы
  • Отсечение или искажение
  • Прерывистые шумы
  • Пробелы и выпадения

гул

Гул, как правило, является результатом электрических помех где-то в цепи записанного сигнала.Обычно он звучит как низкочастотный звук с частотой 50 или 60 Гц, в зависимости от того, записали ли вы звук в Северной Америке или Европе.

Hum shown on a spectrogram

гул, показанный на спектрограмме

Вы увидите гул, увеличивая низкие частоты. Он будет выглядеть как серия горизонтальных линий, обычно с яркой линией на частоте 50 или 60 Гц и несколькими более светлыми линиями на гармониках.

Для удаления гула используйте модуль RX De-hum.Это работает лучше всего, когда частоты гула не перекрываются никакими полезными переходными сигналами.

Buzz

В некоторых случаях электрический шум распространяется до более высоких частот и проявляется как шум. Похоже, что они могут также исходить от люминесцентных светильников, двигателей и некоторых микрофонов на камере.

Buzz shown on a spectrogram

Гудение показано на спектрограмме

Вы найдете шум на высоких частотах, где он будет выглядеть как тонкая горизонтальная линия.

Для устранения шума при частотах выше 400 Гц используйте инструмент Spectral De-noise. Для низкочастотного шума, похожего на гул, инструмент De-hum более эффективен.

Hiss и другие широкополосные шумы

В отличие от гула и шума, широкополосный шум не концентрируется на определенных частотах и ​​может быть обнаружен по всему частотному спектру. Шипение ленты и шум от вентиляторов и систем отопления, вентиляции и кондиционирования воздуха являются прекрасными примерами.

Hiss shown on a spectrogram

Hiss показано на спектрограмме

На дисплее спектрограммы широкополосный шум обычно появляется в виде спеклов, окружающих программный материал, как показано в примере.

Используйте инструмент Spectral De-noise для удаления этих типов широкополосного шума.

Щелчки, треск и другие короткие импульсные шумы

Щелчки и щелчки часто встречаются на записях с винила, шеллака и других рифленых носителей. Они также могут быть вызваны цифровыми ошибками, в том числе записью в DAW со слишком низким значением буфера или неправильным редактированием звука, которое пропустило пересечение нуля. Даже ротовые шумы, такие как щелчки языка и губы, попадают в эту категорию.

Clicks and pops shown on a spectrogram

Клики и хлопки показаны на спектрограмме

Вы увидите, что эти короткие импульсивные шумы появляются на спектрограмме в виде вертикальных линий.Чем громче щелчок или щелчок, тем ярче будет выглядеть линия. В этом примере показаны щелчки и щелчки, появляющиеся в аудиозаписи, перенесенной с винила.

Для обычных щелчков и щелчков используйте модуль De-click, чтобы распознать, изолировать, уменьшить и удалить их. Если вы имеете дело с щелчками по рту от говорящего, модуль «Устранение изо рта» — это то, что вам нужно.

Отсечение или искажение

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

Clipped waveform

Обрезанный сигнал

Чтобы идентифицировать обрезанный звук, вам нужно работать с отображением формы волны, а не спектрограммой. Отсечение отображается в виде «квадратичных» участков формы сигнала.

Увеличьте осциллограмму, чтобы увидеть, где волна была усечена из-за отсечения.

Truncated peaks of the clipped waveform

Усеченные пики усеченной формы волны

Обратите внимание, что иногда звук, ограниченный кирпичной стеной, также будет отображаться «возведенным в квадрат», но это не обязательно означает, что он будет звучать так же сильно, как и усеченные осциллограммы, которые были усечены.Вы можете увеличить масштаб, чтобы увидеть, действительно ли обрезаны вершины отдельных сигналов.

Чтобы исправить отсечение, используйте инструмент De-clip, который может интеллектуально перерисовать форму волны там, где она могла бы быть, если бы сигнал не был обрезан.

Прерывистые шумы

Прерывистые шумы отличаются от шипения и гула — они могут появляться нечасто и быть непостоянными по высоте или длительности. Общие примеры включают кашель, чихание, шаги, автомобильные гудки, звонки сотовых телефонов, птиц и сирен.

Эти шумы могут проявляться по-разному. Вот пара примеров:

Ringing shown on a spectrogram

Звон на спектрограмме

A cough shown on a spectrogram

Кашель, показанный на спектрограмме

Используйте инструмент Spectral Repair, чтобы изолировать эти прерывистые звуки, проанализировать звук вокруг них, а также ослабить или заменить их.

пробелов и выбывших

Иногда в записи могут быть короткие фрагменты отсутствующего или поврежденного звука.Это так называемые пропуски или пропуски.

A dropout shown on a spectrogram

Выпадение показано на спектрограмме

Они обычно очень очевидны как для глаза, так и для уха, и проявляются в виде пробела на дисплее спектрограммы.

Используйте инструменты Spectral Repair и Ambience Match для замены отсутствующих звуковых элементов и создания согласованной звуковой дорожки.

Заключение

Спектрограмма была основным в RX с первой версии, и нетрудно понять, почему.Предлагая хирургически точную визуализацию звука, над которым вы работаете, таким образом, чтобы вы могли лучше понять аудио в поле зрения, теперь вы можете идентифицировать области, требующие коррекции, с использованием нескольких чувств. И при использовании вместе с ведущими в отрасли модулями восстановления звука в RX, это может помочь вам быстро выполнить ваш следующий проект после производства. Приятного редактирования!

,Алгоритм

— спектрограмма звука — переполнение стека

Переполнение стека
  1. Товары
  2. Клиенты
  3. Случаи использования
  1. Переполнение стека Публичные вопросы и ответы
  2. Команды Частные вопросы и ответы для вашей команды
  3. предприятие Частные вопросы и ответы для вашего предприятия
  4. работы Программирование и связанные с ним технические возможности карьерного роста
  5. Талант Нанимать технический талант
  6. реклама Связаться с разработчиками по всему миру

Загрузка…

  1. Авторизоваться зарегистрироваться
  2. текущее сообщество

.
звуковая спектрограмма — это … Что такое звуковая спектрограмма?
  • звуковая спектрограмма — существительное: запись, произведенная звуковым спектрографом со временем, показанным по горизонтальной оси, частотой, показанной по вертикальной оси, и интенсивностью, обозначенной различными оттенками темноты рисунка * * * графическое представление, произведенное …… Полезный словарь английского языка

  • Звуковая спектрограмма — графическое представление, произведенное звуковым спектрографом, частоты, интенсивности, продолжительности и изменения во времени резонанса звука или серии звуков.* * *… Универсалиум

  • звуковой спектрограф — н. электронный инструмент, который графически отображает звуковую волну или голосовые отпечатки на мониторе или записывает их (звуковую спектрограмму) на миллиметровой бумаге … Словарь английского языка

  • спектрограмма — / spek treuh грамм /, n. 1. представление или фотография спектра. 2. Смотрите звуковую спектрограмму. [1890 95; SPECTRO + GRAM1] * * *… Универсалум

  • Спектрограмма — Спектрограмма является результатом вычисления частотного спектра оконных кадров составного сигнала.Это трехмерный график зависимости энергии частотного содержимого сигнала от времени. Спектрограммы используются для…… Википедии

  • спектрограмма — существительное / ˈspɛktrəˌɡræm / a) визуальное представление спектра звука, изменяющегося во времени b) визуальное представление спектра излучения небесных тел См. Также: спектр, спектрограф… Викисловарь

  • spec | tro | gram — «SPEHK truh gram», существительное.1. фотография или изображение спектра: »Если спектроскоп устроен для фотографического наблюдения, поэтому спектральные линии можно фотографировать рядом на пленке или пластине, инструмент называется спектрографом,…… Полезный словарь английского языка

  • son | o | грамм — «SON uh gram», существительное. 1. двухмерное изображение, созданное с помощью ультразвуковых волн. 2. = звуковая спектрограмма. (См. Звуковую спектрограмму)… Полезный словарь английского языка

  • Эхолокация животных — Эхолокация, также называемая биосонарным, представляет собой биологический сонар, используемый некоторыми животными, такими как дельфины, землеройки, большинство летучих мышей и большинство китов.Термин был придуман Дональдом Гриффином, который был первым, кто убедительно продемонстрировал свое существование у летучих мышей.…… Wikipedia

  • Категориальное восприятие — это восприятие различных сенсорных явлений как качественно или категорически разных. Он противоположен непрерывному восприятию, восприятию различных сенсорных явлений как расположенных на гладком континууме. Категория…… Википедия

  • речь — I (тезаурус New American Roget s College) Устная коммуникация Существительные 1.речь, разговорный, речевой факультет; словосочетание, язык, выражение, общеупотребительное, устное общение, из уст в уста, условно-досрочное освобождение, болтовня, лепет; излияние, дискурс; soliloquy;…… английский словарь для студентов

  • ,

    Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *