如何使用pacmd来选择输出设备
(由HDMI输出或LineOut输出)


目录

  • 如何设置输出设备

    • Pulseaudio
    • command
    • ALSA
  • 參考

如何设置输出设备

來源: PulseAudio/Examples

  • Set the default output source
    先使用pacmd list-sinks-inputs,找出有那些sink index
    再使用pacmd set-default-sink 0 或 pacmd set-default-sink 名字(name)

    1
    2
    
    # pacmd set-default-sink 0
    # pacmd set-default-sink alsa_output.pci-0000_00_1f.3.iec958-stereo
    
  • # pacmd list-sinks-inputs

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    
    1 sink input(s) available.index: 0driver: <protocol-native.c>flags: state: DRAINEDsink: 0 <alsa_output.pci-0000_00_1f.3.iec958-stereo>volume: mono: 65536 / 100% / 0.00 dBbalance 0.00muted: nocurrent latency: 0.00 msrequested latency: 125.00 mssample spec: s16le 1ch 8000Hzchannel map: monoMonoresample method: speex-float-1module: 11client: 0 <ALSA plug-in [nvr]>properties:media.name = "ALSA Playback"application.name = "ALSA plug-in [nvr]"native-protocol.peer = "UNIX socket client"native-protocol.version = "30"application.process.id = "823"application.process.user = "root"application.process.host = "localhost.localdomain"application.process.binary = "nvr"application.language = "en_US.UTF-8"window.x11.display = ":0"application.process.machine_id = "591ae69f060143d296b3ab64faea41e1"module-stream-restore.id = "sink-input-by-application-name:ALSA plug-in [nvr]"
    

Pulseaudio

  • What Is PulseAudio?
    PulseAudio is a sound system for POSIX OSes, meaning that it is a proxy for your sound applications.

來源:PulseAudio

  • pulseaudio為一個audio service

    • OSS sink表示输出音源部分
      从PulseAudio要转到声音设备的介面

    • OSS source表示输入音源部分
      任何需要进入到PulseAudio的声音,都会经由source介面

  • PulseAudio服务软件架构

    • 将来自各个不同的音源转到正确的窗口
    • 针对不同的应用程式做音量的调整
    • 接受多个音源的输入(source)或是输出(sink)

command

pactl命令可以修改伺服器的设置以及配置,但pactl命令仅限于局限的范围
若要完整的功能,就必須要回归到最基本的指令pacmd,通过pacmd指令
才可以完全的控制PulseAudio的服务核心。

  • fedora24提供下列指令

    • pulseaudio - The PulseAudio Sound System
    • pactl - Control a running PulseAudio sound server
    • pacmd - Reconfigure a PulseAudio sound server during runtime
  • # pactl info

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    
    Server String: /tmp/pulse-9S2nAsoQttCY/native
    Library Protocol Version: 30
    Server Protocol Version: 30
    Is Local: yes
    Client Index: 8
    Tile Size: 65472
    User Name: root
    Host Name: localhost.localdomain
    Server Name: pulseaudio
    Server Version: 8.0
    Default Sample Specification: s16le 2ch 44100Hz
    Default Channel Map: front-left,front-right
    Default Sink: alsa_output.pci-0000_00_1f.3.iec958-stereo
    Default Source: alsa_input.pci-0000_00_1f.3.analog-stereo
    Cookie: fca1:256c
    
  • # pactl list
    查看周边,可知目前只有1个source

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    
    Sink #0State: RUNNINGName: alsa_output.pci-0000_00_1f.3.iec958-stereoDescription: Built-in Audio Digital Stereo (IEC958)Driver: module-alsa-card.cSample Specification: s16le 2ch 48000HzChannel Map: front-left,front-rightOwner Module: 6Mute: yesVolume: front-left: 65536 / 100% / 0.00 dB,   front-right: 65536 / 100% / 0.00 dBbalance 0.00
    Base Volume: 65536 / 100% / 0.00 dB
    

ALSA

來源:PulseAudio

  • ALSA: Advanced Linux Sound Architecture
    一个声音的组成,主要是希望所有声音相关的设备厂商可以遵循一样的标准之前比较有名的是OSS架构,现在大部分都被ALSA取代。
    在Linux的世界中,要声音的硬件可以正常播放,最重要的元件大概就是ALSA,因為一般硬件的驱动程序或是一些声音相关的库,都是由ALSA所提供

