首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >即使视频播放失败,QMediaPlayer::error()也不会发出

即使视频播放失败,QMediaPlayer::error()也不会发出
EN

Stack Overflow用户
提问于 2015-04-15 23:32:07
回答 1查看 576关注 0票数 0

我正在连接QMediaPlayer::error()信号并尝试播放视频文件:

代码语言:javascript
复制
QMediaPlayer *player = new QMediaPlayer;
QMediaPlaylist *playlist = new QMediaPlaylist(player);
playlist->addMedia(QUrl::fromLocalFile("/path/to/file.mp4"));

QVideoWidget *videoWidget = new QVideoWidget;
player->setVideoOutput(videoWidget);

videoWidget->resize(640, 340);
videoWidget->show();
ErrorPrinter *errorPrinter = new ErrorPrinter(player);
QObject::connect(player, SIGNAL(error(QMediaPlayer::Error)), errorPrinter, SLOT(printError(QMediaPlayer::Error)));
player->play();

显示了视频小部件,但没有播放任何内容,因此它一定是在某个地方失败了。但是,QMediaPlayer::error()信号永远不会发出!应用程序输出为空,没有断言,play()函数为void (没有表示成功或失败的返回值)和playlist->addMedia always returns true

我该怎么找出哪里出了问题呢?

EN

回答 1

Stack Overflow用户

发布于 2015-04-17 00:38:22

QMediaPlaylist(player)构造仅设置QObject父级。它不会将播放列表链接到播放器--播放器并不知道播放列表。

所以,你从来没有在播放器上设置过播放列表。您可能还需要将播放列表索引设置为1或0 (?-文档不清楚这一点)。

代码语言:javascript
复制
playlist->setCurrentIndex(1);
player->setPlayList(playlist);
player->play();
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29654457

复制
相关文章

相似问题

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