- Настройка звука в wine через oss
- Настройка звука в Wine
- Выводы
- Не работает звук в wine. Debian 10.2 64-х разрядный.
- unixforum.org
- Re: Решено: Не работает звук в Wine
- Re: Решено: Не работает звук в Wine
- Re: Решено: Не работает звук в Wine
- Re: Решено: Не работает звук в Wine
- Re: Решено: Не работает звук в Wine
- Re: Решено: Не работает звук в Wine
- Re: Решено: Не работает звук в Wine
Настройка звука в wine через oss
Приветствую всех! Хотел бы рассказать о решении проблемы, с которой столкнулся сам. Я решил установить старые игры для Linux: Герои 3, Knights and Merchants. Эти игры используют SDL библиотеки для звука и видео. Но с видео все в порядке а звука нет. Это связано с тем что SDL рассчитывает на OSS, а не ALSA или PulseAudio. Для решения проблемы можно использовать несколько способов. Дальше рассмотрим как выполняется настройка звука wine для работы через oss.
Настройка звука в Wine
Есть несколько вариантов решения проблемы нет звука wine с помощью эмуляции OSS в linux:
- установить старую звуковую карту и старую версию системы;
- aoss — перехват обращений через alsa-oss;
- padsp — перехват обращений через pulseaudio;
Ставить старую звуковую карту и старую систему я не буду, а вот эмулировать звук очень даже подходит. Далее, я пошагово объясню как это сделать. Сначала надо узнать установлен ли Pulse Audio:
Если используется PulseAudio то вы увидите примерно такой вывод в терминале:
Если выдало ошибку, то у вас ALSA. Дальше нужно зайти в папку с игрой. У меня это ~/knights;
Для PulseAudio команда будет такой:
Все готово, настройка звука Wine завершена, теперь вы можете играть и радоваться звуку. Если у вас x64 разрядная и возникают ошибки, то делаем следующее(только Pulse audio):
sudo dpkg —add-architecture i386
$ sudo apt-get update
$ sudo apt-get install libpulse0:i386 libpulsedsp:i386
Копируем исполняемый файл. Я назвал копию padsp32.
sudo cp /usr/bin/padsp /usr/bin/padsp32
Запускаем текстовый редактор от root. Я буду использовать Nano, так как он есть у всех:
Заменяем 2 строки в файле padsp32:
Теперь чтобы запустить игру надо использовать эту команду:
Вместо ./ путь к файлу, а вместо knights название вашего файла.
Выводы
Вот таким способом можно решить эту проблему, но нужно учесть, что эмуляция эта работает стабильно только, если игра рассчитана на вашу архитектуру (например, x32, а у вас x64 — работать не будет) и в вашей системе есть звук! Спасибо за чтение до конца, это моя первая статья не судите строго! Оставляйте комментарии как работает, если возникли ошибки.
Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.
Не работает звук в wine. Debian 10.2 64-х разрядный.
Wine 4.0. Мамка Asrock J4005B-ITX. В winecfg всё по умолчанию, более того, если нажать «Проверить звук», звук есть. Но в винампе выдаёт либо «в системе не установлено ни одного драйвера!» (WaveOut), либо «Device not found. Please select another device» (DirectSound). В других приложениях звука тоже нет. Интернет советует переключить на ALSA, но у меня никакой альсы нет в вариантах. Есть какие-нибудь соображения?
У тебя в winecfg почему-то драйвер winealsa.drv, а должен быть winepulse.drv
Либо у тебя «пульса» выключена
Пульса включена. Сперва была пульса, но звука не было. Я через winetricks включил альсу, как советовали в тырнете. Не помогло.
winealsa.drv и с пульсой прекрасно работает. Во времена Wine 1.x так было.
Предлагаю вернуть winepulse.drv и искать причину, почему не работает. А как именно не работает с ним? Просто тишина, или «устройство не найдено» тоже? Если тишина, то проверь pavucontrol
А выхлоп wine в консоль что-нибудь интересное содержит?
Возможно что в pavucontrol у приложений, запускаемых под Wine, стоит мут. Попробуй пронажимать
Ещё проверь, стоят ли 32-битные библиотеки libpulse. Может у тебя winecfg 64-битный, а приложения, которые ты запускаешь в Wine — 32-битные
ZenitharChampion ★★★★★ ( 25.01.20 13:29:54 MSK )
Последнее исправление: ZenitharChampion 25.01.20 13:30:26 MSK (всего исправлений: 1)
Пакет libpulse0:i386 установлен в системе?
c@c-desktop:~$ sudo apt-get install libpulse0:i386 [sudo] пароль для c: Чтение списков пакетов… Готово Построение дерева зависимостей Чтение информации о состоянии… Готово Уже установлен пакет libpulse0:i386 самой новой версии (12.2-4+deb10u1). libpulse0:i386 помечен как установленный вручную. Обновлено 0 пакетов, установлено 0 новых пакетов, для удаления отмечено 0 пакетов, и 0 пакетов не обновлено.
libasound2:i386 и libasound2-plugins:i386 установлены?
Установлены, судя по выхлопу
c@c-desktop:~$ sudo apt-get install libasound2:i386 [sudo] пароль для c: Чтение списков пакетов… Готово Построение дерева зависимостей Чтение информации о состоянии… Готово Уже установлен пакет libasound2:i386 самой новой версии (1.1.8-1). libasound2:i386 помечен как установленный вручную. Обновлено 0 пакетов, установлено 0 новых пакетов, для удаления отмечено 0 пакетов, и 0 пакетов не обновлено. c@c-desktop:~$ sudo apt-get install libasound2-plugins:i386 Чтение списков пакетов… Готово Построение дерева зависимостей Чтение информации о состоянии… Готово Уже установлен пакет libasound2-plugins:i386 самой новой версии (1.1.8-1). libasound2-plugins:i386 помечен как установленный вручную. Обновлено 0 пакетов, установлено 0 новых пакетов, для удаления отмечено 0 пакетов, и 0 пакетов не обновлено.
Кстати, в 64-битных виндовых игрушках в вайне звук есть 🙁 Мне бы в 32-битных запустить.
Я понял, что у тебя случилось. Но вывод командной строки при запуске программы в Wine помог бы разобраться в этом быстрее.
Итак, PulseAudio появился в 2008 году. В первое время было много программ, которые всё ещё использовали ALSA, и не знали ни про какую PulseAudio. Но ведь ред хету хотелось, чтобы ВООБЩЕ ВЕСЬ звук шёл через «пульсу» — а не так, что часть приложений работает через пульсу, а часть — через ALSA напрямую.
Тогда был создан плагин /usr/lib/alsa-lib/libasound_module_conf_pulse.so. Если попросить систему пользоваться этим плагином (например специальным конфигом:
pcm.pulse < type pulse >ctl.pulse < type pulse >pcm.!default < type pulse >ctl.!default
Но сейчас создавать такой конфиг ~/.asoundrc нет необходимости, потому что устройство pulse теперь само создаётся, когда PulseAudio включена. Я не знаю, как это сделано)
Ну так вот, в этом случае, приложение общается с libasound2, которое отправляет звук в вышеназванный плагин, который отправляет звук в libpulse0. (Ну и дальше звук опять идёт в libasound2, никуда после этого не переадресовывается, и начинает воспроизводиться). Благодаря этому, мы видим в pavucontrol — ALSA-only приложение, которое про Пульсу ничего не знает, и тем не менее, мы можем отрегулировать ему звук.
Тока вот проблема. Файл libasound_module_conf_pulse.so лежит не в /usr/lib, а в /usr/lib/alsa-lib/. То есть, в ld.conf и ld.conf.d/*.conf не прописано, что надо искать либы в этой директории. И если 64-битную версию библиотеки система сама находит и использует (она прописана в alsa.conf), то где находится 32-битная система может и не знать.
В Gentoo это решалось так. В файле alsa.conf (или alsa.conf.d/*.conf) добавляется несколько строк. После чего, библиотека обнаруживается системой, и звук в Wine появляется. (как и в любых других приложениях, которые 32-битные, в 64-битной системе, и которые выводят через ALSA) Вот ссылка на конфиг.
Тебе надо использовать этот конфиг, но внести изменения, потому что пути к библиотекам поменялись после перехода на multilib. Конфиг не учитывает multilib. После чего, вывод через winealsa.drv заработает.
Почему не работает вывод при помощи winepulse.drv, я не знаю. Но нам бы мог помочь вывод Wine в командной строке.
Спасибо за совет, но я просто скачал portable-версию вайн из прикреплённой темы «Готовые сборки wine», и в этой сборке всё работает: и прога, нужная мне, запускается, и звук в 32-битных приложениях. Просто работает из коробки.
unixforum.org
Поставил wine решил из-под него посмотреть масяню, а звука-то и нет! в настройках мою карточку (SB Live Emu10k что-то такое) не пишет. У меня Ubuntu 9.04. Подскажите как настроить. А звук в самой системе работает.
devilr Сообщения: 3593 ОС: Mandriva => Gentoo (~amd64) Контактная информация:
Re: Решено: Не работает звук в Wine
Сообщение devilr » 13.08.2009 10:15
В winecfg выбрать аудиодрайвер. Обычно там 2 на выбор ALSA и OSS. Для некоторых приложений бывает полезно поставить галку в «Эмуляция драйвера»
Re: Решено: Не работает звук в Wine
Сообщение lev92 » 13.08.2009 21:30
На картинке видно. Я выбрал Alsa , поставил муляцию, но не работает. во вкладке «вывод звука» должо показывать мою карту, а там default. не подскажете адрес конфигурацинного файлика? Версия wine -1.0.1
devilr Сообщения: 3593 ОС: Mandriva => Gentoo (~amd64) Контактная информация:
Re: Решено: Не работает звук в Wine
Сообщение devilr » 13.08.2009 22:21
Вайн берет звук из системы. Уверены, что в самой системе карта определилась правильно?
Опять же, вайн вообще может играть звук? Т.е. если к примеру в нем поставить игрушку — звук будет? Ну и кнопка «Проверить звук» в конфигураторе дает звук?
Re: Решено: Не работает звук в Wine
Сообщение lev92 » 14.08.2009 20:28
в системе звук есть, кнопка ничего не даёт. я ж говорю, раньше, когда запускал масяню (экзешный файл) звук был (это было давно, на убунту установленной в эмулятор) , теперь же его нет
devilr Сообщения: 3593 ОС: Mandriva => Gentoo (~amd64) Контактная информация:
Re: Решено: Не работает звук в Wine
Сообщение devilr » 15.08.2009 08:43
и посмотреть, что упадет в консоль.
Или распаковать — ведь это по сути архив. И посмотреть ролик уже без вайна.
Re: Решено: Не работает звук в Wine
Сообщение lev92 » 17.08.2009 23:51
Re: Решено: Не работает звук в Wine
Сообщение elri2007 » 28.10.2009 10:06
Имеется аналогичная проблема. Звука в играх и приложениях под вайн нет. Звук в системе имеется. Рандомно бывает что звук имеется. В настройках говорит что Test Audio Failed. Как быть? Ничего не пойму. Шаманствами с установкой Libjack добился того, что вместо файлед, при нажатии на кнопку Тест, слышны из колонок какие то хрипы. Я в полном недоумении, что можно сделать? Версия вайна 1.30