[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