我正在使用Phonon播放器来播放音频文件。
方案:
//代码
Phonon::MediaObject* m_pMediaObject = new Phonon::MediaObject(this);
Phonon::AudioOutput* audioOutput = new Phonon::AudioOutput(Phonon::MusicCategory, this);
Phonon::Path path = Phonon::createPath(m_pMediaObject, audioOutput);
QBuffer m_pBufferLoop = new QBuffer(this);
m_pBufferLoop->open(QIODevice::Append || | QIODevice::ReadWrite);
functionToUpdateBuffer();//updates the buffer dynamically.
m_pMediaObject->setCurrentSource(m_pBufferLoop);
m_pMediaObject->play();
调用play()后没有任何反应。但是,如果我给出完整的缓冲区,那么相同的代码工作正常。