LINUX.ORG.RU

Firefox alsa

 , ,


1

2

установлен firefox 63 USE=dbus gmp-autoupdate hwaccel screenshot, есть apulse, есть alsa. Без настроек alsa firefox выводит звук нормально. Если задаешь выход через hdmi

pcm.!default {
        type hw
        card 1
        device 7
}
звук благополучно пропадает... способы из wiki и opennet не работают. Звук в системе работает нормально. Подскажите, пожалуйста, как диагностировать эту проблему, куда смотреть...

type hw

Из-за прямого подключения к hw получится открыть устройство только с теми параметрами, которые драйвер железа поддерживает напрямую. Если, скажем, железо может воспроизводить только семплы S16LE, а ты попытаешься выводить FLOAT32LE, ничего не выйдет.

Насколько мне известно, Firefox всегда использует 32-bit float при выводе звука. Так что удостоверься, что твоё железо поддерживает такой формат. Или используй плагин plug в конфигурации ALSA.

i-rinat ★★★★★ ()
Ответ на: комментарий от anonymous
aplay -L
null
    Discard all samples (playback) or generate zero samples (capture)
default:CARD=PCH
    HDA Intel PCH, ALC662 rev3 Analog
    Default Audio Device
sysdefault:CARD=PCH
    HDA Intel PCH, ALC662 rev3 Analog
    Default Audio Device
front:CARD=PCH,DEV=0
    HDA Intel PCH, ALC662 rev3 Analog
    Front speakers
surround21:CARD=PCH,DEV=0
    HDA Intel PCH, ALC662 rev3 Analog
    2.1 Surround output to Front and Subwoofer speakers
surround40:CARD=PCH,DEV=0
    HDA Intel PCH, ALC662 rev3 Analog
    4.0 Surround output to Front and Rear speakers
surround41:CARD=PCH,DEV=0
    HDA Intel PCH, ALC662 rev3 Analog
    4.1 Surround output to Front, Rear and Subwoofer speakers
surround50:CARD=PCH,DEV=0
    HDA Intel PCH, ALC662 rev3 Analog
    5.0 Surround output to Front, Center and Rear speakers
surround51:CARD=PCH,DEV=0
    HDA Intel PCH, ALC662 rev3 Analog
    5.1 Surround output to Front, Center, Rear and Subwoofer speakers
surround71:CARD=PCH,DEV=0
    HDA Intel PCH, ALC662 rev3 Analog
    7.1 Surround output to Front, Center, Side, Rear and Woofer speakers
iec958:CARD=PCH,DEV=0
    HDA Intel PCH, ALC662 rev3 Digital
    IEC958 (S/PDIF) Digital Audio Output
hdmi:CARD=NVidia,DEV=0
    HDA NVidia, HDMI 0
    HDMI Audio Output
[b]hdmi:CARD=NVidia,DEV=1
    HDA NVidia, HDMI 1
    HDMI Audio Output[/b]
hdmi:CARD=NVidia,DEV=2
    HDA NVidia, HDMI 2
    HDMI Audio Output

т.е. мне нужно указать defaults.pcm.!card 1 defaults.ctl.!card 1 а чем отличается aplay -L от aplay -l?

SmilePlz ()

Причём тут пульса то? Firefox 63.0.3 нормально без пульсы работает, в asoundrc только dmix с ресамплером настроены, потому что без ручной настройки все приложения цепляют эксклюзивный доступ к звуковухе и звук будет только в том приложении. В кедах наверно нормально, всё, что через phonon выводит, будет работать. Приходится жертвовать чем-то (и ресамплер и микшер понижают качество звука). Сейчас вообще есть карты с аппаратным микшером потоков?

anonymous ()
Ответ на: комментарий от anonymous

У меня не работает. Т.е. ты открываешь ютуб в браузере и аудиоплеер не сможет параллельно работать — это очень заметно. Зависит от карты, видимо.

anonymous ()

Насколько мне известно, разработчики Firefox перестали компилировать официальные бинарные сборки, которые находятся в http://ftp.mozilla.org/pub/, с ключом --enable-alsa. Но разве кто-нибудь пользуется этими сборками? У всех - сборка из дистрибутива Linux. И там, скорее всего, ALSA разрешена

В Gentoo должен быть USE-флаг ALSA. Наверное, это самый беспроблемный дистр в этом плане

А ещё я читал, что в официальном архиве с исходным кодом Firefox, ALSA сломали. А вот патчи, которые исправляют: http://www.opennet.ru/openforum/vsluhforumID3/113599.html#17 Хотя возможно, что они уже в апстриме

ZenitharChampion ★★★★★ ()
Ответ на: комментарий от ZenitharChampion

флага нету, но работает из «каробки». Действительно микшер dmix решает проблему, т.к. в gentoo по умолчанию это не работает. Спасибо всем за наводку. Да и pulsa всё еще шипит =)

SmilePlz ()

Во-первых, нужен вывод about:buildconfig

Генту - суть топорище, когда нужно конфигурировать отдельно взятую программу.

Например. Выполни команду ./mach configure в корне src Firefox.

Порадуют ли очи твои такие строки:

--enable-optimize=-O3
--enable-hardening
--enable-jemalloc
--enable-jack
--enable-av1
--enable-webrender
--enable-alsa
смею полюбопытствовать?

SturmFuerer ()
Ответ на: комментарий от anonymous

Познакомь себя ближе с аппаратурой своей.

https://lacocina.nl/detect-alsa-output-capabilities

linux@org.ru ~ % bash <(wget -q -O - "https://lacocina.nl/alsa-capabilities")                                               :(

Redirecting output to ‘wget-log.1’.
 1) Analog alsa audio output interface `hw:0,0'
 - device name       = PCH                                                         
 - interface name    = ALC662 rev3 Analog                                          
 - usb audio class   = (n/a)                                                       
 - character device  = /dev/snd/pcmC0D0p                                           
 - encoding formats  = S16_LE, S32_LE                                              
 - monitor file      = /proc/asound/card0/pcm0p/sub0/hw_params                     
 - stream file       = (n/a)                                                       

 2) Analog alsa audio output interface `hw:0,3'
 - device name       = PCH                                                         
 - interface name    = HDMI 0                                                      
 - usb audio class   = (n/a)                                                       
 - character device  = /dev/snd/pcmC0D3p                                           
 - encoding formats  = S16_LE, S32_LE                                              
 - monitor file      = /proc/asound/card0/pcm3p/sub0/hw_params                     
 - stream file       = (n/a)                                                       

 3) USB Audio Class Digital alsa audio output interface `hw:1,0'
 - device name       = Device                                                      
 - interface name    = USB Audio                                                   
 - usb audio class   = 3 - sync (?)                                                
 - character device  = /dev/snd/pcmC1D0p                                           
 - encoding formats  = S24_3LE, S16_LE                                             
 - monitor file      = /proc/asound/card1/pcm0p/sub0/hw_params                     
 - stream file       = /proc/asound/card1/stream0                                  
 

- usb audio class = 3 - sync (?) - годно и лучше не бывает.

SturmFuerer ()