Commit 198a5700 authored by Oleg Dzhimiev's avatar Oleg Dzhimiev
Browse files

1. improved jp4 preview stability

2. multi cameras single control page
parent 8c90a903
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
# Runs 'make', 'make install', and 'make clean' in specified subdirectories
SUBDIRS := src/php_top src/python_tests src/debugfs-webgui src/jp4-canvas src/update src/eyesis4pi src/index src/pointers src/snapshot src/jp4-viewer src/photofinish # src1
SUBDIRS := src/php_top src/python_tests src/debugfs-webgui src/jp4-canvas src/update src/eyesis4pi src/index src/pointers src/snapshot src/jp4-viewer src/photofinish src/multicam # src1
INSTALLDIRS = $(SUBDIRS:%=install-%)
CLEANDIRS =   $(SUBDIRS:%=clean-%)

+15 −15
Original line number Diff line number Diff line
@@ -189,7 +189,7 @@ $(function(){
function init_jp4_previews(){
	$('.port_preview').each(function(){
		index = parseInt($(this).attr("index"));
		$(this).jp4({ip:"127.0.0.1",port:2323+index,width:300,fast:true,lowres:4});
		$(this).jp4({ip:location.host,port:2323+index,width:300,fast:true,lowres:4});
	});
}

+10 −3
Original line number Diff line number Diff line
@@ -40,8 +40,15 @@ header("Location: http://{$_SERVER['HTTP_HOST']}:$port/$rel");
die();
*/

$port0 = 2323;
$pointers = elphel_get_circbuf_pointers(intval($port)-$port0,1);
$pointer = $pointers[count($pointers)-1]['circbuf_pointer'];

// allow CORS
header('Access-Control-Allow-Origin: *');
header('Content-type:image/jpeg');
echo file_get_contents("http://$ip:$port/$rel");
echo file_get_contents("http://$ip:$port/$pointer/$rel");
//echo file_get_contents("http://$ip:$port/$rel");

die();

+15 −3
Original line number Diff line number Diff line
@@ -78,6 +78,8 @@
    var cnv_working = $("<canvas>",{id:"working"});
    var cnv_display = $("<canvas>",{id:"display"});

    obj.busy = false;

    // hide working canvas
    cnv_working.css({display:"none"});
    /*
@@ -102,6 +104,7 @@
         * make sure the image data starts with: "data:image/jpeg;base64,"
         * EXIF.js does not like empty data type: "data:;base64,"
         */
        obj.busy = true;
        process_image(settings.image);
    }else{
        send_request();
@@ -115,7 +118,8 @@
      var http = new XMLHttpRequest();

      if (settings.port!=""&&settings.ip!=""){
        rq = "/get-image.php?ip="+settings.ip+"&port="+settings.port+"&rel=bimg&ts="+Date.now();
        //rq = "/get-image.php?ip="+settings.ip+"&port="+settings.port+"&rel=bimg&ts="+Date.now();
        rq = "http://"+settings.ip+"/get-image.php?ip="+settings.ip+"&port="+settings.port+"&rel=img&ts="+Date.now();
        //rq = "get-image.php?ip="+settings.ip+"&port="+settings.port+"&rel=img&ts="+Date.now();
        //settings.refresh = true;
      }else{
@@ -137,13 +141,17 @@
        }
      };

      obj.busy = true;
      http.send();

    }

    this.refresh = function(){
      // skip if busy?
      if (!obj.busy){
        send_request();
      }
    }

    this.resize = function(w){

@@ -244,6 +252,7 @@
            }

            $(this).trigger("canvas_ready");
            obj.busy = false;

            if (settings.refresh) {
                if (DEBUG){
@@ -360,6 +369,7 @@
        }
        //trigger here
        cnv_working.trigger("canvas_ready");
        obj.busy = false;

        if (settings.refresh) {
            if (DEBUG){
@@ -368,6 +378,8 @@
            }
            send_request();
        }

        this.terminate();
      }

    }
@@ -392,7 +404,7 @@
      bayer_mode = 0; // r gr / gb b
      if (typeof MakerNote !== 'undefined'){
        bayer_mode = (MakerNote[10]>>2)&0x3;
        console.log("Bayer mode = "+bayer_mode);
        //console.log("Bayer mode = "+bayer_mode);
        switch(bayer_mode){
          case 0: BAYER = [["Gr","R"],["B","Gb"]];break;
          case 1: BAYER = [["R","Gr"],["Gb","B"]];break;
+8 −7
Original line number Diff line number Diff line
@@ -34,5 +34,6 @@ self.onmessage = function(e) {
  },[reorderedPixels.buffer]);

  //Elphel.test();
  this.close();

};
 No newline at end of file
Loading