QMediaPlayer 在 Ubuntu 16.04 / Qt 5.6 上不播放任何内容

2023-12-22

我在 Ubuntu 16.04 上使用官方 Qt 5.6 SDK,当我尝试播放 mp3 文件时,我得到:

defaultServiceProvider::requestService(): no service found for - "org.qt-project.qt.mediaplayer"

代码非常简单:

mMediaPlayer->setMedia(QUrl::fromLocalFile(myMp3File));
mMediaPlayer->play();

这适用于 Android,之前也适用于我的 Ubuntu 14.04 机器。我缺少什么?所有必需的 gstreamer (通过文档)似乎已经默认安装,但它仍然不起作用:

$ dpkg -l | grep gstream
ii  gir1.2-gstreamer-1.0                                 1.8.2-1~ubuntu1                                             amd64        GObject introspection data for the GStreamer library
ii  gstreamer1.0-alsa:amd64                              1.8.2-1ubuntu0.1                                            amd64        GStreamer plugin for ALSA
ii  gstreamer1.0-clutter-3.0                             3.0.18-1                                                    amd64        Clutter PLugin for GStreamer 1.0
ii  gstreamer1.0-fluendo-mp3:amd64                       0.10.32.debian-1                                            amd64        Fluendo mp3 decoder GStreamer 1.0 plugin
ii  gstreamer1.0-libav:amd64                             1.8.2-1~ubuntu1                                             amd64        libav plugin for GStreamer
ii  gstreamer1.0-plugins-bad:amd64                       1.8.2-1ubuntu0.1                                            amd64        GStreamer plugins from the "bad" set
ii  gstreamer1.0-plugins-bad-faad:amd64                  1.8.2-1ubuntu0.1                                            amd64        GStreamer faad plugin from the "bad" set
ii  gstreamer1.0-plugins-bad-videoparsers:amd64          1.8.2-1ubuntu0.1                                            amd64        GStreamer videoparsers plugin from the "bad" set
ii  gstreamer1.0-plugins-base:amd64                      1.8.2-1ubuntu0.1                                            amd64        GStreamer plugins from the "base" set
ii  gstreamer1.0-plugins-base-apps                       1.8.2-1ubuntu0.1                                            amd64        GStreamer helper programs from the "base" set
ii  gstreamer1.0-plugins-good:amd64                      1.8.2-1ubuntu0.1                                            amd64        GStreamer plugins from the "good" set
ii  gstreamer1.0-plugins-ugly:amd64                      1.8.2-1ubuntu0.1                                            amd64        GStreamer plugins from the "ugly" set
ii  gstreamer1.0-plugins-ugly-amr:amd64                  1.8.2-1ubuntu0.1                                            amd64        GStreamer plugins from the "ugly" set
ii  gstreamer1.0-pulseaudio:amd64                        1.8.2-1ubuntu0.1                                            amd64        GStreamer plugin for PulseAudio
ii  gstreamer1.0-tools                                   1.8.2-1~ubuntu1                                             amd64        Tools for use with GStreamer
ii  gstreamer1.0-x:amd64                                 1.8.2-1ubuntu0.1                                            amd64        GStreamer plugins for X11 and Pango
ii  libgstreamer-plugins-bad1.0-0:amd64                  1.8.2-1ubuntu0.1                                            amd64        GStreamer development files for libraries from the "bad" set
ii  libgstreamer-plugins-base1.0-0:amd64                 1.8.2-1ubuntu0.1                                            amd64        GStreamer libraries from the "base" set
ii  libgstreamer-plugins-good1.0-0:amd64                 1.8.2-1ubuntu0.1                                            amd64        GStreamer development files for libraries from the "good" set
ii  libgstreamer1.0-0:amd64                              1.8.2-1~ubuntu1                                             amd64        Core GStreamer libraries and elements
ii  libreoffice-avmedia-backend-gstreamer                1:5.1.4-0ubuntu1                                            amd64        GStreamer backend for LibreOffice

...当然,我的声音在其他方面表现得非常完美。


首先,使用 QT_DEBUG_PLUGINS=1 运行应用程序以查看插件错误。

