首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >QMediaPlayer卡在加载介质上

QMediaPlayer卡在加载介质上
EN

Stack Overflow用户
提问于 2022-08-11 11:37:32
回答 1查看 130关注 0票数 1

我想要播放一个音频文件(经过测试的.wav、.mp3、.flac),使用QMediaPlayer在带有Yocto系统的嵌入式iMX8设备上使用控制台应用程序。我正在测试来自Qt医生的代码。它在PC上工作很好,但在嵌入式设备上就不行了。它坚持使用Media Status: QMediaPlayer::LoadingMedia,没有任何错误。我猜这是系统里的东西。从控制台播放媒体,可以使用aplay命令。什么能成为理由?我怎么才能修好它?

代码语言:javascript
复制
    QMediaPlayer *player = new QMediaPlayer;
    QObject::connect(player, &QMediaPlayer::positionChanged, [=](qint64 position){
        qDebug()<< "Current position: " << position;
    });
    QObject::connect(player, &QMediaPlayer::mediaStatusChanged, [=](QMediaPlayer::MediaStatus status){
        qDebug()<< "Media Status: " << status;
    });
    player->setMedia(QUrl::fromLocalFile("/home/root/test.wav"));
    player->setVolume(100);
    player->play();

我尝试过在我的平台上调试Qt插件,但是我没有发现任何问题。

代码语言:javascript
复制
QFactoryLoader::QFactoryLoader() checking directory path "/usr/lib/plugins/mediaservice" ...
QFactoryLoader::QFactoryLoader() looking at "/usr/lib/plugins/mediaservice/libgstaudiodecoder.so"
Found metadata in lib /usr/lib/plugins/mediaservice/libgstaudiodecoder.so, metadata=
{
    "IID": "org.qt-project.qt.mediaserviceproviderfactory/5.0",
    "MetaData": {
        "Keys": [
            "gstreameraudiodecode"
        ],
        "Services": [
            "org.qt-project.qt.audiodecode"
        ]
    },
    "archreq": 0,
    "className": "QGstreamerAudioDecoderServicePlugin",
    "debug": false,
    "version": 331520
}


Got keys from plugin meta data ("gstreameraudiodecode")
QFactoryLoader::QFactoryLoader() looking at "/usr/lib/plugins/mediaservice/libgstcamerabin.so"
Found metadata in lib /usr/lib/plugins/mediaservice/libgstcamerabin.so, metadata=
{
    "IID": "org.qt-project.qt.mediaserviceproviderfactory/5.0",
    "MetaData": {
        "Keys": [
            "gstreamercamerabin"
        ],
        "Services": [
            "org.qt-project.qt.camera"
        ]
    },
    "archreq": 0,
    "className": "CameraBinServicePlugin",
    "debug": false,
    "version": 331520
}


Got keys from plugin meta data ("gstreamercamerabin")
QFactoryLoader::QFactoryLoader() looking at "/usr/lib/plugins/mediaservice/libgstmediacapture.so"
Found metadata in lib /usr/lib/plugins/mediaservice/libgstmediacapture.so, metadata=
{
    "IID": "org.qt-project.qt.mediaserviceproviderfactory/5.0",
    "MetaData": {
        "Keys": [
            "gstreamermediacapture"
        ],
        "Services": [
            "org.qt-project.qt.audiosource"
        ]
    },
    "archreq": 0,
    "className": "QGstreamerCaptureServicePlugin",
    "debug": false,
    "version": 331520
}


Got keys from plugin meta data ("gstreamermediacapture")
QFactoryLoader::QFactoryLoader() looking at "/usr/lib/plugins/mediaservice/libgstmediaplayer.so"
Found metadata in lib /usr/lib/plugins/mediaservice/libgstmediaplayer.so, metadata=
{
    "IID": "org.qt-project.qt.mediaserviceproviderfactory/5.0",
    "MetaData": {
        "Keys": [
            "gstreamermediaplayer"
        ],
        "Services": [
            "org.qt-project.qt.mediaplayer"
        ]
    },
    "archreq": 0,
    "className": "QGstreamerPlayerServicePlugin",
    "debug": false,
    "version": 331520
}


Got keys from plugin meta data ("gstreamermediaplayer")
QFactoryLoader::QFactoryLoader() checking directory path "/opt/platform-benchmark_app/bin/mediaservice" ...
loaded library "/usr/lib/plugins/mediaservice/libgstmediaplayer.so"
QMediaPluginLoader: loaded plugins for key "org.qt-project.qt.mediaplayer" : ("gstreamermediaplayer")
QFactoryLoader::QFactoryLoader() checking directory path "/usr/lib/plugins/resourcepolicy" ...
QFactoryLoader::QFactoryLoader() checking directory path "/opt/platform-benchmark_app/bin/resourcepolicy" ...
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-08-12 06:46:16

问题在于系统映像和缺少gStreer1.0数据包。它单独工作,但它不适用于Qt多媒体。解决方案是在fsl映像食谱中添加数据包组、gstreamer1.0-full、gStreamer1.0、和。

代码语言:javascript
复制
CORE_IMAGE_EXTRA_INSTALL += " \
...
packagegroup-fsl-gstreamer1.0 \
packagegroup-fsl-gstreamer1.0-full \
...
"
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73320023

复制
相关文章

相似问题

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