首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Qt 5.5:在媒体播放器中加载视频的时长是什么时候设置的

Qt 5.5:在媒体播放器中加载视频的时长是什么时候设置的
EN

Stack Overflow用户
提问于 2015-07-30 00:11:37
回答 1查看 1.2K关注 0票数 0

我想知道什么时候mediaplayer的持续时间字段会被你想要播放的视频更新。

例如,如果我加载视频并点击播放它,我可以在播放视频"onPressed“时读取持续时间,但是如果我加载视频"onPressed”我可以播放它,但是持续时间被设置为0。

此字段何时更新,或者如何动态加载加载视频并获取持续时间?

代码语言:javascript
运行
复制
import QtQuick 2.4
import QtQuick.Controls 1.3
import QtQuick.Window 2.2
import QtMultimedia 5.0

ApplicationWindow {
    title: qsTr("Hello Video")
    width: 640
    height: 480
    visible: true

MediaPlayer {
    id: mediaplayer
   // if uncommented, can get duration of video onPressed
   // source: "file:///Users/.../testVideo.mp4"
}

VideoOutput {
    anchors.fill: parent
    source: mediaplayer
}

MouseArea {
    id: playArea
    anchors.fill: parent
    onPressed: {
        // --- If video loaded here, duration is set to 0
        mediaplayer.source= "file:///Users/...../test.mp4"
        console.debug("main::MouseArea::onPressed() - Found media with duration:" + mediaplayer.duration)
        mediaplayer.play();
    }
}

}

EN

回答 1

Stack Overflow用户

发布于 2016-04-05 02:29:11

我认为最初的OP已经有了解决方案,因为这是一个老问题,但我发布它是为了帮助任何有同样问题的人。据我所知,加载媒体后,您可以检查任何元数据属性:

代码语言:javascript
运行
复制
Video{
    id: metaData
    source: "your source here...";
    onStatusChanged: {
        if(status === MediaPlayer.Loaded){
            console.log(metaData.duration);
        }
    }
}

希望能帮助到一些人。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31705800

复制
相关文章

相似问题

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