livemocha/sproutcore — comment on commit 1d20314eed3ae57448ce3c071f97ad31699e2852
File:  line 0
By krotscheck:

I actually wrestled with that detail of the implementation myself, but chose this approach because adding support for media-stream availability detection later on would need to be a little more responsive; Another process (such as skype) could grab the camera away from us. I can see your point though, most of these properties only need to be calculated once.