$ git clone http://tcclient.ion.nu/tc_client.git
commit 0a86af68d3720ff268eb7207d7acc690ab451536
Author: Alicia <...>
Date:   Tue Oct 11 11:16:36 2016 +0200

    libcamera(escapi): fixed a bug that broke cams on windows unless you only use the first one.

diff --git a/ChangeLog b/ChangeLog
index 26e0101..b01aec9 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -26,6 +26,7 @@ libcamera: added support for a virtual X11 camera.
 tc_client-gtk and camviewer: updated to libavcodec's avcodec_{send,receive}_{frame,packet} API.
 camviewer: removed the old, buggy audio code.
 libcamera(v4l2): cache the frame and if there is no data to be read, return the cache instead of blocking.
+libcamera(escapi): fixed a bug that broke cams on windows unless you only use the first one.
 testbuilds.sh: adjusted for configure no longer accepting --enable-mic (since it's no longer experimental)
 0.39:
 Added a /closecam command to stop receiving a cam stream.
diff --git a/utilities/libcamera/camera_escapi.cpp b/utilities/libcamera/camera_escapi.cpp
index 9b81af9..9032aea 100644
--- a/utilities/libcamera/camera_escapi.cpp
+++ b/utilities/libcamera/camera_escapi.cpp
@@ -1,6 +1,6 @@
 /*
     libcamera, a camera access abstraction library
-    Copyright (C) 2015  alicia@ion.nu
+    Copyright (C) 2015-2016  alicia@ion.nu
 
     This program is free software: you can redistribute it and/or modify
     it under the terms of the GNU Affero General Public License as published by
@@ -88,8 +88,8 @@ void cam_resolution_escapi(CAM* cam, unsigned int* width, unsigned int* height)
 
 void cam_getframe_escapi(CAM* cam, void* pixmap)
 {
-  doCapture(0);
-  while(!isCaptureDone(0)){usleep(100);}
+  doCapture(cam->device);
+  while(!isCaptureDone(cam->device)){usleep(100);}
   unsigned int pixels=cam->capture.mWidth*cam->capture.mHeight;
   unsigned int i;
   for(i=0; i<pixels; ++i)