Profil karty Pulseaudio do Focusrite Scarlett 18i8

10

To jest moje pierwsze pytanie tutaj i nie jestem pewien, jakie dane należy uwzględnić w tym pytaniu. Zapytaj mnie, czy potrzebujesz mnie, aby podać więcej informacji.

Niedawno dostałem interfejs audio Focusrite Scarlett 18i8. Jak dotąd działa bardzo dobrze w moim DAW (przy użyciu ALSA i ręcznego przypisywania kanałów), ale pozostaje jedna irytująca rzecz: Pulseaudio rozpoznaje urządzenie jako wyjście 7.1, ale 18i8 ma 4 wyjścia stereo! Dlatego VLC (i inne aplikacje) odtwarza filmy w trybie 7.1, a nie stereo tak, jak powinno.

Przeszukałem trochę i zobaczyłem kilka rzeczy na temat profili kart Pulseaudio oraz poleceń pactl i pacmd. Właśnie dlatego próbowałem:

pactl set-card-profile 3 output:analog-stereo

ale zwraca (przetłumaczone przeze mnie):

Failure: no such entity

Spojrzenie na

pacmd list-cards 

mówi dlaczego:

4 card(s) available.

...

index: 3
name: <alsa_card.usb-Focusrite_Scarlett_18i8_USB_1000657A-00-USB>
driver: <module-alsa-card.c>
owner module: 8
properties:
    alsa.card = "3"
    alsa.card_name = "Scarlett 18i8 USB"
    alsa.long_card_name = "Focusrite Scarlett 18i8 USB at usb-0000:00:1d.0-1.2, high speed"
    alsa.driver_name = "snd_usb_audio"
    device.bus_path = "pci-0000:00:1d.0-usb-0:1.2:1.0"
    sysfs.path = "/devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.2/2-1.2:1.0/sound/card3"
    udev.id = "usb-Focusrite_Scarlett_18i8_USB_1000657A-00-USB"
    device.bus = "usb"
    device.vendor.id = "1235"
    device.vendor.name = "Novation EMS"
    device.product.id = "8014"
    device.product.name = "Scarlett 18i8 USB"
    device.serial = "Focusrite_Scarlett_18i8_USB_1000657A"
    device.string = "3"
    device.description = "Scarlett 18i8 USB"
    module-udev-detect.discovered = "1"
    device.icon_name = "audio-card-usb"
profiles:
    output:analog-surround-71: Analog Surround 7.1 Ausgang (priority 700, available: unknown)
    off: Aus (priority 0, available: unknown)
active profile: <output:analog-surround-71>
sinks:
    alsa_output.usb-Focusrite_Scarlett_18i8_USB_1000657A-00-USB.analog-surround-71/#2: Scarlett 18i8 USB Analog Surround 7.1
sources:
    alsa_output.usb-Focusrite_Scarlett_18i8_USB_1000657A-00-USB.analog-surround-71.monitor/#4: Monitor of Scarlett 18i8 USB Analog Surround 7.1
ports:
    analog-output: Analoge Ausgabe (priority 9900, latency offset 0 usec, available: unknown)
        properties:

Jedynym profilem dostępnym dla tego urządzenia jest analog-surround-71, ale aplikacja wyświetla wszystkie rodzaje trybów:

user@userbuntu:~$ aplay -L

...

sysdefault:CARD=USB
    Scarlett 18i8 USB, USB Audio
    Default Audio Device
front:CARD=USB,DEV=0
    Scarlett 18i8 USB, USB Audio
    Front speakers
surround40:CARD=USB,DEV=0
    Scarlett 18i8 USB, USB Audio
    4.0 Surround output to Front and Rear speakers
surround41:CARD=USB,DEV=0
    Scarlett 18i8 USB, USB Audio
    4.1 Surround output to Front, Rear and Subwoofer speakers
surround50:CARD=USB,DEV=0
    Scarlett 18i8 USB, USB Audio
    5.0 Surround output to Front, Center and Rear speakers
surround51:CARD=USB,DEV=0
    Scarlett 18i8 USB, USB Audio
    5.1 Surround output to Front, Center, Rear and Subwoofer speakers
surround71:CARD=USB,DEV=0
    Scarlett 18i8 USB, USB Audio
    7.1 Surround output to Front, Center, Side, Rear and Woofer speakers
iec958:CARD=USB,DEV=0
    Scarlett 18i8 USB, USB Audio
    IEC958 (S/PDIF) Digital Audio Output
dmix:CARD=USB,DEV=0
    Scarlett 18i8 USB, USB Audio
    Direct sample mixing device
dsnoop:CARD=USB,DEV=0
    Scarlett 18i8 USB, USB Audio
    Direct sample snooping device
hw:CARD=USB,DEV=0
    Scarlett 18i8 USB, USB Audio
    Direct hardware device without any conversions
plughw:CARD=USB,DEV=0
    Scarlett 18i8 USB, USB Audio
    Hardware device with all software conversions

Oto moje pytanie:

