Why does the read function occasionally freeze MATLAB?

8 vues (au cours des 30 derniers jours)
Tom
Tom le 12 Fév 2013
I'm reading in frames of a video, and for some reason, occasionally the program will just stop reading in frames and MATLAB will freeze. Is there anyway I can fix this? Thank you!
videoObject = mmreader('5A-5D_OCT_2012.wmv');
videoObject.NumberOfFrames;
sugarVideo = read(videoObject,inf);
numberOfFrames = videoObject.NumberOfFrames;
n = rand(1,numberOfFrames);
sugar = cell(1,numberOfFrames);
for r=1:numberOfFrames
n(r) = r;
end
for r = 1:numberOfFrames
sugar{r}= read(videoObject, n(r));
if r==400 || r>=460
r
end
end

Réponses (1)

Jason Ross
Jason Ross le 12 Fév 2013
Modifié(e) : Jason Ross le 12 Fév 2013
When the "freeze" happens, has your machine exhausted the amount of RAM it has and started using virtual memory (aka swap)? You can check this using Task Manager -- if the RAM amount is maxed out, you are using disk to act as memory, which is considerably slower.
Do other programs also slow to a crawl as well, or just MATLAB?
Does it ever recover?
  1 commentaire
Tom
Tom le 12 Fév 2013
It hasn't completely exhausted the RAM, but significantly higher than normal. However the program uses more while it is running than when it is frozen. Also, the CPU usage drops dramatically after it freezes.
It's just MATLAB
No, it doesn't. I have to end the process and open it again.

Connectez-vous pour commenter.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by