我对Qt开发以及音频编解码器都很陌生。我最近发现了一种使用QSound播放mp3声音的方法。我想使用QAudioOutput在我的qt项目中播放它,但QAudioDeviceInfo :: supportedCodecs()中没有mp3编解码器。
我尝试安装mp3编解码器,但它仍未在QAudioDeviceInfo :: supportedCodecs()中列出。如何将编解码器添加到QAudioDeviceInfo :: supportedCodecs()?
答案 0 :(得分:3)
根据定义,QAudioDeviceInfo
提供了查询音频设备及其功能的界面。这意味着QAudioDeviceInfo::supportedCodecs()
返回的任何编解码器都是设备能够直接播放的编解码格式,并且可能是原始音频格式,如pcm
。另一方面,mp3
需要首先通过软件解码器,因此它不会在此列表中。
查看Media Player example以获取参考。它应该能够播放mp3和其他格式。该项目应位于您计算机的Qt源或安装目录中,位于演示或示例文件夹下。
从消息来源看,它不仅仅是播放音频。因此,请关注类Player
的构造函数以及方法Player::addToPlaylist()
ps:我用条件时态说话,因为我比Qt 5更熟悉Qt 4。
编辑:
只要Windows媒体播放器无法播放mp3,您的Qt应用就无法获得完整的mp3支持,我给您的Player
示例也无法正常工作。下载系统中的一些编解码器,直到Windows媒体播放器可以播放mp3。