No digamos tanto como un video, pensá que un video tiene habitualmente entre 23/30 cuadros por segundo y la captura de foros y su guardados en el disco va a insumir bastante más tiempo.
Ahora en cuanto a evitar el parpadeo, bastaría que muestres la imagen solo cuando esta se cargó
Código HTML:
Ver original<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"> <meta http-equiv="content-type" content="text/html; charset=utf-8" />
<script type="text/javascript"> //<![CDATA[
/* script */
var timer;
function camara(){
var fecha = new Date();
var ImagenPrueva = new Image();
ImagenPrueva.src = "mapa.jpg?" + fecha.getTime();
ImagenPrueva.onload = function(){
document.getElementById('camara').src = this.src;
}
}
window.onload= function(){
timer = setInterval(camara, 5000);
}
//]]>
<img src="mapa.jpg" alt="camara" widht="400" height= "440" id="camara" />
Otra cosa a considerar es como trabaja tu cámara, algunas almacena la foto siempre con el mismo nombre, otras permiten guardar varias imágenes distintas. En mi caso usa el mismo nombre y se agrega el parametro fecha.getTime() para hacer de src un nombre único y evitar recuperar una imagen de la cache en lugar de la última generada
Saludos