当前位置: 首页 > 知识库问答 >
问题:

双音频输出到Pulseaudio蓝牙和HDMI树莓派3B巴斯特

王俊楚
2023-03-14

音频输出到脉冲音频和HDMI?

在我的船上,树莓派3 B巴斯特有两种用途:

  1. 它运行Kodi播放通过蓝牙输出到汽车收音机的音乐,该收音机输出到扬声器。(花了两天的时间才让它发生,终于找到了 https://peppe8o.com/fixed-connect-bluetooth-headphones-with-your-raspberry-pi/)
  2. 它还播放输出到带有扬声器的HDMI投影仪的电影。

Pi启动进入LXDE,LXDE运行一个bash脚本通过蓝牙连接到无线电(并按照BluManCZ在https://UNIX . stack exchange . com/questions/334386/how-to-set-up-automatic-connection-of-bluetooth-headset中的回答继续尝试连接),然后自动启动Kodi。

音乐由Android亚策应用程序控制。

当我想播放电影时,我会停止使用Yatse应用程序播放音乐,然后打开投影仪并使用无线键盘播放电影。但我必须手动转到Kodi系统设置并选择HDMI作为声音输出。

当我看完电影后,我正确地关闭了电源。但是,如果我忘记首先手动将声音输出放回Kodi中的Pulseaudio,那么当我下次启动它,并期望获得音乐时,我什么也听不到,因为它仍将传输到HDMI。然后我必须去打开投影仪,这样我就可以用键盘把它切换回pulseaudio。

那么,有没有什么方法可以让它既输出到pulseaudio(蓝牙)又输出到HDMI,这样无论哪个设备打开(收音机或投影仪),我都能发出声音?

或者我可以让它自动检测哪个是活动的并输出到那个?

我如何才能无缝地从通过蓝牙播放音乐切换到通过投影仪播放视频?

请记住,当我给Pi通电时,可能会一个或另一个,或者收音机和投影仪都会通电。

共有1个答案

元胡媚
2023-03-14

好的,我想我用以下步骤解决了这个问题。这说明蓝牙输出到a2dp扬声器可以工作(请参阅我在原始问题中为此采取的步骤):

安装paprefs:

$ sudo apt install paprefs

然后使用终端在桌面上运行它:

$ paprefs

这将打开一个带有几个选项卡的GUI窗口。选择“同时输出”选项卡,该选项卡提供一个复选框来启用或禁用该功能。打开它。

然后重新启动pulseaudio

$ killall pulseaudio

现在你可以去VLC,选择音频标签发送输出到同步输出。声音会传到两个地方。不幸的是,当你关闭VLC时,它会回到HDMI,你必须再次手动更改。在Kodi中,它也不作为一个选项出现。

因此,还有几个步骤:

编辑pulseaudio的默认配置

$ sudo nano /etc/pulse/default.pa

并在加载任何其他模块之前,在开头添加以下行:

load-module module-combine-sink sink_name=combined

这将设置一个新的虚拟设备,并将其输出到所有其他设备。

当你在那里的时候,确保这条线也在那里,在某个地方(可能更远)

module-default-device-restore

如果系统发生变化(例如HDMI关闭或打开),这将恢复默认设备。

退出nano并通过执行ctrl-x并对提示说yes来保存文件。

列出pulseaudio已知的可用设备:

$ pacmd list-sinks | grep -e 'name:' -e 'index:'

现在应该列出蓝牙,插孔,HDMI以及组合设备。带有星号的那个是当前的回退设备。你想让它成为“组合”的水槽。为此,请执行以下操作:

$ sudo set-default-sink combined


$ sudo reboot 0

再次检查,这次组合的旁边应该有星号:

$ pacmd list-sinks | grep -e 'name:' -e 'index:'

现在,当你玩VLC或Kodi时,声音应该同时传到HDMI和蓝牙。

这似乎在完全关闭和加电后仍能幸存下来,所以我认为它达到了目标。我还没有尝试过从不同的输出设备开始的所有不同的组合,但我希望它能工作。

 类似资料:
  • 在Raspberry PI上运行一个简单程序。当连接到带有扬声器的显示器时,我可以通过HDMI扬声器听到声音。但是,我想让语音通过蓝牙音箱输出。当我播放一些音频文件时,连接的蓝牙扬声器会播放,但当我运行FreeTTS程序时,声音通过HDMI音频输出,或者当无头且仅连接到蓝牙扬声器时,根本没有输出。我想可能是它试图通过一些默认的音频播放,因为它通过HDMI扬声器播放,即使在音频菜单中选择了蓝牙...

  • 蓝牙是一个使用广泛的无线通信协议,这两年又随着物联网概念进一步推广。我将介绍蓝牙协议,特别是低功耗蓝牙,并用树莓派来实践。树莓派3中内置了蓝牙模块。树莓派通过UART接口和该模块通信。树莓派1和树莓派2中没有内置的蓝牙模块,不过你可以通过USB安装额外的蓝牙适配器。 蓝牙介绍 蓝牙最初由爱立信创制,旨在实现可不同设备之间的无线连接。蓝牙无线通信的频率在2.4GHz附近,和WiFi一样,都属于特高频

  • 我正在尝试将声音从我的树莓派3播放到蓝牙扬声器,但它不起作用。 pi连接到蓝牙扬声器(当它连接时,扬声器上的自动音频确认,“raspberrypi已连接”,并检查也显示它已连接)。 扬声器音量没有静音,其他设备可以连接到它并通过它播放。检查< code>alsamixer验证音频未静音。 但是,使用aplay通过蓝牙扬声器播放声音只会导致震耳欲聋的沉默。虽然它看起来有效: 我已经寻找了可能包含信息

  • 我有一个蓝牙耳机(可以播放立体声音乐)连接到我的android手机(android 4.4.3)。现在,我希望我的代码能够播放立体声音乐并从耳机中录制音频,这两种方式的采样率都很高(44100)。我在以下帖子中遵循了这些解决方案。 如何使用蓝牙耳机录制声音 通过与Android设备配对的蓝牙耳机捕获音频 我的基本代码如下所示。 权限: 打开蓝牙Sco的代码: 播放立体声音乐的代码: 录制音频的代码

  • 我试图让一个树莓派流到一个crtmpserver,并从那里到一个网页与JWplayer。 我可以用这个成功地将视频发送到crtmpserver: raspivid-t 0-w 960-h 540-fps 25-b 500000-vf-o-|ffmpeg-i--acodec aac-ac 2-严格实验-ab160k-vcodec libx264-预设慢速配置文件:v基线级别30-maxrate 10

  • Raspbian All-in-One 终端中登陆树莓派 停止正在运行的 Home Assistant 服务:sudo systemctl stop home-assistant.service 切换至 homeassistant 用户:sudo su -s /bin/bash homeassistant 切换至虚拟环境:source /srv/homeassistant/homeassistan