This is a more theoretical question:
When I'm watching larger videos (> 15 min) on the internet via flashplayer or divx, after some minutes, the video quality begins to decrease (like the video starts lagging). When I now press the pause button and resume the playing after a short period of time, like 10 seconds, the video quality is again like normal for another couple of minutes, but then the video quality again decreases, so I have to pause again for some seconds.
My question is, from a software design point-of-view, why does the pausing stop the video from lagging? I thought it could be because the software gets time to refresh its caches, but I would be really interested in the correct answer.
Try youtube. It shows how is the buffer that serves as the read-ahead buffer is full. When it is exhausted (due to slower connection) the video will start to degrade and slow down. Pausing causes read-ahead buffer to fill again.