Обновить
128K+

Звук

Это «ж-ж-ж» неспроста

111,96
Рейтинг
Сначала показывать
Порог рейтинга
Уровень сложности

После сборки на Tauri затрещал голос и почернел стрим: разбираем три ошибки одного теста

Уровень сложностиСредний
Время на прочтение10 мин
Охват и читатели5.1K

После сборки на Tauri голос начал трещать, автокалибровка почти минуту вмешивалась в разговор, а демонстрация экрана через минуту становилась чёрной. Разбираем запись и логи, находим усиление до ×4 без лимитера, резкие разрывы 20-мс аудиопакетов и зависший видеотрек при живом соединении LiveKit — и показываем, как исправили каждый сбой в версии 0.0.26.

Разобраться в причинах

Новости

Хранение информации в звуковой волне?

Время на прочтение6 мин
Охват и читатели8.3K

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

Многим хорош современный подход — можно как записать информацию, так и получить практически мгновенно к ней доступ, в нужный момент времени; причём, так как время переключения самой ячейки обычно весьма ничтожно (и в том числе, благодаря этому), современные интеллектуальные системы работают достаточно быстро…однако, так было не всегда! 

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

Скажем, как вам понравится, хранение информации в звуке?! Причём, не записанном куда-либо (нашёл чем удивить), а непосредственно, распространяющимся в среде, то есть, в динамике?!

Читать далее

Шум как первоязык: системно-информационный взгляд на лингвистику

Уровень сложностиСредний
Время на прочтение14 мин
Охват и читатели6.5K

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

Знаковой работой в данном направлении становится «Искусство шумов» (L’arte dei Rumori) Л. Руссоло, который выделяет роль шума (именно шума, а не звуков как таковых) как нового способа описания современной ему эпохи. Самое важное — он проводит кодирование шумов по семантизации, то есть способности заставить слушателя пережить определенный опыт.

Читать далее

Искажения: о чём молчат нули

Уровень сложностиСредний
Время на прочтение20 мин
Охват и читатели9.6K

Это пятая статья цикла о том, почему акустика, которая хорошо измеряется, может плохо звучать.

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

Во всех предыдущих статьях я специально обходил общее свойство перечисленных явлений: они абсолютно не зависят от уровня воспроизводимого сигнала. Та же точка излома направленности на 3500 Гц одинакова и при тихом, и при громком воспроизведении, а комнатные моды на 30 Гц стабильно занимают одни и те же положения вне зависимости от громкости. Именно поэтому в четвёртой статье я сделал допущение об идеальности магнитной системы, отложив рассмотрение нелинейностей на потом: сначала хотел разобраться с линейной частью отдельно.

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

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

Читать далее

Робот оглох и молчит об этом: как мы учили гуманоида замечать, что микрофон «отвалился»

Уровень сложностиСредний
Время на прочтение11 мин
Охват и читатели6.5K

Слышит ли вас робот прямо сейчас? А если микрофон «отвалился» — как быстро вы об этом узнаете?

Штатный микрофон гуманоида Walker Tienkung предполагает, что оператор стоит в полутора метрах перед работающей машиной ростом 173 см — неудобно и небезопасно. Мы взяли недорогую беспроводную петличку и думали, что задача решается за вечер: воткнул USB, написал pip install, готово. Реальность: выведенный наружу порт нашёлся только на другом бортовом компьютере, звук пришлось гнать по сети, а приёмник в случае любой неисправности отвечает одинаково — молча шлёт нули. Сел аккумулятор, выключили передатчик, выдернули донгл — для софта всё это неотличимо.

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

Читать далее

Провожу тест‑драйв GigaChat Audio в рабочих условиях

Время на прочтение17 мин
Охват и читатели7.7K

Привет, Хабр! Сбер недавно выкатил новую модель, GigaChat Audio. Сейчас я надиктовываю модели этот текст голосом — финальный штрих в истории о том, как я проводил её тест‑драйв. 

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

Меня зовут Данила @pushnoydan, я мидл‑разработчик и занимаюсь бэкендом микросервисов. А параллельно — большой любитель ИИ‑моделей: в свободное время копаюсь в них, чтобы лучше понимать возможности свежих релизов, стараюсь применять на работе, чтобы упростить рутинные задачи. 

GigaChat Audio — audio‑native LLM. В течение дня я поручал ей разбирать голосовые коммуникации от коллег, составлять саммари по аудиозаписям и выводить ключевой контекст из записей различных встреч. Давайте посмотрим, как модель показала на реальных задачах.

