import QtQuick 2.0 import QtMultimedia 5.0 Item { property string sourceURL: "file:///something/you/can/play.mp4" Loader{ id: l anchors.fill: parent asynchronous: false sourceComponent: vc onLoaded: { console.log("loader loaded"); l.item.source = sourceURL; l.item.play(); } } Component { id: vc Video { Component.onCompleted: console.log("component created"); Component.onDestruction: { console.log("component destroyed"); restartTimer.restart(); } onPlaying: console.log("received playing signal"); onStopped: { console.log("received stopped signal"); l.sourceComponent = null; } } } Timer { id: restartTimer interval: 300 repeat: false onTriggered: { console.log("recreating the component"); l.sourceComponent = vc; } } }