如何使用 video 5.12 qt qml 播放视频?

Posted

技术标签:

【中文标题】如何使用 video 5.12 qt qml 播放视频?【英文标题】:How to play a video using video 5.12 qt qml? 【发布时间】:2020-06-25 23:53:26 【问题描述】:

我想用播放按钮播放视频,暂停,10秒后转发视频,然后使用qml返回视频,但我不知道怎么做。

类似这样的:

import QtQuick 2.12

import QtQuick.Window 2.12

import QtMultimedia 5.12

import QtQuick.Controls 2.0

import QtQuick.Layouts 1.12

Window 
    visible: true
    width: 840
    height: 680
    title: qsTr("Hello World")

    ColumnLayout
        Video 
            id: video
            width : 600
            height : 600
            source: "a.avi"

        
        RowLayout
            Button 
                width: 80
                height: 80
                text: "play"
                onClicked: video.play()
            
            Button 
                width: 80
                height: 80
                text: "pause"
                onClicked: video.pause()
            
            Button 
                width: 80
                height: 80
                text: "foward"
                onClicked: video.foward()
            
            Button 
                width: 80
                height: 80
                text: "back"
                onClicked: video.back()
            
        
    

【问题讨论】:

对不起,我不太清楚文本的格式 【参考方案1】:

问题是source。您需要使用 URL 格式: source: "file:///home/user/videos/a.avi"

或者,您可以使用 QtResources 文件 (.qrc) 将视频嵌入到可执行文件中。

【讨论】:

我怎样才能转发视频,就像我目前在第 10 秒一样,所以我点击前进按钮然后转到第 20 秒,我该怎么做? 首先,如果答案解决了您的问题,请将其标记为已接受。其次,要前后移动,您需要使用seek()

以上是关于如何使用 video 5.12 qt qml 播放视频?的主要内容,如果未能解决你的问题,请参考以下文章

Qt 5.12 QML,在javascript中通过var选择QML对象

QML 组件“视频”无法播放 Qt 资源文件中的视频文件

QML Video alpha-blending/rendering a video into a Qt Quick Scene Graph

如何在 qml 文件 Qt Android 中使用 setMuted()

无法在 QML 中播放视频

如何在 QT 虚拟键盘上按下信号键并播放声音点击轨道?