mismatch between calculated and reported Framerate using VideoReader
Afficher commentaires plus anciens
I am trying to process video data (wmv format) recorded using a standard consumer grade camera using Matlab (R2014a, on Linux/Ubuntu) using VideoReader
vr = VideoReader('my_movie_file.wmv')
frames = read(vr); % read all frames
size(frames, 4) % gives 4025
vr.NumberOfFrames % gives 4025
vr.Duration % gives 134.7950
vr.FrameRate % gives 15
Now, this does not compute!
I.e,
round(vr.FrameRate*vr.Duration) % gives 2022,
which is half the size of vr.NumberOfFrames -- which means that the reported FrameRate is 1/2 the "calculated" value!
What am I missing?? All help will be appreciated.
5 commentaires
Matthew Eicholtz
le 22 Mar 2016
I tried this with one of the built-in videos ('xylophone.mp4') and could not reproduce your error. Sorry.
KV
le 22 Mar 2016
Matthew Eicholtz
le 22 Mar 2016
I just tried it with a .wmv file I had on my machine and still had no problem.
Walter Roberson
le 22 Mar 2016
Is the file variable framerate? If so then the reported framerate might be the last one in the file (the one in effect at the time you queried)
KV
le 23 Mar 2016
Réponses (0)
Catégories
En savoir plus sur Get Started with MATLAB dans Centre d'aide et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!