该问题来自社区帖: https://bbs.csdn.net/topics/615610198.为符合问答规范, 该问题经过ChatGPT优化
以下是已优化的问题: QMediaPlayer播放内存里的数据,无法播放? ```html 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->play(); } ``` 我需要使用QMediaPlayer播放加载到内存里的数据。为什么这段代码播放不了?如何才能播放加载到内存中的mp4资源?将绿色代码更改为红色代码可以播放本地文件,但是如何播放内存加载的mp4资源?
以下是已优化的问题: QMediaPlayer播放内存里的数据,无法播放? ```html 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->play(); } ``` 我需要使用QMediaPlayer播放加载到内存里的数据。为什么这段代码播放不了?如何才能播放加载到内存中的mp4资源?将绿色代码更改为红色代码可以播放本地文件,但是如何播放内存加载的mp4资源?