Все мои шалости и мысли про линукс в одном канале. И немного Эльбруса
Чат: https://t.me/toxblh_chat
Новости Linux: https://t.me/linux_potok
Альтернативы
Zen: https://zen.yandex.ru/toxblh
Поддержать: https://toxblh.com/support/
Post #1547
1.58K
🎙 Beamforming микрофона на Linux — работает!
Продолжаю заводить фичи из Windows, на ASUS UX3405MA есть кнопка «угол микрофона» — нажимаешь и переключается направление захвата звука. В Linux ну вы поняли :)
Техничка: В UX3405MA стоит массив из двух цифровых микрофонов (DMIC) сверху крышки, где вебка (алелуя, догадались не слушать кулера!). Обрабатываются они через Intel SOF (Sound Open Firmware) — DSP. SOF содержит компонент TDFB (Time-Domain Fixed Beamformer) — он математически комбинирует сигналы обоих микрофонов и виртуально фокусирует захват в нужном направлении. Всего 13 углов от -90° до +90° с шагом 15°, но нам нужен просто 0° то есть прямо перед ним.
Понять, есть ли фича у меня получилось так:
Если видите Dmic0 Capture TDFB beam switch и Dmic0 Capture TDFB angle set enum — всё есть.
Включить/выключить формирование луча:
Эффект виден сразу на визуализаторе звука (видео :)
Ещё нашёл встроенный компрессор микрофона там же!
Что ещё и "поднимает" звук со дна
Ну и для завершённости - лампочка на кнопка beamforming шлёт XF86Launch5 (это для Niri), а так в Gnome горячих кастом сделал. А вот LED нашёл банальным перебором в /sys/kernel/debug/asus-nb-wmi/ по dev_id пока лампочка не моргнула. Оказался 262171.
Итог — скрипт-тоглер: включает TDFB + DRC компрессию и лампочку по нажатию кнопки:
👉 Gist со скриптом
@toxblh_linux
Продолжаю заводить фичи из Windows, на ASUS UX3405MA есть кнопка «угол микрофона» — нажимаешь и переключается направление захвата звука. В Linux ну вы поняли :)
Техничка: В UX3405MA стоит массив из двух цифровых микрофонов (DMIC) сверху крышки, где вебка (алелуя, догадались не слушать кулера!). Обрабатываются они через Intel SOF (Sound Open Firmware) — DSP. SOF содержит компонент TDFB (Time-Domain Fixed Beamformer) — он математически комбинирует сигналы обоих микрофонов и виртуально фокусирует захват в нужном направлении. Всего 13 углов от -90° до +90° с шагом 15°, но нам нужен просто 0° то есть прямо перед ним.
Понять, есть ли фича у меня получилось так:
amixer -D hw:sofhdadsp controls | grep -i tdfb Если видите Dmic0 Capture TDFB beam switch и Dmic0 Capture TDFB angle set enum — всё есть.
Включить/выключить формирование луча:
amixer -D hw:sofhdadsp sset "Dmic0 Capture TDFB beam switch" on ИЛИ off
amixer -D hw:sofhdadsp sset "Dmic0 Capture TDFB angle set enum" "0"
Эффект виден сразу на визуализаторе звука (видео :)
Ещё нашёл встроенный компрессор микрофона там же!
amixer -D hw:sofhdadsp sset "Dmic0 Capture DRC switch" on ИЛИ offЧто ещё и "поднимает" звук со дна
Ну и для завершённости - лампочка на кнопка beamforming шлёт XF86Launch5 (это для Niri), а так в Gnome горячих кастом сделал. А вот LED нашёл банальным перебором в /sys/kernel/debug/asus-nb-wmi/ по dev_id пока лампочка не моргнула. Оказался 262171.
Итог — скрипт-тоглер: включает TDFB + DRC компрессию и лампочку по нажатию кнопки:
👉 Gist со скриптом
@toxblh_linux
- 🔥 19
- 👍 9
- ✍ 6
- ❤ 5
- 🤩 1








