Как воспроизвести видео из каталога в QML - PullRequest
0 голосов
/ 20 мая 2019

Я пытаюсь воспроизвести видео из локального каталога в Qt QML.

Пока я воспроизводю видео из файла ресурсов, но моя цель - вызвать локальный каталог и воспроизвести одно за другим все видео внутри этого каталога. Возможно ли это сделать в Qt QML?

Video {
    id: video
    autoPlay: true
    loops: MediaPlayer.Infinite
    source: "qrc:/Resources/samplevideo.mp4"
}

1 Ответ

0 голосов
/ 20 мая 2019

Вы можете получить список файлов определенной папки и перебрать его, используя FolderListModel Тип QML :

import Qt.labs.folderlistmodel 2.12
// ...
FolderListModel {
    id: folderModel
    /// Put here URL of folder with videos
    folder: "file:" + "/home/tro/Videos/"
    /// Put a list of file name filters
    nameFilters: ["*.avi"]
    showDirs: false
    onStatusChanged: {
        if (folderModel.status == FolderListModel.Ready) {
            console.log('Folder Model Loaded')
            console.log("Folder list contains ", folderModel.count, "elements:")
            for (var i = 0; i < folderModel.count; ++i) {
                console.log("\t", i, folderModel.get(i, "fileURL"))
            }
        }
    }
}

Кроме того, см. Документацию по method get, чтобы лучше понять, что вы можете получить (например, здесь мы используем только fileURL).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...