【问题标题】:Unable to play video in QML无法在 QML 中播放视频
【发布时间】:2017-05-18 10:55:25
【问题描述】:

我正在使用 Qt 5.8 开发 ubuntu 14.04,并尝试使用 Qt 多媒体模块在我的应用程序中播放视频。我把“QT +=快速多媒体”放在“.pro”中。

ContentVideo.qml

import QtQuick 2.1
import QtMultimedia 5.0

Rectangle {
    width: 400
    height: 400
    color:"black"

    MediaPlayer {
        id: mediaPlayer
        autoPlay: true
        autoLoad: true
        source:"/home/macos/Desktop/FroggerHighway.mp4"
    }

    VideoOutput {
        id:videoOutput
        source:mediaPlayer
        anchors.fill: parent
    }
}

ma​​in.qml

import QtQuick 2.1
import QtQuick.Window 2.1

Window {
    id: root
    color: "black"
    width: 400
    height: 400
    visible: true
    ContentVideo {
        anchors.fill: parent
    }
}

我的视频没有运行,我得到黑屏,没有任何错误。 QT QML 示例视频正在我的电脑上运行。任何帮助将不胜感激,谢谢。

【问题讨论】:

    标签: qt qml


    【解决方案1】:

    MediaPlayer.source 是一个 URI,我认为您指定的值不是有效的 URI。尝试在 mp4 文件的路径前添加“file://”。

    【讨论】:

    • 非常感谢您的回应
    【解决方案2】:

    我刚刚遇到了和你一样的问题,看来QtMultimedia会在运行时从系统中的gstreamer中寻找解码器,所以我安装了视频编解码器包:

    sudo apt-get install gstreamer1.0-libav gstreamer1.0-vaapi
    

    那么qml视频播放器现在可以正常工作了

    【讨论】:

      【解决方案3】:

      如果 QML 视频示例正常工作,则可能是由于缺少编解码器来对视频进行编码。检查您是否拥有所有Multimedia Dependencies。我的猜测是,提供的视频样本是以开放格式编码的,您的发行版默认提供支持。

      【讨论】:

        【解决方案4】:

        QT+= multimedia 添加到您的.pro 文件中。

        【讨论】:

          【解决方案5】:

          我在 Arch 和 Debian 上遇到了同样的问题。安装以下软件包后,一切正常。

          ARCH:

          • 额外/gstreamer
          • aur/gstreamer0.10
          • 额外/gst-plugins-base-libs
          • 额外/gst-plugins-good
          • 额外/gst-libav
          • 额外/qt5-工具

          使用yay安装:

          yay -S gstreamer gstreamer0.10 gst-plugins-base-libs gst-plugins-good gst-libav qt5-tools
          

          Debian:

          • libqt5multimedia5-plugins
          • gstreamer1.0-plugins-good
          • gstreamer1.0-libav
          • libqt5multimediagsttools5

          apt安装:

          apt install libqt5multimedia5-plugins 
          

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2014-11-23
            • 2018-11-15
            • 2018-01-31
            • 1970-01-01
            相关资源
            最近更新 更多