Pulseaudio入坑
当前在一个项目上使用了bluez5.54 + pulseaudio 来做蓝牙音箱节点,
同时为了兼顾播放本地音乐和网络音频,安装了vlc, 在命令行搞bluetoothctl播放音频成功了。
但是,用cvlc 在命令行播放音乐出现问题:vlc播放后,退出,一会儿蓝牙的音频就死了,查看了一下是pulseaudio 挂了? 嗯?
一番瞎搞后发现cvlc启动的时候也是连接到pulseaudio 去解码的,但是pulseaudio播了vlc的音频,结束后pulseaudio 的状态变成了idle, 于是:
pulseaudio --exit-idle-time=-1
这样就行了,不会自动退出
更多功能还在摸索,比如如何用程序打开,如何禁用某个音源的音量等等。
pulseaudio非常强大,继续摸索。
既然,蓝牙和VLC都可以同时播放,pulseaudio 可以同时播出,
那么问题来了,我要选通一个通道,咋办?
vlc好办,可以停止, 蓝牙的话也可以停止,但是可能用户就直接2个模式疯狂切换呢,还有加上蓝牙连接的时候用户操作的不确定因素,比如终端点了停止,手机又点了继续播,那就很蛋疼。
所以还有个办法,就是禁用pulseaudio的sink 或者 source
vlc 和蓝牙 对于pulseaudio 来说, 是sink :
于是列出:
# pacmd list-sink-inputs
2 sink input(s) available.
index: 9
driver: <module-loopback.c>
flags: VARIABLE_RATE START_CORKED
state: RUNNING
sink: 0 <alsa_output.0.stereo-fallback>
volume: front-left: 65536 / 100% / 0.00 dB, front-right: 65536 / 100% / 0.00 dB
balance 0.00
muted: no
current latency: 99.84 ms
requested latency: 65.73 ms
sample spec: s16le 2ch 44151Hz
channel map: front-left,front-right
Stereo
resample method: trivial
module: 29
properties:
media.role = "music"
module-stream-restore.id = "sink-input-by-media-role:music"
media.name = "Loopback from HUAWEI Mate 9"
media.icon_name = "audio-card-bluetooth"
index: 12
driver: <protocol-native.c>
flags: START_CORKED FIX_RATE
state: RUNNING
sink: 0 <alsa_output.0.stereo-fallback>
volume: front-left: 65536 / 100% / 0.00 dB, front-right: 65536 / 100% / 0.00 dB
balance 0.00
muted: no
current latency: 1200.11 ms
requested latency: 40.00 ms
sample spec: float32le 2ch 48000Hz
channel map: front-left,front-right
Stereo
resample method: ffmpeg
module: 12
client: 48 <VLC media player (LibVLC 3.0.11)>
properties:
media.role = "video"
media.name = "audio stream"
application.name = "VLC media player (LibVLC 3.0.11)"
native-protocol.peer = "UNIX socket client"
native-protocol.version = "33"
application.id = "org.VideoLAN.VLC"
application.version = "3.0.11"
application.icon_name = "vlc"
application.language = "C"
application.process.id = "823"
application.process.user = "root"
application.process.host = "buildroot"
application.process.binary = "vlc"
application.process.machine_id = "4460d06f23eb8dad2d7a7eb100001d8e"
module-stream-restore.id = "sink-input-by-media-role:video"
单独静音某个声音通道:
pacmd set-sink-input-mute 12 1 #静音
pacmd set-sink-input-mute 12 0 #开声音
pacmd set-sink-input-mute 9 1 #静音
pacmd set-sink-input-mute 9 1 #开声音
操作非常方便
Pulseaudio入坑相关推荐
- 发布开源框架到CocoaPods入坑指南
个人原文博客地址: 发布开源框架到CocoaPods入坑指南 在开发过程中一定会用到一些第三方框架, 只要安装了CocoaPods, 然后通过pod install命令, 就可以集成框架到项目中了 可 ...
- 资源 |“从蒙圈到入坑”,推荐新一波ML、DL、RL以及数学基础等干货资源
向AI转型的程序员都关注了这个号☝☝☝ 编译 | AI科技大本营(rgznai100) 参与 | suiling 此前营长曾发过一篇高阅读量.高转发率,高收藏量的文章<爆款 | Medium上6 ...
- 魔兽世界多玩服务器位置,选择服务器也有大学问?新手入坑《魔兽世界》该在哪里“扎根”...
<魔兽世界:暗影国度>开服至今已经五个多月了,圈内圈外都在讨论新版本的话题,不少萌新与老玩家都选择了在这个版本中加入探索暗影界的行列.但面对茫茫多的区服,许多玩家都犯起了"选择困 ...
- 2020《图像分割》从入坑到出坑指南
本文经授权转载自机器之心(almosthuman2014),来源:medium,作者:Jakub Czakon,编译:小舟.Racoon.张倩,未经授权禁止二次转载与摘编. 本文长度为2400字,建议 ...
- 一份详细的“入坑Phd指南”---教你如何做笔记、整理参考书目、管理时间、如何写作、对自己和导师合理预期...
点击上方,选择星标或置顶,每天给你送干货! 阅读大概需要5分钟 pick小博主,每天进步一丢丢 [导读]今天给大家强烈推荐一份详细的读博指南,本指南教你如何做笔记.整理参考书目.管理时间.如何写作.对 ...
- 干货丨从感知机到深度神经网络,带你入坑深度学习
作者:Adi Chris 机器之心编译 参与:朱乾树.刘晓坤 机器学习工程师 Adi Chris 最近学习完吴恩达在 Coursera 上的最新课程后,决定写篇博客来记录下自己对这一领域的理解.他建议 ...
- python这个软件学会能做什么工作-学会Python真的有高收入?盯,请查收这份入坑指南...
学会Python真的有高收入?盯,请查收这份入坑指南 2018-10-10 20:51:00 567点赞 6312收藏 186评论 小编注:想获得更多专属福利吗?金币加成.尊享众测.专属勋章.达人福利 ...
- python工程师薪资坑吗-入坑Python爬虫值不值?
点击蓝字"python教程"关注我们哟! 有很多小伙伴,学习了Python的很多知识,比如基础语法.函数,web.爬虫.人工智能等,但是这么多就业方向,一时难选,不知道入坑Pyth ...
- python web-python web入坑指南
原标题:python web入坑指南 Invest regularly in your knowledge portfolio. Make learning a habit. 自学python web ...
- 写给正在入坑linux系统的伙伴
我的工作是运维工程师, 从最开始入行到现在成为运维组的组长,负责小组的几个小伙伴.回想自己当时学习Linux的时候,都是自己网上找教程,然后照着一篇一篇敲命令,记笔记.最近有时间再来整理一下Linux ...
最新文章
- 利用PCA进行数据降维
- fastReport 随记
- 初探WCF 如何在配置文件中指定Address?
- 安全与加密-使用gpg和openssl实现加密与解密
- 注释转换——(小项目)
- 【Deep Learning笔记】神经网络基础
- 开发中经常使用的5种设计模式
- usb hub区分端口_树莓派上 USB 子系统拓扑浅析
- 转!最适合新手小白的8个python开发环境(内附python IDE最新下载地址+软件激活码+长期有效)
- 如何使用ASP建立虚拟的FTP服务器
- 使用 matlab 数字图像处理(五)—— 双线性插值(Bilinear Interpolation)
- 宕昌一中2021高考成绩查询,2020届毕业生:宕昌一中“拍了拍”你 | 青春不散场 扬帆再起航...
- spring3.0学习之环境搭建
- 山东工商学院 计算机科学与技术,实验中心-山东工商学院计算机科学与技术学院...
- 2021-11-23日win10更新bug:共享打印机无法连接的修复
- js读取excel中日期格式转换问题
- MapGuide应用程序演示样例——你好,MapGuide!
- Android 源代码分享
- mysql 1045 远程_启用远程mysql连接:错误1045(28000):拒绝用户访问
- Android横向滚动卡片,RecyclerView+CardView实现横向卡片式滑动效果