好的,我想我已经解决了这个问题。目前我有这样的代码:
Phonon::MediaObject *myMusic = Phonon::createPlayer(Phonon::MusicCategory,Phonon::MediaSource Phonon::Cd, QString("E:\\")));
Phonon::MediaController myMediaController(myMusic);
myMediaController.setAutoplayTitles(true);
myMediaController.setCurrentTitle(7);
myMusic->play();
“E:\”是我插入音频 CD 的 CD 驱动器,我播放第 8 首曲目(曲目计数从零开始)。
我的 Windows 7 系统上的其他问题是声子警告:
unable to load the TOC from the CD
此问题与 Phonon Windows 后端有关。一些 Windows 系统没有安装 CDDA 编解码器(或那是什么)。在这种情况下,Phonon 应用程序将不会播放音频 CD 光盘。您不会看到任何错误(上述错误除外),也不会有任何 cd 驱动器活动。
要解决此问题,您应该:
- 为您的系统下载适当的 cddareader.ax(我使用了来自http://sourceforge.net/projects/mpc-hc/files/上的 MPC HomeCinema Standalone Filters 的一个)
- 打开命令行并执行 regsvr32.exe cddareader.ax
- 重启
此代码在 WinXP x86 和 Win7 x64 上测试。Linux机器播放音频CD没有问题(使用不同的路径)
希望这些信息有用