  var localTime0 = new Date();
  var camLocalTime = new Date();
  var camTimerId = 0;

  function updateCamLocalTime() {
    if (camLocalTime == 0)
      return;
    var tid = new Date();
    var camTimeInc = 0; // (tid.getTime() - localTime0.getTime());
    camLocalTime = tid.getTime();
    tid.setTime(camLocalTime  + camTimeInc);
    var day = (tid.getDate() < 10 ? '0' + tid.getDate() : tid.getDate());
    var month = (tid.getMonth() < 9 ? '0' + (tid.getMonth()+1) : tid.getMonth()+1);
    var year = tid.getFullYear();
    var hours = (tid.getHours() < 10 ? '0' + tid.getHours() : tid.getHours());
    var mins = (tid.getMinutes() < 10 ? '0' + tid.getMinutes() : tid.getMinutes());
    var secs = (tid.getSeconds() < 10 ? '0' + tid.getSeconds() : tid.getSeconds());
    if ($('camticktimer') != null)
      $('camticktimer').innerHTML = day+'.'+month+'.'+year+' '+hours+':'+mins+':'+secs;
    camTimerId = setTimeout('updateCamLocalTime();', 300);
  }

  var liveFeedText = new Array("(-)", "((-))", "((&nbsp;-&nbsp;))", "((&nbsp;&nbsp;-&nbsp;&nbsp;))");
  var liveFeedRoll = 0;
  var prevState = 0;
  var monitorWait = 1000;

  function monitorPlayer()
  {
    var vlc = vlctarget;
    if (vlc == null || vlc.input == null)
        return;
    var newState = vlc.input.state;
    monitorWait = 1000;
    if( prevState != newState )
    {
    	if( newState == 0 )
    	{
  	    // current media has stopped
        $('monitor').innerHTML = ' ';
    	}
    	else if( newState == 1 )
    	{
    	  // current media is openning/connecting
        $('monitor').innerHTML = '.';
    	}
    	else if( newState == 2 )
    	{
   	    // current media is buffering data
        monitorWait = 10000;
        $('monitor').innerHTML = '!';
    	}
    	else if( newState == 3 )
    	{
    	  // current media is now playing
        monitorWait = 3000;
        liveFeedRoll = liveFeedRoll & 3;
        $('monitor').innerHTML = liveFeedText[liveFeedRoll++];
    	}
    	else if( vlc.input.state == 4 )
    	{
    	    // current media is now paused
        $('monitor').innerHTML = ' ';
    	}
    	prevState = newState;
    } else if( newState == 3 )
      {
    	 // current media is playing
        monitorWait = 3000;
        liveFeedRoll = liveFeedRoll & 3;
        $('monitor').innerHTML = liveFeedText[liveFeedRoll++];
      }
      monitorTimerId = setTimeout("monitorPlayer()", monitorWait);
  };

	var vlc_controls = null;
  var vlcobject = null;
  var vlcobjectID = null;
  var vlctarget = null;
  var monitorTimerId = 0;
  var cameraImageWidth = 640;
  var cameraImageHeight = 480;
  var cameraSrc = '';

	function initPlayer() {
    if (camLocalTime == 0) {
      return;
    }
		// load basic VLCobject
		vlcobject =
      new VLCObject("webcam", cameraImageWidth, cameraImageHeight, "0.8.6");
    vlcobject.addParam("http-caching", 1000);
    vlcobject.addParam("http-reconnect", 1);
    vlcobject.addParam("http-continuous", 1);
    vlcobject.addParam("src", cameraSrc);
    vlcobject.addParam("AutoLoop", "true");
    vlcobject.addParam("AutoPlay", "true");


    vlcobject.write("streamcontent");
    vlcobjectID = vlcobject.getAttribute('id');
    vlctarget = document.getElementById(vlcobjectID);

    monitorPlayer();

	}

	function stopplay() {
    if (vlctarget != null && vlctarget.playlist != null) {
      vlctarget.playlist.stop();
    }
	}
