匿名
未登录
登录
百问网嵌入式Linux wiki
搜索
查看“How to play audio”的源代码
来自百问网嵌入式Linux wiki
名字空间
页面
讨论
更多
更多
页面选项
Read
查看源代码
历史
←
How to play audio
因为以下原因,您没有权限编辑本页:
您所请求的操作仅限于该用户组的用户使用:
用户
您可以查看与复制此页面的源代码。
{{DISPLAYTITLE:如何播放音频}} =如何播放音频= ==文章目的== : 本文介绍了如何通过具备 ALSA 音频架构的 Linux ® OS 环境播放音频。以下示例显示了如何在 STM32MPU 开发板上的不同音频硬件接口上播放音频。 ==音频播放概述== : ALSA框架公开了与板音频硬件接口关联的音频设备。 : 默认情况下,应用程序音频流通过 PulseAudio 声音服务器进行路由。PulseAudio 公开了映射在 ALSA 声卡音频设备上的音频配置文件。PulseAudio 服务器提供了一个命令行界面,该界面允许列出音频配置文件并选择配置文件以在特定的音频接口上播放。 : 以下各节中针对 ALSA 实用程序给出对应的音频播放示例。但是,音频回放可以由其他应用程序启动,例如 gstreamer 多媒体框架。 ==示例== ===在耳机输出设备上播放音频=== : 在 ALSA 设备上播放 :: 在 “playback_codec” ALSA 设备上运行音频播放: :: 注意:“playback_codec” 在 /etc/asound.conf 中为耳机输出设备定义别名。 <syntaxhighlight lang="bash"> Board $> aplay -D playback_codec /usr/share/sounds/alsa/Front_Left.wav </syntaxhighlight> : 通过 PulseAudio 播放 :: 将声卡的Pulseaudio活动配置文件更改为"analog-stereo”配置文件: :: 注意:Pulseaudio 模拟立体声时使用系统默认的配置文件件。因此引导后不需要下一个命令。 :: 注意:下面给出了声卡索引 0 的示例。使用 “pactl list cards short” 命令检查所有的声卡索引。 <syntaxhighlight lang="bash"> Board $> pacmd set-card-profile 0 output:analog-stereo+input:analog-stereo </syntaxhighlight> :: 播放音频: <syntaxhighlight lang="bash"> Board $> aplay /usr/share/sounds/alsa/Front_Left.wav </syntaxhighlight> ===在HDMI输出设备上播放音频=== : 注意:HDMI输出的支持取决于主板的硬件是否支持。请使用 “aplay -l” 命令检查所有的可用的输出。 : 在 ALSA 设备上播放。 : 在 “playback_hdmi” ALSA 设备上运行音频播放: : 注意:“playback_hdmi” 是在 /etc/asound.conf 文件中为 hdmi 输出设备定义别名。 <syntaxhighlight lang="bash"> Board $> aplay -D playback_hdmi /usr/share/sounds/alsa/Front_Left.wav </syntaxhighlight> : 通过PulseAudio播放 : 将声卡的Pulseaudio活动配置文件更改为"hdmi-stereo”配置文件: : 注意:下面给出了声卡索引0的示例。使用"pactl list cards short"命令可检查所有的声卡索引。 <syntaxhighlight lang="bash"> Board $> pacmd set-card-profile 0 output:hdmi-stereo </syntaxhighlight> : 运行音频播放: <syntaxhighlight lang="bash"> Board $> aplay /usr/share/sounds/alsa/Front_Left.wav </syntaxhighlight> ===在 S/PDIF 输出设备上播放音频=== : 注意:: S/PDIF 输出的支持取决于主板的硬件是否支持。请使用"aplay -l"命令检查可用的输出。 : 注意: S/PDIF ALSA 设备仅支持 32 位音频流。由于示例声音文件中未提供 32 位波形文件,因此在这里为方便起见,使用扬声器测试代替了播放。扬声器测试在以下示例中生成 440Hz 正弦波。 : 在 ALSA 设备上播放 : 在"playback_spdif” ALSA 设备上运行音频播放: : 注意:"playback_spdif” 是在 /etc/asound.conf 文件中为 S/PDIF 输出设备定义的别名。 <syntaxhighlight lang="bash"> Board $> speaker-test -D playback_spdif -c 2 -F S32_LE -f 440 -t sine -l 1 </syntaxhighlight> : 通过 PulseAudio 播放 : 将声卡活动配置文件更改为 S/PDIF 'iec958-stereo' 配置文件。 : 注意:下面给出了声卡索引 0 的示例。使用 "pactl list cards short" 命令检查所有的声卡索引。 <syntaxhighlight lang="bash"> Board $> pacmd set-card-profile 0 output:iec958-stereo </syntaxhighlight> : 运行音频播放: <syntaxhighlight lang="bash"> Board $> speaker-test -c 2 -F S32_LE -f 440 -t sine -l 1 </syntaxhighlight> [[Category:Linux_Operating_System]] [[Category:Audio]] [[Category:ALSA]] [[Category:How_to ]][[Category:How_to_run_use_cases ]]
该页面使用的模板:
模板:Board$
(
查看源代码
)
模板:Highlight
(
查看源代码
)
模板:Info
(
查看源代码
)
模板:STDarkBlue
(
查看源代码
)
模板:STPink
(
查看源代码
)
模板:Warning
(
查看源代码
)
返回至
How to play audio
。
导航
导航
WIKI首页
官方店铺
资料下载
交流社区
所有页面
所有产品
MPU-Linux开发板
MCU-单片机开发板
Linux开发系列视频
单片机开发系列视频
所有模块配件
Wiki工具
Wiki工具
特殊页面
页面工具
页面工具
用户页面工具
更多
链入页面
相关更改
页面信息
页面日志