【问题标题】:Play a wave file in linux [closed]在linux中播放波形文件[关闭]
【发布时间】:2010-03-30 15:07:02
【问题描述】:

在 Linux 中播放波形文件最便携的方式是什么?即使用户没有安装特别好的声音库,我也希望这能成功(假设安装了 libc 并且用户配置了声音,但没有别的)。

最好是我用来阻塞直到声音播放完毕的方法,并且还避免了启动一个完整的单独实用程序的开销。

【问题讨论】:

    标签: linux audio


    【解决方案1】:

    我会使用aplay,它是ALSA 系统本身的一部分。

    $aplay a.wav
    

    链接:(Wikipedia)(aplay man page)

    由于 PusleAudio 是基于 ALSA 构建的,因此它也可以在 PulseAudio 系统上运行。

    【讨论】:

      【解决方案2】:

      问题是,并没有真正的 Linux 声音 API。有 ALSA 和 OSSv4 用于硬件访问,但如果您直接使用任一 API,您很可能会与 PulseAudio 等混音守护程序争夺声音设备的访问权限。

      您最好使用libaoPortAudio 之类的东西。

      【讨论】:

      • 结束了对 aplay 的外部调用,因为 ALSA 最可用。谢谢。
      【解决方案3】:

      cat mywav.wav > /dev/dsp

      所以我猜想用 wav 文件写入该文件?

      here

      【讨论】:

      • 它是否适用于现代 linux..?使用 ALSA(并且没有 DSP 仿真)和 PulseAudio 在上面运行......?顺便说一句,链接不再有效。
      • @elcuco archive.org 拥有损坏链接的安全副本。我用工作链接更新了帖子。 (8 年过去了,但有些人还在使用 oss unix.stackexchange.com/q/103746/11592
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-10-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多