Читать далее

2,2 МБ против 128 МБ: честный бенчмарк Win32 и Tauri на живом голосовом клиенте

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели7.2K

После статьи о выборе Tauri нас спросили, сколько памяти будет занимать программа, которая живёт в трее рядом с игрой. Мы запустили старый БОЛТУН на Win32 и новый на Tauri в одинаковом пустом лобби. Получилось 2,2 МБ против 128 МБ. Разбираемся, откуда взялись девять процессов WebView2, что показал замер и почему это не стало автоматическим отказом от нового интерфейса.

Читать бенчмарк

Как я обучила нейросеть рисовать спектрограммы (и что из этого получилось)

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели5.1K

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

Читать далее

Корейский Squier Standard Telecaster 1997 года — джентанёт или нет?

Уровень сложностиПростой
Время на прочтение8 мин
Охват и читатели15K

Привет, Хабр! Фронтмен одной известной группы принёс мне на доработку интересный инструмент и разрешил показать его на Хабре.

Многострадальный старый Телекастер, которому довелось пройти через многие концерты и съёмки, не говоря о репетициях, используется в качестве модерновой ритм-гитары с кастомным комплектом из пяти струн для необычного пониженного строя, да ещё и перевёрнут в леворукое положение.

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

В неё вселился БЕШ!

После комментариев на Хабре мы развернули тестовую ветку БОЛТУНа: Electron, WinUI 3 или Tauri 2?

Уровень сложностиСредний
Время на прочтение11 мин
Охват и читатели6.4K

После первой статьи о БОЛТУНЕ мы развернули отдельную тестовую ветку и начали выбирать новый стек интерфейса. С помощью ИИ сравнили Electron, WinUI 3 и Tauri 2, проверили выводы по документации и собрали прототип на Tauri. Рассказываем, почему не переносим звук из C++ в WebView, как устроили границу WebView → Rust → C++, что уже работает, а что ещё предстоит измерить.

Читать эксперимент

Собеседник замолчал или просто задумался: как мы учили голосового ассистента не перебивать людей

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели7.5K

«Мой номер заказа... сейчас, секунду...» — и бодрое «Да, я вас понял, минуточку!» прямо в середину фразы.

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

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

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

Читать далее

Думал, Android пишет двигатель хуже iOS. Передумал. Потом оказалось, что прав, но по своему

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели5.8K

Полторы тысячи записей моторов с телефонов. Виноват был не бренд и не цена телефона, а то, чей DSP отрабатывает запрос браузера.

На iOS та же правка сработала наоборот.

Шоу должно продолжаться. Сценарный пульт для одного шоу

Время на прочтение6 мин
Охват и читатели12K

Лет 10 назад, когда я работал в банке в Сибири, был у нас отдел - малая автоматизация. Делали ПО для местных. Потом отдел расформировали и перешли на централизованное ПО.

Сейчас каждый может стать таким небольшим отделом малой автоматизации. Для себя, для личных нужд или для своих.

ИИ помогает делать проекты, которые раньше ты бы никогда не сделал. Или дорого по времени, или по ресурсам. А сейчас.... Давно уже не испытывал такой личной упоротости в маленькие проекты. Про один я уже писал, теперь расскажу про другой.

Итак, добро пожаловать на шоу!

Читать далее

Ближайшие события

Голос пропадал каждые три секунды: как пять друзей из Tarkov Arena сделали БОЛТУН

Уровень сложностиСредний
Время на прочтение11 мин
Охват и читатели7.1K

Нас пятеро: друзья и команда по Tarkov Arena. После блокировки Discord и прекращения работы обходного способа мы не нашли подходящую российскую замену и начали делать BOLTUN. В живых тестах голос рвался ровно раз в три секунды, хотя локальная запись была идеальной. Мы меняли буферы, WASAPI, Opus, ADPCM, PCM, UDP и серверный relay. В итоге период вывел нас на неожиданную причину: диагностический лог каждые 50 кадров. Разбираю расследование, собственный формат TVO2 на 80 мс и устройство голосового тракта.

Читать расследование

Как я собрал сайт на 30 000 SEO‑страниц за месяц

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели19K

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

В какой-то момент я сформулировал, чего хочу: сайт с аккордами, который открывается мгновенно, работает без интернета и ничего мне не продаёт. Такого сайта не нашлось. Зато нашлись подписки на Claude и GPT и спортивный вопрос: может ли один человек, не написав руками почти ни строчки кода, собрать себе идеальный продукт за месяц?

