16,901
社区成员




void Window::playMedia(const QString &mediaPath)
{
playlist->clear();
QFile read(mediaPath);
if (!read.open(QIODevice::ReadOnly))
{
qDebug() << "文件打开失败,请重试~";
}
//下面用的对象,必须动态申请,不然构造函数执行完毕,局部变量内存会被释放
QByteArray *data = new QByteArray(read.readAll());
read.close();
QBuffer * buffer = new QBuffer(data,this);
if (!buffer->open(QIODevice::ReadWrite))
{
qDebug() << "buffer error";
}
player->setMedia(QMediaContent(),buffer);
//player->setMedia(QUrl::fromLocalFile(mediaPath));
player->play();
}
我虚要用QMediaPlayer 播放加载到内存里的数据,为什么这段代码播放不了?
//player->setMedia(QUrl::fromLocalFile(mediaPath)); 这行播放本地文件没问题
QMediaPlayer我记得要下载一个什么插件,你在网上搜一下