Як вибрати, який пристрій виведення звуку використовувати для / dev / dsp емуляції OSS?


1

У мене система з двома звуковими пристроями, і я використовую звук через вихід HDMI. Це Картка 1, Пристрій 7, Підрядне обладнання 0, тому я встановив /usr/share/alsa.conf:

defaults.ctl.card 1
defaults.pcm.card 1
defaults.pcm.device 7
defaults.pcm.subdevice 0

Це дає мені звук у програмах ALSA. Тепер я хочу запустити стару програму, яка потребує ОС, тому я встановила alsa-ossі зробила sudo modprobe snd-pcm-oss snd-mixer-oss. Коли я запускаю стару програму, я отримую звук, але тільки з аналогової лінії, а не від HDMI, тому для емуляції OSS використовується перша карта.

Як я можу запропонувати емуляції OSS використовувати другу картку замість цього?

Відповіді:


0

Документація каже:

ALSA підтримує такі файли пристроїв OSS:

PCM:

      / dev / dspX
      / dev / adspX
[...]
На відміну від реальних ОС, ALSA не може використовувати файли пристрою більше, ніж призначені. Наприклад, перша картка не може використовувати / dev / dsp1 або / dev / dsp2, а лише / dev / dsp0 та / dev / adsp0. [...]
Як видно вище, PCM та MIDI можуть мати два пристрої. Зазвичай перший пристрій PCM (hw: 0,0 в ALSA) відображається на / dev / dsp, а вторинний пристрій (hw: 0,1) на / dev / adsp (якщо є).

Ви можете змінити відображення цього пристрою через параметри модулів snd-pcm-oss і snd-rawmidi. Що стосується PCM, для snd-pcm-oss доступні наступні варіанти:

  dsp_map     PCM device number assigned to /dev/dspX
      (default = 0)
  adsp_map    PCM device number assigned to /dev/adspX
      (default = 1)

Наприклад, щоб зіставити третій пристрій PCM (hw: 0,2) в / dev / adsp0, визначте так:

options snd-pcm-oss adsp_map=2

Параметри беруть масиви. Для налаштування другої картки вкажіть два записи, розділені комою. Наприклад, щоб зіставити третій пристрій PCM на другій карті в / dev / adsp1, визначте так:

options snd-pcm-oss adsp_map=0,2

Проблема полягає в тому, що мій HDMI не hw: 0,1, а hw: 1,7. Як би я встановив / dev / dsp бути hw: 1,7 тоді?
rabejens

Ви повинні сказати старій програмі використовувати /dev/(a)dsp1.
ЗР.

Я ніколи не отримую / dev / (a) dsp1, я отримую лише / dev / dsp. Моє звукове обладнання таким чином смішно, схоже, що використовувати snd_hda_intel та фірмовий драйвер NVidia якось встановлює другий пристрій, але коли я перебуваю на чорному списку snd_hda_intel, звук HDMI також відсутній
rabejens

Обидва використовують snd-hda-intelдрайвер. Ви отримаєте adspдля пристрою 1 за замовчуванням. Ви не використовуєте цю adsp_mapопцію?
ЗР.

Якщо я все-таки sudo modprobe snd_pcm_oss adsp_map=0отримую /dev/adsp, але звук все одно надходить від аналогового звуку. При використанні dsp_map=1чи що-небудь, крім 0, я навіть не отримую /dev/dsp. Я думаю, що я буду запускати відеосигнал через DVI через два адаптери, щоб знімати звук, і використовувати замість нього аналоговий звук на борту. Це все одно лише монітор із вбудованими динаміками.
rabejens
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.