c++ - 使用 system() 函数在 Ubuntu 中播放声音文件

标签 c++ ubuntu audio

我尝试在 Ubuntu 中使用 C++ 播放声音文件。我可以在终端中使用 g++ play.cpp -o play 行编译此代码。它可以很好地编译,但是当我用 ./play 执行它时,它说 Failed to play sound: File or data corrupt 。我找不到问题出在哪里。这是我的代码;

#include <iostream>
#include <stdlib.h>

int main()
{
  system("canberra-gtk-play -f cow.wav");
  return 0;
}

最佳答案

输出 Failed to play sound: File or data corrupt 来自系统调用启动的堪培拉播放器,不是程序问题的结果。

这可能意味着该特定文件确实已损坏。我建议下载一个不同的示例文件。提供的文件 here对我来说很好。

使用“exiftool cow.wav”可能会为您提供有关文件问题所在的更多信息。

关于c++ - 使用 system() 函数在 Ubuntu 中播放声音文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38608061/

相关文章:

c++ - 列表将类转换为父类

javascript - 如何找到 HTMLAudioElement 音频结束播放

ruby-on-rails - SASL LOGIN 认证失败 : Invalid authentication mechanism on Rails using Postfix and Dovecot on Ubuntu 12. 10

linux - 部分复制 .fif 文件

html - addEventListener 点击时发出声音

android - 在 Android 上将循环设置为 -1 时不播放声音

c++ - 给定指向其基类的指针来识别子类?

c++ - 使用 map 统计大数据

C++多文件编译过程

ubuntu - 登录新的 Ubuntu 22.04 LTS 实例的默认用户名是什么? (从 AMI 创建的 AWS EC2)