Como obter um trabalho da placa de som NI Traktor Audio 2 com o Mixxx

5

Eu tenho uma placa de som NI Traktor Audio 2 que eu gostaria de trabalhar com Mixxx, mas parece que não tenho nenhum sucesso até agora. O cartão parece ser suportado no Ubuntu e parece funcionar bem com o ALSA, mas não consigo selecioná-lo no Mixxx e não tenho certeza se é algo que eu possa fazer para ver (por exemplo) .

Então, para fins de teste, na linha de comando, posso executar aplay para verificar cada canal:

aplay -D plughw:2,0,0 test.wav

e

aplay -D plughw:2,0,1 test.wav

Isso funciona bem: eu posso ouvir o som do teste em cada canal (A e B)

A saída relevante para este cartão usando aplay -D é:

hw:CARD=TraktorAudio2,DEV=0
     Traktor Audio 2, Traktor Audio 2
     Direct hardware device without any conversions
plughw:CARD=TraktorAudio2,DEV=0
     Traktor Audio 2, Traktor Audio 2
     Hardware device with all software conversions

A partir desses 2 itens na saída, plughw é o que funciona, enquanto hw não.

O problema é que Mixxx só me permite selecionar o cartão hw , que parece não funcionar. Gostaria de poder selecionar o cartão plughw , que é o que está funcionando.

Eu tentei suspender o Pulse Audio como sugerido por esta pergunta , mas isso não parece funcionar. Eu também brinquei com um arquivo .asoundrc semelhante a este nesta resposta (que era para um modelo mais antigo desta placa de som), mas também sem sucesso.

Alguma idéia de como fazer Mixxx mostrar a placa certa (e canal, enquanto estamos nisso)?

Obrigado!

    
por David Planella 08.11.2012 / 22:36

2 respostas

3

Ok, embora eu ainda não entenda por que o Mixxx não pode selecionar a placa de som certa, eu consegui encontrar uma solução que funciona para mim no wiki Mixxx . Eu modifiquei o arquivo .asoundrc de lá um pouco para deixar claro qual canal eu estou escolhendo, mas é essencialmente a mesma configuração.

Em resumo, o que fiz foi criar um arquivo chamado .asoundrc com o conteúdo abaixo e colocá-lo na minha pasta pessoal.

O que funciona:

  • Agora posso selecionar cada canal individual (A ou B) como dispositivos de som separados no Mixxx, o som é emitido em cada canal correto

O que não funciona:

  • O dispositivo de som resultante da combinação de canais ( TraktorAudio2ChannelAB ) produz algum som distorcido

O que eu não descobri:

  • Por que no Mixxx para cada dispositivo de som individual (por exemplo, TraktorAudio2ChannelA ) eu tenho uma opção de 128 canais (veja a captura de tela abaixo), onde eu esperaria apenas "Canais 1 - 2"

Portanto, quaisquer comentários ou sugestões foram apreciados!

arquivo de configuração do ALSA (~ / .asoundrc)

#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
# Native Instruments :: Traktor Audio 2 ALSA Configuration
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
#
#    Device                     Channels        Ports
#    ------                     --------        -----
#    TraktorAudio2ChannelA             2         12xx
#    TraktorAudio2ChannelA             2         xx34
#
#    TraktorAudio2ChannelAB            4         1234

#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
# TraktorAudio2Channel{A,B} :: Raw 1x1 Stereo Devices
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
pcm.TraktorAudio2ChannelA { type plug; slave.pcm "hw:TraktorAudio2,0,0"; }
pcm.TraktorAudio2ChannelB { type plug; slave.pcm "hw:TraktorAudio2,0,1"; }

# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# TraktorAudio2ChannelAB :: Multi 2x2 Stereo Device (Ports 1-4, Channels A+B)
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
pcm.TraktorAudio2ChannelAB {
        type multi

        # Bind hardware devices
        slaves.a.pcm TraktorAudio2ChannelA
        slaves.a.channels 2
        slaves.b.pcm TraktorAudio2ChannelB
        slaves.b.channels 2

        # Bind channels to virtual device
        bindings.0.slave a
        bindings.0.channel 0
        bindings.1.slave a
        bindings.1.channel 1
        bindings.2.slave b
        bindings.2.channel 0
        bindings.3.slave b
        bindings.3.channel 1
}
    
por David Planella 09.11.2012 / 10:10
3

Obrigado, isso me ajudou a fazer meu TRAKTOR 2 trabalhando com o Mixxx, que usa o ALSA. Para outros aplicativos, que usam principalmente o pulseaudio no ALSA, ele costumava funcionar imediatamente. Mas, de repente, depois de algumas atualizações do Ubuntu, parou de funcionar.

Eu poderia corrigir esse problema adicionando um arquivo de configuração ao pulseaudio.

Como root, vá para / usr / share / pulseaudio / alsa-mixer / profile-sets. Você verá que há arquivos conf para o audio6, audio8, etc, mas nada para o áudio 2. Embora, surpreendentemente, um arquivo chamado native-instruments-traktor-audio2.conf seja referenciado em /lib/udev/rules.d/ 90 pulseaudio.rules. Essa é a fonte do problema, talvez o arquivo tenha sido omitido pelos desenvolvedores, e o pulseaudio reclama por não encontrá-lo.

É fácil criar este arquivo, copiei o arquivo audio6 e limpei tudo sobre entradas - já que o áudio2 tem apenas saídas. Então tem que ser nomeado exatamente: native-instruments-traktor-audio2.conf

Agora funciona de novo, e como bônus eu posso escolher entre os canais A e B. Anteriormente eu estava restrito ao canal A em pulseaudio.

Aqui está o meu arquivo, espero que possa ajudar alguém. Eu acho que essa omissão será corrigida em uma atualização pulseaudio para vir.

[General]
auto-profiles = no

[Mapping analog-stereo-a]
description = Analog Stereo Channel A
device-strings = hw:%f,0,0
channel-map = left,right

[Mapping analog-stereo-b-output]
description = Analog Stereo Channel B (Headphones)
device-strings = hw:%f,0,1
channel-map = left,right
direction = output

[Profile output:analog-stereo-all]
description = Analog Stereo Duplex Channels A, B (Headphones)
output-mappings = analog-stereo-a analog-stereo-b-output
priority = 3
skip-probe = yes

[Profile output:analog-stereo-a]
description = Analog Stereo Output Channel A
output-mappings = analog-stereo-a
priority = 1
skip-probe = yes

[Profile output:analog-stereo-b]
description = Analog Stereo Output Channel B (Headphones)
output-mappings = analog-stereo-b-output
priority = 2
skip-probe = yes
    
por user236309 16.01.2014 / 02:56