12

所以我试图让我的 linux 服务器使用蓝牙播放从我的 Android 手机发送的音乐(linux 机器是 A2DP 接收器,手机是源)。到目前为止,我所做的是:

  • 安装 bluez 并启用 audiosource/audiosink
  • 配对电话和服务器
  • 从手机连接到服务器(手机说它正在通过蓝牙传输音频)

但我什么也听不见。此外,互联网上的大多数指南都假设使用 Pulseaudio,我更喜欢使用 ALSA。

我目前在 /etc/asound.conf 中有以下内容:

pcm.!default{
    type bluetooth
    profile "auto"
}

我正在运行 Bluez v4.99 和 Alsa v1.0.25。有任何想法吗?

4

4 回答 4

12

我知道这是一篇旧帖子,但希望答案对目前从事此工作的人有用。

您可以使用 /etc/bluetooth/audio.conf,这是系统范围的文件,或 ~/.asoundrc,这是您的本地文件。两者都由 BlueZ/ALSA 读取。但是,我认为您需要在配置文件 zB 中包含 MAC 地址:

pcm.btheadset {
    type bluetooth
    device "XX:XX:XX:XX:XX:XX" #MAC address
    profile "auto"
}

我为此找到的最佳资源是:

1) James B 的博文:Bluez 一定是 Linux 中保存最完好的秘密之一
他解释了 BlueZ 和 ALSA 之间的结构和接口,这是我在 Internet 上其他任何地方都找不到的。

2)他的第二篇代码:Bluez A2DP AudioSink for ALSA

3) ALSA 站点,它介绍了 pcm 插件的结构,但并没有很好地解释它们。

4) 一些 ALSA 插件教程:ALSA wiki

一些有用的命令:

$sudo service bluetooth restart
$sudo alsa force-reload

在更改 asoundrc 或 audio.conf 文件后运行这些。

于 2014-03-24T09:15:37.573 回答
1

在这里您可以找到使用 ALSA 或 Pulseaudio 配置蓝牙的手册

-在 Linux Mint 17.3 Mate,64 位/Ubuntu 14.04 Mate,64 位上测试-

如何在没有 PA 的情况下使 ALSA 和蓝牙一起工作

这部分适用于没有 Pulseaudio 的纯 ALSA 系统,例如 KXStudio、QStudio64、Tango studio..!

确保已卸载 Pulseaudio,并且您的声卡已在 ALSA 中正确配置!

  • 删除 /home/USERNAME/.config/pulse 中的脉冲音频 cookie 和文件

    1. 修改你的bluetooth-audio.conf:输入:

    gksudo puma /etc/bluetooth/audio.conf

    # This section contains options which are not specific to any
    # particular interface
    

    [常规] Enable=Socket

保存文件。

  1. 设置~/.asoundrc文件类型:

须藤 hcitool 扫描

正在扫描... XX:XX:XX:XX:XX:XX 立体声耳机

在您的主文件夹中创建一个名为 .asoundrc 的隐藏文件!并写入:

    pcm.!default {
        type plug
        slave.pcm {
             type bluetooth
             device "XX:XX:XX:XX:XX:XX"
             profile "auto"

        }
}

将“XX:XX..”替换为您设备的地址。

保存文件!

更改 asoundrc 或 audio.conf 文件后运行这些:

sudo service bluetooth restart
sudo alsa force-reload

或重新启动您的计算机!—————————————————————————————————————————————

转到任务栏上的blueman-applet,搜索并设置您的新设备!注意:某些蓝牙设备默认需要密码(例如 0000)

  • 而其他一些则采用随机配对。让您找到并配对的设备保持“信任”!

通过A2DP将您的设备连接为音频!

———————————————————————————————————————</p>

如果您的设备与您的系统连接,您可以通过蓝牙使用 totem (gui)、vlc (gui+终端)、mplayer (终端)、qmmp (gui)、banshee 和浏览器播放声音,同时将播放器中的输出设置为“默认” !

———————————————————————————————————————</p>

将主文件夹中的 .ASOUNDRC 重命名为“.ASOUNDRC_OFF”,以在不使用蓝牙的情况下获取旧系统设置!

输入:mv /home/USERNAME/.asoundrc /home/USERNAME/.asoundrcOFF -> 禁用蓝牙特定的 asoundrc

输入:mv /home/USERNAME/.asoundrcOFF /home/USERNAME/.asoundrc -> 启用它!

替代方案

在您的主文件夹中使用 .asoundrc 制作两个“脚本”来激活/停用蓝牙:

创建一个空文件并写入/粘贴:

#!/bin/bash
mv /home/USERNAME/.asoundrc /home/USERNAME/.asoundrcOFF
or:
#!/bin/bash
cd /home/USERNAME/
mv .asoundrc .asoundrcOFF

要再次为蓝牙激活 .asoundrc,请使用以下条目创建另一个文件:

#!/bin/bash
mv /home/USERNAME/.asoundrcOFF /home/USERNAME/.asoundrc

或者:

#!/bin/bash
cd /home/USERNAME/
mv .asoundrcOFF .asoundrc

