Press "Enter" to skip to content

Affichage multiple de caméras IP en live

Affichage simultané de caméras IP réparties dans le monde. Les URLs utilisés sont disponible sur le site opentopia.com.
Le nombre de vidéos affichées dépend des performances de la connexion internet.

Source: ipCamImgOpentopia.pde / Processing 3.5.3

// http://www.opentopia.com/ = site de streaming de caméra IP image par image

String[] urlTab = {"http://217.91.198.145:8036/record/current.jpg",
                   "http://149.43.156.105/jpg/image.jpg",
                   "http://89.203.137.209/jpg/image.jpg",
                   "http://cam.linpro.no/jpg/image.jpg",
                   "http://82.77.65.43:8208/record/current.jpg",
                   "http://192.82.150.11:8086/jpg/image.jpg"};

PImage liveTab[] = new PImage[urlTab.length];
int liveTabSize, tabColumns, refreshTimer;
PVector pictureSize;

void setup() {
  size(1280, 720);
  frameRate(30);
  
  tabColumns = 3;
  liveTabSize = liveTab.length;
  pictureSize = new PVector();
  pictureSize.x = ceil(width/tabColumns);
  pictureSize.y = height/(ceil((float) liveTabSize/3));
  println("pictureSize = " + pictureSize.x + "/" + pictureSize.y);
  refreshPicture();
}

void refreshPicture(){
  for(int i=0; i<liveTabSize; i++){
    liveTab[i] = loadImage(urlTab[i]);
  }
  refreshTimer = millis() + 1000;
}

void draw() {
  if(millis() > refreshTimer){
    refreshPicture();
  }
  
  for(int i=0; i<liveTabSize; i++){
    image(liveTab[i], (i-floor(i/3)*3)*pictureSize.x, (i/3)*pictureSize.y, pictureSize.x, pictureSize.y);
  }
}

Comments are closed.