我已将一个插槽连接到 QMediaPlayer 的 stateChanged() 信号。这是插槽的样子:
void MyClass::mySlot(){
if (mediaPlayer->state() == QMediaPlayer::StoppedState) {
mediaPlayer->play();
}
所以基本上,当 QMediaPlayer 对象(“mediaPlayer”)完成播放时,我想重新开始播放歌曲。
奇怪的是,这对于短的 mp3(大约 10 秒)完美无缺,但是对于较长的 mp3(以分钟计),在歌曲最初结束后,信号会无限发出而不会重播歌曲。为什么是这样?更长的媒体怎么会导致这种情况?我不明白为什么。
非常感谢您的任何指导或解释。