Czy można ręcznie dodać profil Pulseaudio, czy muszę coś głębiej zmienić w ALSA? Jeśli tak, czy ktoś mógłby mi powiedzieć jak?

Z góry dziękuję!

Lucaelin
źródło
Czy znalazłeś rozwiązanie, znalazłem ten post na forach ArchLinux, które wydają się twoje?
user.dz
1
wierzcie lub nie, to nie jest moje! : DI nigdy nie otrzymałem rozwiązania, ale obejście tego problemu przy korzystaniu z jack2 z zlewem jack pulseaudio ... Zajmę się linkami do wiki, jak tylko będę miał czas.
lucaelin
Fajnie, że masz działające obejście. Czy możesz to opublikować jako odpowiedź z instrukcją. Będzie to bardzo pomocne dla nowych użytkowników, próbujących to rozgryźć. (Po prostu opublikowałem swoje odkrycia jako odpowiedź, aby mogli przeczytać o aktualnym statusie)
user.dz

Odpowiedzi:

2

Tak, możesz utworzyć profil pulseaudio, aby Focusrite 18i8 działał w stereo.

Utwórz plik /lib/udev/rules.d/91-pulseaudio.rules:

SUBSYSTEM!="sound", GOTO="pulseaudio1_end"
ACTION!="change", GOTO="pulseaudio1_end"
KERNEL!="card*", GOTO="pulseaudio1_end"

SUBSYSTEMS=="usb", ATTRS{idVendor}=="1235", ATTRS{idProduct}=="8014", ENV{PULSE_PROFILE_SET}="focusrite-18i8.conf"

LABEL="pulseaudio1_end"

I utwórz plik /usr/share/pulseaudio/alsa-mixer/profile-sets/focusrite-18i8.conf:

[General]
auto-profiles = no

[Mapping analog-out]
description = Analog Outputs
device-strings = hw:%f
channel-map = left,right,aux0,aux1,aux2,aux3,aux4,aux5
direction = output

[Mapping analog-in]
description = Analog Inputs
device-strings = hw:%f
channel-map = left,right,aux0,aux1,aux2,aux3,aux4,aux5,aux6,aux7,aux8,aux9,aux10,aux11,aux12,aux13,aux14,aux15
direction = input

[Profile output:analog-out+input:analog-in]
description = Analog Stereo
output-mappings = analog-out
input-mappings = analog-in

Następnie uruchom ponownie komputer lub uruchom polecenia:

sudo udevadm trigger -ssound

pulseaudio -k

W odpowiedzi na @Sneetsher: Focusrite Scarlett 18i8 wydaje się teraz działać dobrze z Linuksem 3.19 i nowszymi. Mikser wewnętrzny można skonfigurować za pomocą, alsamixera ustawienia można zapisać za pomocą sudo alsactl store. Możliwe jest także zmienianie innych ustawień (takich jak impedancja wejściowa między instrumentem (Hi-Z) a poziomem linii lub przełączanie padu wejściowego między 0 a -10dB) za pomocą alsamixer.

Crumbletown
źródło
Dziękuję bardzo! Właśnie tego szukałem!
Lucaelin
0

Z tego, co udało mi się zebrać, wewnętrzny mikser Focusrite Scarlett 18i8 nie współpracuje jeszcze z Linux / ALSA. Działa tylko jako bezpośrednie urządzenie wejścia / wyjścia audio.

  • Producent nie obsługuje systemu Linux

    Produkty Linux i Focusrite / Novation

    Wielu naszych użytkowników prosi o pomoc w korzystaniu z Saffire 6 USB w systemie Linux. Zanim do tego dojdziemy, pomyślałem, że przydatne będzie wyjaśnienie stanu naszych interfejsów w systemie Linux, a następnie opublikuję informacje, które będą przydatne dla odważnych programistów sterowników, którzy chcą zaatakować niedziałające urządzenia.

    Pamiętaj, że jest on poskładany z tyłu mojej głowy, więc może być niedokładny - postaram się go poprawić i zaktualizować najlepiej jak potrafię.

    Na koniec, proszę zrozumieć, że Focusrite oficjalnie nie obsługuje Linuksa. Chociaż niektóre osoby widzą pozytywne komentarze w komentarzach, a niektóre z naszych produktów są „znane z działania”, przebieg może być różny. Powodzenia!

    Możesz przeczytać w komentarzu na temat niektórych inicjatyw rozwojowych. Gdy sprawdzam dwa repozytorium github, wyglądają na martwe projekty.

    https://github.com/smilingthax/alsa-driver_scarlett
    https://github.com/trrichard/ScarlettMixer

    Pierwszy ma nie połączone żądanie ściągnięcia łatki do jądra Linux v3.8.0 dla miksera s18i8.

  • Oto kolejny wątek z listy mailingowej ALSA: [PATCH] ALSA: usb-audio: Dodaj dziwactwo do Focusrite Scarlett 18i8

    Ponownie testując to, widzę, że masz rację. Mikser nadal nie działa, ale przynajmniej nadaje się do odtwarzania / nagrywania / midi. Zignoruj ​​tę łatkę.

    Dzięki, --chris j arges

user.dz
źródło