【发布时间】:2021-04-19 14:03:01
【问题描述】:
我正在尝试为播放音频和视频的 QML 应用程序创建一个包,但我被 GStreamer 插件所困扰。我使用cqtdeployer 创建这个分发包。该工具完美地收集了可执行文件所需的库和 (qml) 插件。但是,即使我增加递归深度,它也无法检测到某些库,例如 GStreamer 及其插件。
如果我从apt 安装gstreamer1.0-libav,视频和音频会播放。但是,我将离线部署这个包。
我检查了这个包https://packages.ubuntu.com/xenial/gstreamer1.0-libav 的内容,它包含的唯一共享库是libgstlibav.so,我还将它复制到了我的lib/ 文件夹中。还在我的开发环境中安装了gstreamer1.0-plugins-base,并将/usr/lib/x86_64-linux-gnu/gstreamer-1.0/ 下的所有内容也复制到了我的应用程序的lib/ 文件夹中。
当我尝试在单独播放音频的虚拟机上运行该软件时,视频无法播放并出现以下错误:
Warning: "No decoder available for type 'video/x-h264, stream-format=(string)main, codec_data..等
当我尝试播放视频时,类似的音频警告:"Warning: No decoder available for 'audio/mpeg, mpegversion=(int)4.. 等。但我想这是关于视频的播放音频。因为正如我所说,我可以一个人播放音频。
提前感谢您的帮助。如果有帮助,我可以分享我的软件附带的一个丑陋的库列表。
【问题讨论】:
标签: qt deployment qml gstreamer