如果您看到有关“libgstaudio-0.10.so.0”的错误,则这是 GStreamer 版本问题。官方 Qt 二进制文件似乎需要 GStreamer 0.10。

我找到的解决方案:

  • 使用您的发行版附带的 libqt,使用您的包管理器:这是我找到的最佳解决方案,因为它是使用正确的 GStreamer 版本构建的。我使用不同的 chroot 为嵌入不同 GStreamer 版本的发行版制作包。
  • 从源代码编译 Qt 以启用 Gstreamer 1.0 https://community.nxp.com/docs/DOC-330047:未测试
  • 安装 Gstreamer 0.10 :我不推荐此选项,或者如果需要,请使用旧发行版的 chroot。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

QMediaPlayer 在 Ubuntu 16.04 / Qt 5.6 上不播放任何内容 的相关文章

  • 带有 ASP.NET 按钮回发的 jQuery UI 对话框

    我的 ASP NET 页面上有一个运行良好的 jQuery UI 对话框 jQuery function jQuery dialog dialog draggable true resizable true show Transfer hi
  • 并行运行多个任务

    我有一个代理列表 每个代理都会访问不同的站点并从站点中提取所需的数据 目前它一次只做一个 但我希望同时运行 10 20 个任务 这样它就可以一次性从 20 个站点下载 而不是只下载一个 这是我目前正在做的事情 private async T
  • 无法在 CUDA 中找到 1 到 100 数字的简单和?

    我正在研究使用 CUDA 的图像处理算法 在我的算法中 我想使用 CUDA 内核找到图像所有像素的总和 所以我在cuda中制作了内核方法 来测量16位灰度图像的所有像素的总和 但我得到了错误的答案 所以我在cuda中编写了一个简单的程序来查
  • 如何从经过身份验证的 SecurityToken 中获取声明

    我将令牌作为字符串传递到 SOAP 服务中 并验证了该令牌是否有效 我现在有一个 SecurityToken 在调试模式下我可以看到所有声明 特别是我想传递到另一个方法的 userId 声明 我似乎不知道如何获得这些索赔 现在 我解码了令牌
  • 我担心我添加了太多接口

    我正在构建我的领域模型并继续重构它 正如我所做的那样 我发现我喜欢接口 因为它允许我根据接口为具体类型创建可重用的方法 控制器 视图 但是 我发现每次向域实体之一添加新属性时 我都会创建一个接口 例如 我有一个会员状态从抽象继承的对象Ent
  • 加载 QPixmap 数据的更好方法

    更好的方法来做到这一点 没有QImage QImage image width height QImage Format RGB888 memcpy image bits m frameRGB gt data 0 height width
  • X 轴和 Z 轴上的 Quaternion.Slerp,无 Y 轴

    I am trying to rotate the Player about X Y and Z axis The Y axis should not move from last angle Example if I rotate 45
  • 当我尝试传递临时地址作为参数时,它是一个 UB 吗?

    对于以下 C 代码 include
  • 将 AutomationID 与 ListView 结合使用

    我正在尝试将 AutomationId 附加到列表视图中的项目 理想情况下 将项目名称绑定到显示的项目
  • fgets溢出后如何清除输入缓冲区?

    当输入字符串超出其预定义限制时 我遇到了 fgets 的小问题 以下面的例子为例 for index 0 index lt max index printf Enter the d string index 1 if fgets input
  • 为什么这个位图图像在加载后会改变大小?

    快速提问 我有这个1000 1000位图图像 我使用这个例程来加载它 private BitmapSource initialBitmap new BitmapImage new Uri C Users Desktop Original b
  • 如何在VS2005中使用从.bat而不是.exe启动的外部程序进行调试?

    在我的 c 项目的调试属性中 我选择了 启动外部程序 并选择了我希望将调试器附加到的程序的 exe 但是 现在我需要从 bat 文件而不是 exe 启动程序 但 VS2005 似乎不允许这样做 这可能吗 编辑 为了澄清 我需要调试从 bat
  • 在 clang 中向量化函数

    我正在尝试根据此用 clang 对以下函数进行矢量化铿锵参考 http llvm org docs Vectorizers html 它采用字节数组向量并根据以下条件应用掩码this RFC https www rfc editor org
  • Clang 5.0 上的 vsprintf 和 vsnprintf [-Wformat-nonliteral] 警告

    我有这段代码 static void err doit int errnoflag int level const char fmt va list ap int errno save unsigned long n char buf MA
  • 在一个解决方案中调用不同项目的方法

    1 个解决方案中有 3 个项目 我对第一个项目中的主文件进行的主要操作 但是我需要调用第三个项目中的方法并使用类 例如 第三个项目有 public DataClasses1DataContext base global WindowsFor
  • 使用未命名命名空间而不是静态命名空间

    我可以假设在未命名命名空间中声明的对象相当于static namespace int x 1 static int x 2 FWIK 在这两种情况下 x将具有静态存储期限和内部链接 声明为的对象的所有规则也是如此static适用于未命名名称
  • 如何防止 Lotus Notes 用户转发或复制通过 System.Net.Mail 发送的邮件?

    我想使用 SMTP 客户端 uiing microsft net 以 C 作为编程语言发送电子邮件 但是对于通过SMTP客户端发送的电子邮件 我们是否可以添加 禁止转发 或 禁止复制 等安全功能 我不希望电子邮件的收件人转发或复制电子邮件的
  • 使用通用存储库模式和流畅的 nHibernate

    我目前正在开发一个中型应用程序 它将访问不同站点上的 2 个或更多 SQL 数据库等 我正在考虑使用类似的东西 http mikehadlow blogspot com 2008 03 using irepository pattern w
  • 如何将模型绑定到动态创建的类 nancyfx

    首先感谢任何愿意查看我的问题的人 我对 Nancyfx 还很陌生 在尝试将 JSON 有效负载绑定到动态创建的类时遇到问题 我按照这篇文章中的代码动态创建了该类 在C 中动态创建一个类 https stackoverflow com que
  • 将同步 zip 操作转换为异步

    我们有一个现有的库 其中一些方法需要转换为异步方法 但是我不确定如何使用以下方法执行此操作 错误处理已被删除 该方法的目的是压缩文件并将其保存到磁盘 请注意 zip 类不公开任何异步方法 public static bool ZipAndS

