LINUX.ORG.RU

[alsa][record]запись с микрофона несколькими программами

 


0

1

Железо: usb-микрофон, alsa его видит, как «hw:2,0», в ~/.asoundrc прописано использовать его по умолчанию.

Софт: skype и mumble. Обе программы хотят монопольного доступа к микрофону (доступа на запись). В итоге, при работающей/ем mumble, skype не может захватить звук и разрывает соединение. //Каждый раз закрывать mumble при звонке - идеологически не правильно//

Вопрос: как можно организовать возможность одновременной записи в нескольких программах? Может быть есть-что на на подобие софтвенного микширования, но для записи? Или можно как-то создать (с помощью asoundrc) виртуальное устройство, дублирующее входной звук? В какую сторону копать?

★★★★★

В общем, нашёл решение, если кому-нибудь понадобится, то оно, как и ожидалось, вот тут (alsa-project.org)

dsnoop While the dmix plugin is for mixing multiple output(playback) streams together, if you want to use multiple input(capture) clients you need to use the dsnoop plugin

Вот так выглядит ~/.asoundrc для моего микрофона (установленного по умолчанию):

pcm.!default {                                                                                               
     type asym
     playback.pcm{
                    ***
                    ***
                    ***
    }  
    capture.pcm {
        type plug
        slave.pcm «mix_mic»
    } 
}


pcm.mix_mic { 
    type dsnoop 
    ipc_key 5978293 # must be unique for all dmix plugins!!!! 
    ipc_key_add_uid yes 
    slave { 
        pcm «hw:2,0» 
        channels 1 
        period_size 1024 
        buffer_size 2048 
        rate 44100 
        periods 0  
        period_time 0 
    } 
} 

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