[sisyphus] доступ к alsa из-под разных пользователей
Artem
=?iso-8859-1?q?u2u_=CE=C1_nm=2Eru?=
Сб Ноя 12 21:28:37 MSK 2005
Sergey Vlasov wrote:
>и sisyphus, отсылаю письмо сюда.
>
>
> Нет, всё хуже
Нет - все отлично! Попробуем IPC на практике. Благо, и книжка рядом
имеется. :-)
- это особенности dmix. Нужно задавать ему параметры:
>
> ipc_key INT # Unique ipc key
> ipc_perm INT # ipc permissions (default 0600)
> ipc_gid INT # ipc gid (default -1 = disable)
> ipc_key_add_uid BOOL # Add current uid to ipc_key
>
> dmix использует SysV IPC (разделяемую память и семафоры, причём ему
> нужно два сегмента разделяемой памяти - в одном управляющая
> информация, в другом буфер для звуковых данных). Первый процесс,
> использующий dmix, выполняет fork(), и получившийся новый процесс
> становится сервером; остальные процессы получают от сервера дескриптор
> реального звукового устройства (для этого используется unix socket в
> /tmp, имя сокета передаётся через сегмент разделяемой памяти).
>
> Кстати, параметр ipc_gid, необходимый для раздачи доступа к dmix,
> появился совсем недавно - в libalsa-1.0.9 его нет, нужна ещё
> официально не вышедшая 1.0.10.
>
Огромное спасибо!
>
>>P.P.S. Это только у меня в XMMS при выводе через dmix не работает
>>"пауза"? Воспроизведение останавливается, но продолжить потом нельзя -
>>нужно сначала композицию включать кнопкой play. При указании вывода
>>напрямую в hw:0.0 - все работает.
>
>
> Что-то там сломано - возможно, что и в самом dmix.
>
Значит, не один я такой ;-)
Rgds, Artem.
Подробная информация о списке рассылки Sisyphus