LINUX.ORG.RU

Рандомно меняются местами правый и левый каналы звука при использовании микрофона

 ,


0

1

Привет, лор!

Debian 10.3
Pulseaudio 12.2
USB-звуковуха Lexicon Alpha

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

Подозреваю, что проблема именно в пш-ш-шаудио, потому что при использовании JACK такого не наблюдал.

Попытался поймать в логах что-нибудь при игре, когда это происходит: https://bit.ly/2YESEbp, ничего криминального не увидел.

/etc/pulse/daemon.conf: https://bit.ly/2SxeglQ
/etc/pulse/default.pa: https://bit.ly/2Yr2GN2

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

Подскажи, а?


Ответ на: комментарий от PamidoR

Другой USB карты нет (даже самой плохенькой) , чтобы отделить проблемы железные от программных ?

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

Нет. Не думаю, что проблема железная.

PamidoR
() автор топика

Похоже на то, что кто-то не успевает читать/писать из буфера и пропускает нечётное количество семплов. Звучит, конечно, дико, но очень похоже на то.

realtime-priority = 5

Попробуй поднять до 98, например.

default-sample-format = s24le

Попробуй уменьшить до 16 бит.

default-fragments, default-fragment-size-msec

Попробуй увеличить, например, в два раза.

Запусти пульсу из консоли с параметром --log-level=debug если ещё не запускал.

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

Попробуй уменьшить до 16 бит.

У меня стояло раньше 16, было то же самое. 24 поставил, потому что в карточке заявлено. Хз, правильно это или нет.

default-fragments, default-fragment-size-msec

Эти штуки, насколько я знаю, учитываются только если не задан параметр tsched в module-udev-detect. Сейчас он у меня задан. Я пробовал его выключить и поиграть с этими значениями, но это привело к большой задержке при выводе звука.

Запусти пульсу из консоли с параметром –log-level=debug если ещё не запускал.

Запускал с -vvvv, вроде то же самое должно быть.

Сейчас пока попробовал выключить некоторые модули в default.pa, а именно закомментировал эти строчки:

  • load-module module-rescue-streams
  • load-module module-always-sink
  • load-module module-position-event-sounds
  • load-module module-role-cork
  • load-module module-filter-heuristics
  • load-module module-filter-apply

Пока бага не появляется.

PamidoR
() автор топика

Не знал, что поменять каналы местами вообще возможно программно.

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

Ну ещё можно попробовать также увеличить приоритет IRQ для звукового драйвера.

А на других дистрах проверял?

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

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

PamidoR
() автор топика
Последнее исправление: PamidoR (всего исправлений: 1)

Поставил пока

tsched=0
default-fragments = 2
default-fragment-size-msec = 5

задержки не ощущаю, посмотрим, что будет с багой.

PamidoR
() автор топика

В daemon.conf добавил:

realtime-scheduling = yes
realtime-priority = 5

А это наоборот убрал:

tsched=0
default-fragments = 2
default-fragment-size-msec = 5

и вот уже больше двух недель проблему не удавалось воспроизвести.

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