LINUX.ORG.RU

Направить звук с микрофона на наушники во время записи в PulseAudio

 , , , ,


2

2

Всем привет! Наверно не совсем точно описал проблему. Приведу пример: в оффтопике при подключении микрофона, он сразу слышен в наушниках или колонках. Потому очень удобно записывать, например, подкаст. Слышишь сам себя. В Linux такое можно сделать в JACK, и я это делал. Но звук пишется с хрипами. Пробовал ставить реалтайм-ядро - безрезультатно. Китайска USB-звуковуха при подключении через JACK вообще входит в петлю и визжит в динамики. Скажите, можно ли получить то, что мне нужно, средствами PulseAudio? Видимо встроенная в мой ноут звуковуха хреново работает с режимом реального времени.

Проблема решена при помощи модуля loopback:

pactl load-module module-loopback adjust_time=0 latency_msec=1 >> /dev/null


Если не ставить доп.параметры - задержка составит 23 милисекунды. Надеюсь кому-нибудь тоже пригодится. Отрубается это уже при помощи unload-module Можно наваять скриптик.

Sunderland93 ★★★★★ ()
Ответ на: комментарий от Sunderland93

23 милисекунды

Комфортно? Спрашиваю без всякой иронии, действительно интересно. Мне на клавишах больше 10-12 мс уже неудобно. Вокалисты иногда жалуются на задержку даже при 6-8 мс.

meliafaro ★★★★★ ()
Ответ на: комментарий от meliafaro

Скорее всего ты промахнулся в цифрах на порядок.

Сигналы в нервах слишком медленно бегают чтобы говорить о таких числах.

cvv ★★★★★ ()
Ответ на: комментарий от meliafaro

Комфортно?

Нет конечно. Нет синхронизации с тем что ты говоришь и что слышишь в наушниках. Кстати небольшая задержка всё равно есть. Сейчас смотрю как решить

Sunderland93 ★★★★★ ()
Ответ на: комментарий от cvv

Я не ставил именно реалтайм ядро (то есть с кучей патчей), я поставил lowlatency-ядро из репов. Там таймер как раз на 1000 Гц, но всё равно слышны похрипывания при записи через JACK

Sunderland93 ★★★★★ ()
Ответ на: комментарий от cvv

Нет, конечно. 60-80 мс - совершенно конская задержка, играть на такой невозможно в принципе. Уже больше 15-20 быстрые партии не поиграешь.

http://rmmedia.ru/threads/72423/ вот тут некоторым людям даже 5-6 мс критичны.

meliafaro ★★★★★ ()
Ответ на: комментарий от mandala

Я и не говорю. Но некоторые даже при 8-10 мс: «Ой, а что я себя в наушниках как бы с задержкой слышу, как будто эхо!»

meliafaro ★★★★★ ()

Кстати, странно, что с jack хрипит. Какой пртцессор, нет ли какого пересемплирования?

Shadow ★★★★★ ()
Ответ на: комментарий от Sunderland93

Это ядро тебе тоже неактуально. Тебе скорее всего нужно стандартное дестопное ядро.

cvv ★★★★★ ()
Ответ на: комментарий от meliafaro

если человек слышет «как-будто» эхо то там задержки от 250 мс. «Особенные» люди слышат от 150 мс. Остальное - иллюзия. Мозг впринцыпе не способен различать события с растоянием между ними около 35 мс. Плюс время беготню по нервам.

cvv ★★★★★ ()
Ответ на: комментарий от Shadow

У него Пульса. Так и должно быть.

cvv ★★★★★ ()
Ответ на: комментарий от Shadow

Pentium 2020M. Естественно с пульсом есть пересемплирование. Но с ним нет хрипов на записи. А с JACK есть

Sunderland93 ★★★★★ ()
Ответ на: комментарий от cvv

Ты очень заблуждаешься. 100 мс - это 16-я нота в темпе 150 bpm. Их различает любой человек. «Особенные» люди с тренированным слухом улавливают в таком темпе мелодические конструкции 64-ми и даже 128-ми, хотя и непродолжительные.

Я при сведении прекрасно слышу предилей на реверберации в 30 мс. Я больше скажу - я не могу петь с хором синхронно с другого конца зала, хотя там расстояние меньше 30 метров. Лень считать задержку, но она явно меньше даже 25 мс.

meliafaro ★★★★★ ()
Ответ на: комментарий от cvv

Мозг впринцыпе не способен различать события с растоянием между ними около 35 мс.

мракобесие какое-то
подвигай трек с гитарой относительно барабанов в аудиоредакторе на -35, 0 и +35мс
разница будет драматическая

ist76 ★★★★★ ()
Ответ на: комментарий от Sunderland93

то, что ты выставил задержку в 1мс в пульсе - совершенно не означает,что так и есть. Это же пульса. Задержка альсы плюс самого пульса на «внутренние нужды» и только задержка на луп в одну миллисекунду.

Deleted ()
Ответ на: комментарий от Shadow

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

meliafaro ★★★★★ ()

Это делается на голой альсе если что. Причем не важно, стоит у тебя пульса или нет.

И это все вообще без задержек, т.е. ты слушаешь то что входит в карту сразу на выход и параллельно оно же идет в запись.

deep-purple ★★★★★ ()
Последнее исправление: deep-purple (всего исправлений: 1)
Ответ на: комментарий от deep-purple

Чтобы вообще без задержек - direct monitoring в карте нужен
иначе всё равно АЦП-ЦАП и всё равно задержки

ist76 ★★★★★ ()
Ответ на: комментарий от Sunderland93

Видимо чето порегулировать в alsamixer.

cvv ★★★★★ ()
Ответ на: комментарий от Sunderland93

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

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

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

При записи нормальная программа (например Ardour) компенсирует задержку и пишет твой звук как будто задержек не было.

https://s29.postimg.org/dz2rhhgxz/alsamixer.png

На картинке:

1) ползунок уровня линейного входа (не влияет на капчур)
2) мьют линейного входа (не влияет на капчур)
3) ползунок уровня капчура (не влияет на уровень входа)
4) тумблер откуда брать капчур (у меня их аж два) — указано брать с линейного входа

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

Все.

deep-purple ★★★★★ ()
Ответ на: комментарий от Sunderland93

А у меня и так пашет. Ну то уже от карты зависит.

deep-purple ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.