Muita gente (inclusive eu) já teve ou tem problemas em executar várias aplicações de som ao mesmo tempo. Se você não consegue ouvir mais nada quando está com o XMMS aberto ou vive se deparando com mensagens de erro do Arts ou de programas vários, este artigo é pra você. O que vamos fazer é configurar o ALSA para mixar tudo, sem utilizar do ESD (Esound) ou Arts.
O Dmix propriamente dito seria um plugin para o ALSA que
"mixaria" tudo utilizando-se do software ao invés do hardware
(lembrando que se sua placa tem suporte a "hardware mixing", então
você não precisa ler este artigo :P).
O plugin
Crie um arquivo "/etc/asound.conf" (sem aspas é obvio) e
adicione as seguintes linhas:
# INICIO
# Definindo o script
pcm.ossdmix {
type dmix
ipc_key 2106 # Um número único
slave {
pcm "hw:0,0"
period_time 0
period_size 4096
buffer_size 8192 # se começar a ter "travadinhas" em aplicções
# muito pesadas utilize um número maior,
# ex: 65536 ou 16384
# rate 48000
# descomente a linha acima para utilizar 48000Khz como saída padrão
}
# bindings servem apara acelerar o dmix, utilizando apenas 2 canais,
# o que serve para a maioria das pessoas
bindings {
0 0
1 1
}
}
ctl.ossdmix {
type hw
card 0
}
# Habilita o uso do microfone ou Line-In
pcm.dsnoop {
type dsnoop
ipc_key 0507
# Compatibilidade com o Full Duplex do KDE
slave {
period_time 0
period_size 4096
buffer_size 65536
}
bindings {
0 0
1 1
}
}
ctl.dsnoop {
type hw
card 0
}
pcm.duplex {
type asym
playback.pcm "ossdmix"
capture.pcm "dsnoop"
}
# Utilizar o Dmix por padrão do ALSA
pcm.!default {
type plug
slave.pcm "duplex"
}
# Compatibilidade OSS
pcm.dsp0 {
type plug
slave.pcm "duplex"
}
# FIM
OBS: Este método vai configurar o sistema todo, se desejar que as configurações afetem somente o seu usuário ou se não tiver permissões, ao invés de utilizar o arquivo /etc/asound.conf, utilize o ~/.asoundrc.
[2] Comentário enviado por Tango em 30/09/2005 - 13:44h
Uma nota importante que eu deixo por experiência própria. Algumas placas de som (AC97 mais notavelmente) ficarão com o som dirtorcido se o buffer_size não for uma potência de 2.
[3] Comentário enviado por flipe em 30/09/2005 - 15:28h
aqui ele retorna o seguinte erro!
Directory: /mnt/hd1/flipe/mule/completos/Dub_Syndicate-Pure_Thrill_Seekers-CD-2005-/
Playing MPEG stream from 11-dub_syndicate-yes_it_is_bless-yard.mp3 ...
MPEG 1.0 layer III, 128 kbit/s, 44100 Hz joint-stereo
ALSA lib conf.c:1165:(parse_def) dsnoop is not a compound
ALSA lib conf.c:1578:(snd_config_load1) _toplevel_:32:14:Invalid argument
ALSA lib conf.c:2823:(snd_config_hook_load) /etc/asound.conf may be old or corrupted: consider to remove or fix it
ALSA lib conf.c:2686:(snd_config_hooks_call) function snd_config_hook_load returned error: Invalid argument
ALSA lib conf.c:3052:(snd_config_update_r) hooks failed, removing configuration
ALSA snd_pcm_open error: Invalid argument
[0:02] Decoding of 11-dub_syndicate-yes_it_is_bless-yard.mp3 finished.
quando tiro o alsa09 do "/etc/libao.conf" não da o erro, e também não funciona!
e agora, estou tendo que retirar o microfone do computador para poder escutar, senão da microfonia, mesmo depois que retirei todas as suas configurações!
[6] Comentário enviado por removido em 01/10/2005 - 19:03h
Cara mto bom o artigo!! Funcionou perfeitamente aqui! Dá até gosto de ver as barrinhas do XMMS mexendo no mesmo ritmo da música (eh, com o ESD isso não acontecia :-P)
Valeeeeeu!!!
[7] Comentário enviado por Century_Child em 08/10/2005 - 18:14h
Excelente!
Aqui eu sempre tinha um "delay" na música, irritante demais (ainda mais pq aplico um monte de efeitos LADSPA na música, pra reduzir chiado, melhorar volume, essas coisas) com o ESD.
Sem falar que ele DEVORAVA CPU (de 0 a 100% em 20 minutos).
[10] Comentário enviado por magnus em 23/01/2007 - 20:31h
Eu recebi o mesmo erro que o flipe, exceto pelo microfone. O mpg321 funcionou mas quanto tentei junto com o Amarok não deu. Ou um ou outro. O xmms também deu erro, mas como eu não uso muito o xmms eu não sei se foi por causa das mudanças.
[11] Comentário enviado por magnus em 23/01/2007 - 20:51h
[voltando]
Não consegui com esse artigo mas consegui com outro (http://linux.gustavobarbieri.com.br/alsa-dmix-howto.txt). Só gostaria de saber porque alguns conseguiram e outros não.
[13] Comentário enviado por M4iir1c10 em 23/06/2007 - 08:14h
Excelente! Agora me diz uma coisa, quando eu comecei com o Linux o kde estava na versao 3.0 e quando eu posicionava o mouse sobre um icone de um arquivo de audio ele tocava sem eu abrir ele, tipo um preview do arquivo, so que isso nao acontece mais, mesmo com a opcao de preview de audio no konqueror estar selecionado nao ouco nada, vc sabe como resolver? ou esse artigo ja da conta desse recado? (ainda nao fiz o teste)
[14] Comentário enviado por removido em 13/02/2010 - 20:04h
bom que funciona com a maioria, mas pra mim só o esd funciona blza aqui...
alsa faz travar o som quando toco midi, também deixa o som dos jogos em sdl chiando e travando até o vídeo...
como o artigo é antigo, o esd nao devia ser bom, já que usava até 100% de cpu, mas aqui no meu tá de boa, tá melhor que o pulse, o alsa...