pulseaudio之pacmd命令相关推荐

  1. 关于pulseaudio的一些总结

    今年上半年一直在开发一个Limo的sound server,在ALP中是叫做AUDIO MANAGER的,所以在Limo项目里面开发的这个sound server我们也叫做Audio Manager( ...

  2. PulseAudio 设计和实现浅析

    PulseAudio 是一个 POSIX 操作系统的音频服务器系统,它是我们的音频应用程序访问系统音频设备的代理.它是所有相关的现代 Linux 发行版的组成部分,并被多个供应商用在了各种各样的移动设 ...

  3. pluseaudio 的设置声卡

    做嵌入式 qt , 使用QSoundEffect 播放 音频时, 没有声音, 查看是因为 rock pi 上默认声卡是 hdmi, 为了使用 耳机孔的模拟声卡, 需要pulseaudio 设置 打开 ...

  4. WebRTC框架中的硬件加速

    WebRTC框架中的硬件加速 典型缓冲流量 应用程序和单元测试设置 重要方法调用 WebRTC软件包 局限性 WebRTC是一个免费的开源项目,可为浏览器和移动应用程序提供实时通信功能. WebRTC ...

  5. 树莓派解决pyaudio 采样率16k报错问题

    问题出处: 以前做了一个对话机器人,但是一直不知道怎么解决唤醒这个问题.这两天忽然看到有个开源的的好项目----snowboy 它能够一直离线的监控后台 起到语音唤醒的作用.于是便查相关资料. 先是按 ...

  6. Pulseaudio实用命令(二)

    PulseAudio是一个声音服务器,一个后台进程从一个或多个音源(进程或输入设备)接受声音输入 然后重定向声音到一个或多个槽(声卡,远程网络PulseAudio服务,或其他进程). PulseAud ...

  7. 嵌入式linux开发板使用pulseaudio连接蓝牙耳机播放音频文件

    pulseaudio基于a2dp音频架构,其使用流程如下: 首先需要一直bluez5及pulseaudio,此处关于一直pulseaudio详见其他博客. 配置使用流程: 1.开启蓝牙设备 //此处与 ...

  8. linux终端声音设置,终端命令设置音量?

    问题描述 我有一个外部声卡,大部分工作正常,除了第一次插入时或打开笔记本电脑时,音量设置为100%.也就是整个系统音量,如声音指示器所示. 我正在寻找的是一个终端命令,将该音量设置为50%,这样我就可 ...

  9. Linux车机平台pulseaudio多alsasink配置

    https://www.freedesktop.org/wiki/Software/PulseAudio 官网上的介绍是这样的: pulseaudio 是一个POSIX操作系统上的声音系统.是音频应用 ...

最新文章

  1. AI开发人员使用频率最高的10个机器学习平台!
  2. 第七届全国大学生智能汽车竞赛获奖名单
  3. python培训学校-西安有没有好点的Python培训学校
  4. DL框架之Tensorflow:深度学习框架Tensorflow的简介、安装、使用方法之详细攻略
  5. shell获取git最近一次提交信息_Git修改commit提交信息
  6. 小谈Online-game服务器端设计(1、2)
  7. 机器学习hierarchical clustering_厉害了!几行代码搞定机器学习模型
  8. 【numpy】使用numpy/pytorch创建数组时的一点疑问
  9. python 遍历_Python遍历字典
  10. 一个事务复制的bug--更新丢失
  11. js中的Math对象及属性
  12. mysql 字节 字符_字符与字节 | 字痕随行
  13. SQL数据库学习,常用语句查询大全
  14. 阿里的世界版图——“风清扬”的全球梦
  15. 个人重装系统前备份___1000款最杰出的软件清单:
  16. 16数码管静态显示(74hc_595)
  17. python------列表的使用
  18. 学习笔记-Web Generic
  19. buu-[ACTF新生赛2020]Universe_final_answer
  20. 解决winnt.h(389): error C2059: 语法错误:“;”

热门文章

  1. oracle kill所有plsql developer进程
  2. SQL Server读懂语句运行的统计信息 SET STATISTICS TIME IO PROFILE ON
  3. Java 用反射设置对象的属性值
  4. Code4Fun: 通过XML模板系统实现对象的灵活序列化
  5. Process, Thread, STA, MTA, COM object
  6. 【机器人】项目疑难杂症
  7. c语言encoder作业字符数组,C语言练习题库----数组
  8. linux系统装好后优化,CentOS 5.6 Linux安装系统后的基本优化
  9. co88 sap 实际结算_SAP 物料帐的基本原理
  10. Root Motion的脚本处理