Проверил. Рассказываю:

Читать далее

Suno v5.5 Custom Model

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели5.9K

В последние недели собрал и протестировал 15 пользовательских 1 моделей (CM). Не претендую на полноту изучения опции, но надеюсь, что кому-то мой опыт сэкономит время. Основной вопрос: как на поведение модели влияют материал для тренировки (DS), стили, Lyrics и параметры.

1 идея витала в воздухе, как только народ услышал генерации очень похожие на известных артистов. В Udio/ Suno требовались танцы с бубном, в Sonauto (ныне Treblo) достаточно было ввести имя в промпт. В конце 2024 г. один проф. певец задал мне вопрос: "Как генерить с моим голосом и манерой?". Сделал его RVC-модель, он: "Тембр точно мой, но манера не везде", а с DS для Suno v3.5: "... похоже, и тембр, и манера. А можно, чтобы вообще как я и чистый звук?" Ответ: "Нужна ваша собственная модель".

Кажется, первыми CM предложили Mureka (Personalized Model): DS из 100+ треков (до 4 мин.), разовый платеж $100-200, тренировка ~3 ч. (сам не пробовал). Zaptrem (основатель Sonauto) на запрос о CM ответил, что не раньше v3. Локальные/ "открытые" инструменты я не смотрел (в своё время помучился с RVC на Google Colab и HuggingFace), но … как-нибудь попробую.

Во всех экспериментах с муз. ИИ меня интересовало 2 момента: а) как это устроено; б) как облагородить свои треки — придать правильное и "живое" звучание. Я не профессионал, но мне не нужно, чтобы ИИ за меня сочинял. Думаю, композитору важно самому отвечать за каждую ноту. Хотя можно и так: "Сгенери в моём стиле, а я выберу".

"Наевшись" вариативности с Persona, Your Voice, да и вообще с генерацией в Suno, я решил тестировать CM сразу на ярком материале. У меня не было и нет планов создавать несуществующие песни знаменитостей 2, но с DS из треков известных певцов поведение CM (похоже/ непохоже) должно быть очевидным для многих. Suno не работает с хитами, но пропускает генерации от Sonauto/ Treblo, т.к. мелодия и текст другие. Треки очень близки к реальным артистам — если не фанат, решишь, что просто не слышал эту песню.

Читать далее

Советский эстрадный усилитель ЭСКО-100

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели21K

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

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

Читать далее

Tymbal — нейросинтезатор на одном чипе

Уровень сложностиСложный
Время на прочтение24 мин
Охват и читатели7.4K

Инструмент называется Tymbal.

Характер задаёт учитель — обработанный сигнал, на который натаскивается уточнитель. Смените учителя, и характер сменится целиком, а конструкция останется прежней.

Tymbal — орган звукоизвлечения цикады: ребристая мембрана, которая щёлкает при нелинейном выгибании. Маленький аппарат, громкий и богатый обертонами результат, и весь механизм держится на одной нелинейности. У нас нелинейность учителя переносится сетью на детерминированный скелет, и всё это живёт на одном чипе.

Слово к тому же приходит оттуда же, откуда «тембр». Merriam‑Webster выводит tymbal как изменённое от более раннего timbal (литавра), а timbre — от греческого tympanon, барабана: в старофранцузском это ещё барабан, в среднефранцузском — колокол под молоточком, и лишь потом слово стало означать окраску звука. Имя инструмента и слово «тембр» — родня по барабану.

Первый вариант я написал через i, как в литавре. Пришлось переименовывать: у цикады это tymbal, через y.

N6 ниже по тексту — рабочий индекс по имени чипа, он остался в названиях файлов и веток.

Читать далее

Динамики: когда «хорошо» не бывает

Уровень сложностиСредний
Время на прочтение21 мин
Охват и читатели10K

Это четвертая статья серии о том, почему акустика, которая хорошо измеряется, может плохо звучать

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

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

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

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

Читать далее

PVAD: как научить ИИ слышать нужного человека в шумной комнате

Уровень сложностиПростой
Время на прочтение2 мин
Охват и читатели7.2K

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

Над этим мы с коллегами работали в проекте PVAD (Personal Voice Activity Detection) — технологии для определения того, когда в общем аудиопотоке говорит конкретный человек. Короткий простой обзор на один из кейсов нашей команды. 

Читать далее
1
23 ...