首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >QMediaPlayer资源错误

QMediaPlayer资源错误
EN

Stack Overflow用户
提问于 2013-08-09 03:43:06
回答 1查看 5.3K关注 0票数 4

我在Windows8专业版x64上使用Qt Creator 2.7.2 (Qt 5.1)。我和QMediaPlayer有点问题。我的电脑上有一些MP3文件,它们可以在Windows Media Player上正常运行,但QMediaPlayer无法播放它们。以下声明:

代码语言:javascript
复制
void MainWindow::onPlayerStateChanged(QMediaPlayer::State state)
{
    qDebug() << "onPlayerStateChanged" << state
             << media_player.error() << media_player.errorString();
    // ....
}

连接到媒体播放器的stateChanged信号的插槽是否会抛出以下输出:

代码语言:javascript
复制
onPlayerStateChanged QMediaPlayer::PlayingState QMediaPlayer::NoError "" 
DirectShowPlayerService::doRender: Unresolved error code 80040266
onPlayerStateChanged QMediaPlayer::StoppedState QMediaPlayer::ResourceError "" 
DirectShowPlayerService::doRender: Unresolved error code 80040266

知道出什么问题了吗?

EN

回答 1

Stack Overflow用户

发布于 2014-03-25 05:36:44

它可能与文件的ID3标记有关。

我遇到了一个类似的问题:我试图用QMediaPlayer播放一些MP3文件。其中一个文件产生了这个错误,而其他文件运行正常(在Windows 7上)。不过,在Linux上,它们都运行得很好。

所以我在我的MP3文件上运行了' file‘命令,注意到有问题的MP3文件有一个ID3版本2.4.0标签,而所有其他的文件都有ID3版本2.3.0。我使用ID3标签编辑器完全删除了该文件的ID3标签,然后文件成功播放。

这里有一个大胆的猜测: QMediaPlayer在Windows上使用DirectShow作为后端,它在ID3 2.4版本上卡住了,并且只能识别旧版本。而Linux上的QMediaPlayer使用GStreamer作为后端,这就没有这个问题了。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18134724

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档