title: Is it possible to detect when the camera is on/ready with getUserMedia?
body: <p>I am successfully using webcam.js with an angular app to allow users to capture a picture of themselves.  However I'm having a problem where some users are uploading blank - all white or all black photos.  I suspect that some cameras start up more slowly than others which is allowing users to take pictures of themselves that are blank before the camera is really working.</p>
  
  <p>I would like to be able to detect when the camera is actually on and streaming so I could wait until then to make the Take Photo button available.  Normally after you go through the security step of allowing the camera, the video element is blank for half a second while the camera is turning on or the source is being loaded or whatever is happening.  On my computer if I move fast I can just barely click the take picture button before the video steam is loaded and it will take a picture that shows as all black.  I'm guessing on some computers that the half a second could be longer, possibly enough so that people are trying to take pictures before they see themselves on the screen.</p>
  
  <p>We're also trying to solve this with some better UX, but it would be great if there was a way to prevent people from taking pictures before the camera is ready.  I haven't been able to find anything so far about detecting when the camera is on, but have thought about the possibility of detecting the dominant color of a picture that's been taken and if it's all black or white tell the user to take it again, using something like this: <a href="https://stackoverflow.com/questions/2541481/get-average-color-of-image-via-javascript">Get average color of image via Javascript</a>.  Obviously not ideal to have the user go through that loop though if we could wait to show the take picture button.</p>
  
  <p>Thank you in advance!</p>