随机推荐

  • 具有错误字符容限的最长公共子串

    我在这里找到了一个脚本 在寻找最低公共子串时效果很好 但是 我需要它来容忍一些不正确 丢失的字符 我希望能够输入所需的相似性百分比 或者指定允许的丢失 错误字符的数量 例如 我想找到这个字符串 大黄色校车 该字符串内部 那天下午他们乘坐黄色
  • 在node.js中使用python模块

    是否可以创建一种胶水 使 python 模块 更具体地说 库绑定 可以在 Node js 中使用 一些数据结构可以直接映射到 V8 对象 例如数组 字典 更重要的是 这会是比手动或通过 FFI 更优雅的创建绑定的方式吗 简而言之 值得吗 试
  • 更改seaborn条形图中的色标

    我想对我的数据使用seaborn条形图 并根据Y轴的值使用色标 例如 在此图像中 颜色根据调色板从左到右变化 但我真正想要的是相同的配色方案 但 垂直 而不是 水平 这可能吗 我已经搜索并尝试设置hueY 轴参数 但它似乎不起作用 我该怎么
  • 为什么 std::chrono::time_point 不够大,无法存储 struct timespec?

    我正在尝试最近的std chronoapi 和我发现在 64 位 Linux 架构和 gcc 编译器上time point and duration类无法以最大分辨率 纳秒 处理操作系统的最大时间范围 事实上 相比之下 这些类的存储似乎是
  • 谷歌地图v3:边界中心与地图中心不同

    怎么可能map getCenter 可能不同于map getBounds getCenter gt cragMap getCenter gt Q d 13 823563748466814 e 0 toString function b fu
  • Jupyter 笔记本注释快捷方式不起作用

    我试图使用 ctrl 在 jupyter 笔记本中注释行 但这不起作用 我使用的是 Windows 10 和 Mozilla Firefox 您的问题可能是由于您的浏览器设置造成的 ctrl 必须设置为其他值 否则您不会处于编辑模式
  • 如何让Hibernate在与JPA一起使用时自动在数据库中创建表?

    我是 JPA 的新手 现在我正在尝试理解标准示例 我在网上阅读并看到了一些 stackoverflow 问题 我在所有这些问题中发现以下语句将允许 hibernate 在运行时创建表 hibernate hbm2ddl auto creat
  • 如果我没有接住投掷会发生什么?

    这是非常基本的 但我在任何地方都找不到答案 那里有很多关于投掷和接球的帖子 但如果我实际上会发生什么throw from function1然后打电话function1 from function2但不要抓住它 这是否意味着它只是被重新抛出
  • 如何在不指定父字段的情况下直接查询嵌套字段?

    我在 mongodb 中有接下来的 3 个文档 文件1 name device1 camera number 3 文件2 name device2 camera number 1 文件3 name device3 wifi number 2
  • ng 选择样式组标题和项目

    我正在使用 ng select https ng select github io ng select data sources https ng select github io ng select data sources 我的角度项目
  • 如何防止浏览器将 ß 更改为 ss?

    我试图让以下德语字符正确显示 不幸的是 它显示为 ss 我尝试遵循我在以下位置找到的一些指示 如何在 HTML 中正确显示德语字符 https stackoverflow com questions 423693 how can i pro
  • 我可以使元素对悬停不可见吗?

    我有一个具有星爆效果 透明 png 背景 的 div 我想在它们悬停时将其叠加在一系列图像上 我必须使 div 变大才能包含图像 但这会妨碍检测图像上的悬停 我将它们全部作为背景图像 因此它们是通过高分辨率 css mediaquery 加
  • Java中的文件截断操作

    在 Java 中截断文件的最佳实践方法是什么 例如这个虚拟函数 只是作为一个例子来阐明意图 void readAndTruncate File f List
  • Nest Battery CamGenerateWebRtcStream 命令出现 INVALID_ARGUMENT 错误

    我正在尝试执行sdm devices commands CameraLiveStream GenerateWebRtcStream https developers google com nest device access traits
  • istream::getline 返回类型

    什么是istream getline方法返回 我这样问是因为我已经看到要循环遍历文件 应该这样做 while file getline char int handle input 被退回的是什么 它返回一个流 以便我们可以链接操作 但是 当
  • 在 github 上怎么说这是我

    我在设置 GitHub 信息时犯了一个错误 因此当我推送到存储库 X 时 出现的名称不是我的名字 我该如何修复它并说那是我 有什么办法可以做到这一点吗 在 BitBucket 中 存储库管理页面中有一个名为 用户名别名 的选项 注意 我是存
  • hg unshelve 好像没有效果?

    我们的团队刚刚开始使用 Mercurial 我们首先开始玩的事情之一是hg shelve 在本地 我可以毫无问题地搁置更改 据我所知 一切都很完美 但是 当我尝试取消搁置时 我得到了restoring backup files消息 但是当我
  • 5 位 zip 或空的正则表达式

    我有这个正则表达式来检查 5 位数字 d 5 我如何更改它 以便它对于空字符串也返回 true 将其封装在 并添加一个 使整个模式可选 实际上 您要么匹配 d 5 OR 空字符串 var regex d 5 console log rege
  • CakePHP:是否可以插入具有预定义主键值的记录?

    我有一个 CakePHP 模型 用户 与外部公司系统有联系 我在这些系统上存储一些数据 在本地存储其他数据 在我的User beforeSave 方法 我尝试设置一个 ID 将数据 使用该自定义 ID 发送到我的公司系统 然后 如果它在那里
  • QMediaPlayer 在 Ubuntu 16.04 / Qt 5.6 上不播放任何内容

    我在 Ubuntu 16 04 上使用官方 Qt 5 6 SDK 当我尝试播放 mp3 文件时 我得到 defaultServiceProvider requestService no service found for org qt pr