LINUX.ORG.RU

Много вопросов по ALSA dmix


0

2

Господа лоровцы, у меня есть встроенная звуковая карта NVidia и PCI-ная Esi Juli@. Встроенную я использую только для микрофона. В остальном вся работа со звуком идёт через джулию. У меня подключены для Esi Juli@ два провода, один на аналоговый выход, второй на цифровой. Я использую кде и для вывода музыки и звука из видео я использую цифру, а так использую аналоговый выход. Настройки все лежат в /etc/asound.conf http://pastebin.com/6yn93UJy . У меня есть несколько вопросов: 1)могу ли использовать разный rate для spdifdmix и dmixer? 2)могу ли я установить какой-то rate_converter отдельно для spdifdmix или dmixer?

И ещё... вчера создал вторую учётную запись, добавил её в audio, после чего покопав интернеты добавил в свой /etc/asound.conf поле ipc_key_add_uid для каждого канала, чтобы для каждого пользователя был соответствующий ipc_key. Но почему-то устройства всё равно используются в монопольном режиме для каждого юзера(то есть я не могу в Default DMIX вывести звук одновременно в разных сеансах)

user@USER ~ $ aplay -D plug:dmixer /media/D/AUDIO0217_005\ \(1\).mp3
ALSA lib pcm_dmix.c:1018:(snd_pcm_dmix_open) unable to open slave
aplay: main:660: audio open error: Устройство или ресурс занято


Использую gentoo, kde-4.7.3, пробую всё на phonon-gstreamer.



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

Читаем
http://www.alsa-project.org/alsa-doc/alsa-lib/pcm_plugins.html#pcm_plugins_dmix

ipc_key_add_uid
нужно убрать

ipc_perm 0666
нужно добавить, тогда можно будет в default dmix записывать разным пользователям (точнее всем)
Настройки соответственно нужно записать в /etc/asound.conf а не в ~/.asoundrc чтобы конфигурация dmix и ipc_key у всех были гарантированно одинаковыми.

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

Спасибо за то, что не посоветовали пульсу :) и спасибо большое за подсказку, был в этом моменте невнимателен

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

А может вы ещё и знаете можно ли rate и rate_converter для каждого выхода задавать свой? пробовал разные rate выставлять — не работает один из выходов тогда. rate_converter задавать просто пытался как в доке — тоже самое, просто пропадает девайс из списка.

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

Должно работать. Вообще правильнее всего задать rate равным максимальному, который держит карта, чтобы нигде не было преобразования от более высокой частоты дискретизации к более низкой (это вносит наибольшие искажения). Если карта умеет 96000 или 192000, то нужно выставить везде такую частоту, rate_converter тогда можно использовать самый простой и быстрый samplerate_order, samplerate_linear или trivial. На качестве звука это не скажется.
rate_converter, кстати задается для pcm типа plug, а не dmix. dmix не умеет преобразовывать частоту. Он только смешивает потоки с одинаковой частотой дискретизации. Поэтому перед ним нужно поставить plug, которым свести все к единой частоте.

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

Очень содержательно и исчерпывающе, премного благодарен :)

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