Bonjour,
j'ai plusieurs vidéos au format *.avi qui ont été enregistrées avec des informations d'horodatage. Il y a donc la date et l'heure d'enregistrement de ces vidéos, que je souhaite récupérer.
Pour cela j'ai utilisé une implémentation de la classe QAbstractVideoSurface, afin de récupérer le flux des trames de ma vidéo.
Il me semblait que l'information d'horodatage était présente dans la première trame pour les fichiers *.avi.
Cependant, dans ma fonction réimplémentée "present", lorsque je récupère les informations de cette trame, les informations ne s'y trouvent pas.
En utilisant le debugger je vois que la variable "availableData" ne contient aucun élément. La variable startTime donne le temps entre la trame lue et la première trame de la vidéo (pour laquelle startTime vaut 0).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 bool VideoFrameGrabber::present(const QVideoFrame &frame) { if(frame.isValid) { QVideoFrame.cloneFrame(frame); cloneFrame.map(QAbstractVideoBuffer::ReadOnly); QVariantMap availableData = cloneFrame.availableMetaData(); qint64 startTime = cloneFrame.startTime(); cloneFrame.unmap(); return true; } return false; }
Je ne parvient donc pas à récupérer la date et l'heure d'enregistrement.
Pouvez vous m'aider à récupérer ces informations?
Merci d'avance!
Partager