C++对ogg音频文件的播放

C++对ogg音频文件的播放,第1张

你还需要libvorbis,libvorbis里还附带一个libvorbisfile,用libvorbisfile可以直接读取里面的数据流,就和读取WAV里的数据基本一样,

然后你根据需要可以选择portaudio库或者libao库(libao也是备迅者昌庆xiph组织的,和libvorbis、libogg一样)更或者直接调仿薯用api来用这些数据发出声音

也就是说这个libogg只管文件格式解析,不管解码;libvorbis只管解码,不管文件格式;libvorbisfile两个都管,但是不管发声;libao和portaudio只管发声,不管读取数据。

pyaudio库,使用这个可以进行录音,播放,生成wav文件等等。PyAudio 提供了 PortAudio 的 Python 语言版本,这是一个跨平台的音频 I/O 库,使用 PyAudio 你可以在 Python 程序中播放和录制音频。为PoTaTudio提供Python绑定,跨平台音频I/O库。使用PyAudio,您可以轻松地使用Python在各种平台上播放和录制音频,例如GNU/Linux、微软Windows和苹果Mac OS X/MACOS。

ALSA是Advanced Linux Sound Architecture的缩写,高级 Linux 声音架构的简称,它在Linux *** 作系统上提供了拦激音频和MIDI(简罩袜Musical Instrument Digital Interface,音乐设备数字化接口)的支持。

二者的关系是:pyaudio调用ALSA实现录音功能。

使用 pyaudio 录制声音的时候报错。直接使用ALSA命令录音无问题。

pyaudio是依赖于linux的ALSA版本,所以在安装的时候是要考虑linux发行闷世版本的(ubuntu, centos,debian)。所以只需要在bash执行:

即可。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12246364.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-22
下一篇 2023-05-22

发表评论

登录后才能评论

评论列表(0条)

保存