使文件可执行并使用“用终端打开”运行它们!现在你有两个“按钮”来打开或关闭蓝牙声音。

给他们单独的图标:;-)

———————————————————————————————————————-

球员

——————</p>

推荐使用totem、Qmmp 或Banshee-player——因为没有什么比玩和听更多的了!图腾播放器也显示视频。

VLC 播放器需要“默认”声音驱动才能使蓝牙正常工作!

签入:/home/USERNAME/.config/vlc/vlcrc

>>line1666<< 中的 alsa-audio-device 是:

# ALSA Device Name (string)
alsa-audio-device=default

使用此命令通过终端使用播放器:要播放音乐,请键入:

播放器

———––</p>

mplayer /home/USERNAME/Musik/1.mp3

如果您听不到声音或出现错误,请尝试:

mplayer -ao alsa:device=default /home/USERNAME/Musik/1.mp3

VLC-播放器

—————-

cvlc /home/USERNAME/Musik/1.mp3
vlc /home/USERNAME/Musik/1.mp3
rvlc /home/USERNAME/Musik/1.mp3
To add whole directories type:
rvlc add /home/USERNAME/Musik/

类型:开始/停止/下一步...导航!

或使用 vlc-gui。

————————————————————————————————————————————

要使用带有图形界面的mplayer,您必须安装 gui-package: 输入:

sudo apt-get install mplayer-gui

通过 Ctrl-Alt-T 打开终端并使用以下命令。使用这些行并一一键入/复制以避免混淆(!):

cd /usr/share/mplayer/skins/default

for FILE in *.png; do sudo convert “$FILE” -define png:format=png24 “$FILE”; done

cd /usr/share/mplayer/skins; sudo rm default; sudo ln -s Blue default

————————————————————————————————————————</p>

现在您可以启动 mplayer-gui 而不会出错!

如果您更喜欢终端类型:

gmplayer /home/USERNAME/Musik/1.mp3

或者

gmplayer -ao alsa:device=default /home/USERNAME/Musik/1.mp3
if you have problems!

没有 gui 的终端命令:

mplayer /DIRECTION/TO/FILE

可用的输出模块和驱动器:

mplayer -vo help

——————————————————————————

带 PULSEAUDIO 的蓝牙

———————————————————--------

对于带有 pulseaudio 的 Linux 系统:

(1.) 编辑 /etc/bluetooth/audio.conf 并取消注释以下行:

AutoConnect=true
  1. 运行以下命令为 blueman 和相关模块安装最新的软件包:

    sudo add-apt-repository ppa:blueman/ppa

    sudo apt-get 更新

    sudo apt-get upgrade blueman 在此处输入代码

(3.) 检查 /etc/pulse/default.pa 中是否添加了以下行:

.ifexists module-bluetooth-discover.so
load-module module-bluetooth-discover
.endif

如果没有,请添加行。

重启!

  1. 运行新的blueman-applet

右键单击面板小程序并打开蓝牙。你的蓝牙设备的旧配置仍然存在,删除它。右键单击 blueman-panel 小程序并选择设置新设备。完成您设备的向导。(如果您在“配对”时遇到问题,请重新启动系统并跳过此步骤!)

现在你得到一个连接的蓝牙设备!

要通过它发送/收听音频,只需按照以下两个步骤操作:

  • 在任务栏中右键单击打开Mate-volume control-settings(或 pavucontrol),浏览至“硬件” - 并使用下拉菜单“关闭”所有其他声卡的内置音频配置文件</p>

  • 以便蓝牙设备激活!

  • 使用其他下拉菜单将蓝牙设备设置为使用A2DP

现在启动totem-player或vlc(带有pulseaudio-output)将音频发送到蓝牙!

享受你的声音!;-)

WLAN问题

————————— 如果您在连接到蓝牙设备后看到 WiFi 连接断开,请运行以下命令:

$ echo “options iwlwifi 11n_disable=1 bt_coex_active=0 power_save=0 auto_agg=0 swcrypto=1” |
sudo tee -a /etc/modprobe.d/iwlwifi.conf > /dev/null

chalee 为 LM 17.3 (Rosa) MATE 和 Ubuntu 14.04 测试了 2017 年:

http://mayastudio.tumblr.com/bluetooth

于 2017-02-10T20:36:25.930 回答
0

我的猜测是您的音频路径没有将蓝牙路由到您的扬声器。我已经看到了类似的问题,这是通过从以下链接手动执行步骤 5“将 PulseAudio 蓝牙源连接到 PulseAudio ALSA 接收器”修复的:http: //jprvita.wordpress.com/2009/12/15/1-2-3- 4-a2dp-流/

于 2012-09-09T15:03:30.300 回答
-1

我只是尝试做同样的事情,我使用的是 Fedora 19,所以你的里程数会有所不同。这些是我采取的步骤。

  1. 使计算机可被发现
  2. 将手机与电脑配对(旁边有耳机标志)
  3. 在我的 HTC 手机上,我在配对时点击了“连接”
  4. 进入 gnome3 的声音设置
  5. 转到输入选项卡
  6. 为您的手机选择蓝牙项目
  7. 可能调音量...
于 2013-07-16T23:47:53.610 回答