windows xp (qt 5.3.1) 上的 QMediaPlayer
QMediaPlayer on windows xp (qt 5.3.1)
问题出现在使用 QT 5.3.1 的 Windows xp 上。
使用 win7,下面的代码在 winxp 上没有显示任何内容。我重新编译了支持 xp 的 QT,我也在 mediaservice 下 dsengine.dll 但没有任何变化。
m_layout.addWidget(&m_vw);
m_layout.setContentsMargins(0, 0, 0, 0);
ui.VideoWidget->setLayout(&m_layout);
m_player.setVideoOutput(&m_vw);
ui.VideoWidget->show();
m_playlist.addMedia(QUrl::fromLocalFile(QFileInfo("C:\file.avi").absoluteFilePath()));
m_playlist.setCurrentIndex(1);
m_playlist.setPlaybackMode(QMediaPlaylist::Loop);
m_player.setPlaylist(&m_playlist);
...then play the video after press a button...
已报告给 qt 支持,似乎也是 5.4 版中的错误
我认为原因是 ../plugin/mediaservice 使用 wmfengine.dll 而想使用 mf.dll;mfplat.dll;mfreadwrite.dll
你的机器上没有最后一个。如果有人知道包名,如何安装它,你就会得到答案。
拉德米尔
问题出现在使用 QT 5.3.1 的 Windows xp 上。 使用 win7,下面的代码在 winxp 上没有显示任何内容。我重新编译了支持 xp 的 QT,我也在 mediaservice 下 dsengine.dll 但没有任何变化。
m_layout.addWidget(&m_vw);
m_layout.setContentsMargins(0, 0, 0, 0);
ui.VideoWidget->setLayout(&m_layout);
m_player.setVideoOutput(&m_vw);
ui.VideoWidget->show();
m_playlist.addMedia(QUrl::fromLocalFile(QFileInfo("C:\file.avi").absoluteFilePath()));
m_playlist.setCurrentIndex(1);
m_playlist.setPlaybackMode(QMediaPlaylist::Loop);
m_player.setPlaylist(&m_playlist);
...then play the video after press a button...
已报告给 qt 支持,似乎也是 5.4 版中的错误
我认为原因是 ../plugin/mediaservice 使用 wmfengine.dll 而想使用 mf.dll;mfplat.dll;mfreadwrite.dll
你的机器上没有最后一个。如果有人知道包名,如何安装它,你就会得到答案。
拉德米尔