繁体   English   中英

没有脉冲音频的A2DP接收器

[英]A2DP sink without pulseaudio

因此,我试图使我的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。 有任何想法吗?

我知道这是一篇过时的文章,但希望答案对目前正在研究此问题的人有用。

您可以使用/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中最保密的秘密之一

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

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

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

一些有用的命令:

$sudo service bluetooth restart
$sudo alsa force-reload

更改asoundrc或audio.conf文件后,请运行它们。

在这里,您可以找到使用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 pluma /etc/bluetooth/audio.conf

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

    [常规]启用=套接字

保存文件。

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

sudo hcitool扫描

扫描中... XX: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将设备作为AUDIO连接!

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

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

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

将家用文件夹中的.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

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

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

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

选手们

——————

建议使用图腾,Qmmp或Banshee播放器-因为除了玩和听,别无其他! 图腾播放器也显示视频。

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

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

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

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

使用此命令在终端机上使用播放器:要播放音乐,请键入:

MPlayer

--——––

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软件包:输入:

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

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

现在,您可以正常启动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控制设置(或pavucontrol) ,浏览到“硬件”-并使用下拉菜单将所有其他声卡的内置音频配置文件“关闭”

  • 这样蓝牙设备才能启动!

  • 使用另一个下拉菜单将蓝牙设备设置为使用A2DP

现在启动图腾播放器或vlc(带有pulseaudio输出),将音频发送到蓝牙!

享受你的声音! ;-)

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

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

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

  1. 使计算机可发现
  2. 将手机与计算机配对(旁边带有耳机徽标)
  3. 在HTC手机上,我点击了配对上的“连接”
  4. 进入gnome3的声音设置
  5. 转到输入标签
  6. 选择手机的蓝牙项目
  7. 也许调整音量...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM