1

Я использую Debian Unstable x64, но иногда использую устаревшие приложения или игры, которые доступны только в i386. С простой ALSA (есть только так много PulseAudio, который может принять нормальный человек), приложения i386 не получают никакого звука из-за проблем с плагином.

У меня установлен плагин эквалайзера для ALSA x64, который указан в моем .asoundrc следующим образом:

ctl.equal {
  type equal;
}
pcm.plugequal {
  type equal;
  slave.pcm "plug:dmix";
}
pcm.!default {
  type plug;
  slave.pcm plugequal;
}

Это означает, что приложения i386 также пытаются загрузить плагин, дают сбой и вообще не дают никакого звука - выглядит так:

ALSA lib dlmisc.c:254:(snd1_dlobj_cache_get) Cannot open shared library /usr/lib/i386-linux-gnu/alsa-lib/libasound_module_pcm_equal.so

Установка плагина для обеих архитектур кажется невозможной по номиналу: они конфликтуют в apt и используют один и тот же файл в домашнем каталоге для хранения своих настроек (я думаю? .alsaequal.bin), которые им требуются в разных форматах. (Замена одной версии другой без перемещения файла приводит к ошибке «.alsaequal.bin - неправильная длина».)

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

  • Скажите ALSA, чтобы использовать разные rc-файлы для i386 и x64

  • Явно укажите путь к .alsaequal.bin, что может позволить мне запустить плагин для обеих архитектур. (Это настраивается в .asoundrc, но это просто приводит к варианту 1.)

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

Заранее спасибо!

0