У меня есть встроенная звуковая карта, а также подключенная Bluetooth-гарнитура. Я настроил устройство Bluetooth в /etc/asound.conf
:
# cat /etc/asound.conf
pcm.bluetooth {
type bluetooth
device 12:34:56:78:9a:bc
profile "auto"
}
ctl.bluetooth {
type bluetooth
}
По умолчанию встроенная карта используется для всех звуков (по-видимому, встроенную карту по умолчанию даже не нужно указывать в asound.conf)
Когда я хочу, чтобы приложение использовало мое устройство Bluetooth Alsa, я должен указать его, например:
mplayer -ao alsa:device=bluetooth file.mp3
Это нормально для меня. Но мне нужен способ сказать моим браузерам использовать устройство Bluetooth Alsa.
Я нашел способ, как запустить хром, используя параметр --alsa-output-device
командной строки:
chromium --alsa-output-device=bluetooth
Мне нужен аналогичный способ запуска Firefox, но я не смог найти ни одного.
Как я могу сказать Firefox использовать мое устройство Bluetooth Alsa без необходимости изменения /etc/asound.conf
или ~/.asoundrc
каждый раз?
ОБНОВИТЬ:
Я следовал совету @ lgeorget и /etc/asound.conf
теперь мой выглядит так:
pcm.!default {
type plug
slave.pcm {
@func getenv
vars [ ALSAPCM ]
default "hw:0,0"
}
}
pcm.bluetooth {
type bluetooth
device 12:34:56:78:9a:bc
profile "auto"
}
ctl.bluetooth {
type bluetooth
}
Когда я запускаю Firefox с использованием ALSAPCM=bluetooth firefox
, я получаю звук в моей гарнитуре Bluetooth, но Firefox работает на 100% ЦП (на моих 4 ядрах), и видео на YouTube воспроизводится с 10-кратной скоростью (и звук соответственно (искажен). понять, что происходит. Когда я запускаю Firefox без ALSAPCM=bluetooth
, все в порядке, и звук воспроизводится на устройстве Alsa по умолчанию.
Ответы:
Очевидно, что для Firefox нет опций, но вы можете манипулировать выводом ALSA через переменные окружения.
Попробуйте например:
В качестве альтернативы, если это не сработает, попробуйте немного написать скрипт .asoundrc
(замените "hw: hdmi" на ваш обычный PCM). Затем, если вы хотите, чтобы программа использовала определенный PCM, используйте:
Источники:
источник
firefox
работает на 100% CPU (на моих 4 ядрах), и видео с YouTube воспроизводится с 10-кратной скоростью. Я не понимаю, что происходит. Когда я запускаю Firefox безALSAPCM=bluetooth
, все в порядке, и звук воспроизводится на устройстве Alsa по умолчанию.ALSAPCM=bluetooth
скорость видео меняется на 10х.Это похоже на воплощение этой ошибки . Предлагаются некоторые решения , но, похоже, они специфичны для Intel.
Попробуйте использовать pulseaudio. Если это работает, вы можете перенаправить ваши программы ALSA на pulseaudio следующим образом
asound.conf
:Если это не помогает, попробуйте добавить
rate 44100
илиrate 48000
в свойpcm.bluetooth
разделasound.conf
. Может быть, ALSA придет в себя тогда.Вы также можете попробовать Html5 Youtube Video Controller , хотя я сомневаюсь, что это поможет.
источник
ALSA lib audio/pcm_bluetooth.c:1449:(bluetooth_parse_config) Invalid type for rate
. Похоже, блютуз не поддерживаетrate
параметр.Примечание: Текущие версии Firefox, похоже, игнорируют ~ / .asound.conf по неизвестным причинам.
Если вы не используете pulseaudio (это в основном ненужный слой поверх alsa, несмотря на то, что большинство дистрибутивов его устанавливают), то в большинстве случаев вам нужно только выбрать другой аудиовыход по умолчанию.
Это можно сделать с помощью следующего
.asound.conf
в вашем доме:Замена
N
его небольшим целым числом, 0 для вашей первой звуковой карты (по умолчанию), 1 для второй и т. Д.!
в!default
не отрицание здесь! Это переопределение ранее (общесистемного определения) глобального alsa.conf.Более сложные конфигурации можно прочитать здесь .
источник