Звук TempleOS с помощью VirtualBox?

В настоящее время я использую TempleOS v5.03 с Virtual Box 5.2. Я не верю, что звук работает. Когда я играю песню Бога с SHIFT + F6, или захожу под музыкальный автомат и играю песню, кажется, ничего не генерирует звук. Какую конфигурацию я должен иметь в своей виртуальной коробке, чтобы звук работал? В моем ноутбуке нет динамика ПК.

Кажется, у других тоже была эта проблема

1 ответ

Решение

Звуковой драйвер Эмуляция динамика ПК

Это работает только в Linux. Моя звуковая карта snd_hda_intel этот драйвер на самом деле может эмулировать сам динамик ПК с beep_mode параметр:

beep_mode: Выберите режим регистрации HDA Beep (0 = Выкл, 1 = вкл) (по умолчанию = 1). (массив bool)

Более того, он включен по умолчанию.

Настройка и настройка

Вы должны будете настроить разрешения один раз - добавив себя в соответствующую группу. Без этого вы получите такую ошибку в вашем VBox.log

  1. Убедитесь, что pcspkr модуль загружен lsmod | grep pcspkr, если вы этого не видите, загрузите его

    sudo modprobe pcspkr
    

    Это выставит файл устройства /dev/input/by-path/platform-pcspkr-event-spkr

  2. Убедитесь, что ваша группа может записать в файл устройства, представленный выше (ls -lah). На Ubuntu он принадлежит input, для этого вам придется запустить что-то вроде

    usermod -aG input "$USER"
    
  3. Теперь выйдите и войдите снова

  4. Убедитесь, что вы в нужной группе, запустив groups который скажет, в каких группах находится ваш пользователь

Подтвердите, что установка прошла успешно

Отныне вам просто нужно сделать следующее,

  1. Бежать modprobe pcspkr, вам придется делать это каждый раз или удалить pcskr из вашего черного списка, так что он добавляется при загрузке. Я просто запускаю его, прежде чем запустить виртуальную коробку.
  2. Бежать xkbbell или в xterm (Я бы не использовал для этого gnome-терминал, или xfce-терминал, или konqueror, потому что они могут его проглотить) printf "\a" если вы ничего не слышите, выполните следующую команду и попробуйте снова

    xset b 100
    # or whatever the source control is for the beeper
    amixer sset Beep 100%
    

И, наконец, вам нужно включить сквозную передачу через PC Speaker,

На последнем шаге вам необходимо включить функцию сквозного подключения к динамику ПК в разделе часто задаваемых вопросов по VirtualBox, это можно сделать с помощью VBoxManage, Графический интерфейс еще не имеет способа сделать это.

VBoxManage setextradata "VM name" "VBoxInternal/Devices/i8254/0/Config/PassthroughSpeaker" 100

Теперь вам просто нужно следующее,

Вот и все. Теперь просто запустите Virtual Box и запустите TempleOS. Вы должны быть в состоянии играть песни Бога. Вам не нужно переустанавливать TempleOS.

Нет звукового драйвера Эмуляция динамика ПК

Я считаю, что это возможно только одним из двух способов, гипотетически

  • Если операционная система хоста может виртуализировать динамик ПК, через который может пройти Virtual Box. Я считаю, что через Linux Virtual Speaker можно передавать через Virtual Box. Я еще не нашел ничего, что могло бы эмулировать динамик ПК на хосте и работать с чем-то вроде beep хоть. Если это может быть сделано функциональным, то что-то вроде этого должно сделать сквозное. Из VirtualBox Advanced FAQ

    VBoxManage setextradata "VM name" "VBoxInternal/Devices/i8254/0/Config/PassthroughSpeaker" 100
    

    Я задал вопрос по этому поводу в Unix.SE. Может ли Pulse Audio эмулировать динамик виртуального ПК?

  • Если Virtual Box может эмулировать динамик ПК, что он не может сделать в настоящее время, afaik.

Я не думаю, что есть решение или большое внимание к этому, поскольку даже для более старых систем DOS, которые использовали PWM на динамике ПК, поддержка Sound Blaster была повсеместной, и Virtual Box может эмулировать устройство, совместимое со звуковым бластером.

Другие вопросы по тегам