使用Phonon播放mp4视频

时间:2012-05-15 07:25:44

标签: c++ qt mp4 phonon

我正试图在Windows上使用QT和Phonon编写一个非常简单的视频播放器。我的后端是phonon_ds94。首先,这是我点击“播放”时的代码:

if (!this->_files.empty()) {
    QString file = this->_files.front();

    this->_files.pop();

    Phonon::MediaSource _src(file);
    this->ui.videoPlayer->play(_src);
}

(这里,文件是要读取的文件的std ::队列)

如果我想播放.avi ou .wmv,一切正常。我的视频播放,很完美。

但是当我想播放.mp4文件时,什么也没发生。 videoPlayer保持黑色。

我在网上搜索并看到有一个BackendCapabilities :: availableMimeTypes,所以我试着确保我的后端与mp4兼容 - 它在列表中。以下是可用的mime类型列表:

  

application / vnd.ms-wpl application / x-mplayer2 application / x-ms-wmd   application / x-ms-wmz audio / 3gpp audio / 3gpp2 audio / aiff audio / basic   音频/中音/ midi音频/ mp3音频/ mp4音频/ mpeg音频/ mpegurl   audio / mpg audio / vnd.dlna.adts audio / wav audio / x-aiff audio / x-mid   audio / x-midi audio / x-mp3 audio / x-mpeg audio / x-mpegurl audio / x-mpg   audio / x-ms-wax audio / x-ms-wma audio / x-wav midi / mid unknown video / 3gpp   video / 3gpp2 video / avi video / mp4 video / mpeg video / mpg video / msvideo   video / quicktime video / vnd.dlna.mpeg-tts video / x-mpeg video / x-mpeg2a   video / x-ms-asf video / x-ms-asf-plugin video / x-ms-wm video / x-ms-wmv   video / x-ms-wmx video / x-ms-wvx video / x-msvideo vnd.ms.wmhtml

我还将stateChanged的{​​{1}}信号连接到一个插槽,当我尝试读取我的视频时,会出现错误,说不支持文件格式。

我如何让Phonon支持它?我是否应该安装编解码器包,即使mp4在我的列表中?

1 个答案:

答案 0 :(得分:2)

我最近遇到了类似的问题,在尝试了一些编解码器包后,这是一个有用的。

K Lite Mega Codec Pack

如果您进入高级安装,可以取消选中“工具”,“程序”(Windows Media Player Classic),“Shell扩展”,然后取消选中随附的免费浏览器工具栏,最终得到只是编解码器。

之后我可以使用QtSDK的Demos文件夹中包含的qmediaplayer示例程序在Windows上播放任何内容。