research_king / Mbed 2 deprecated WiFi_Camera

Dependencies:   EthernetInterface mbed-rtos mbed

Fork of WiFi_Camera by Hiroshi Nakanishi

Revision:
7:aa6d95034cf2
Parent:
6:ac677b091f76
Child:
8:6baeb73b4728
diff -r ac677b091f76 -r aa6d95034cf2 main.cpp
--- a/main.cpp	Fri Nov 04 14:44:25 2016 +0000
+++ b/main.cpp	Fri Nov 04 15:41:24 2016 +0000
@@ -47,10 +47,12 @@
 #define ESP_Baud        115200                          // WiFi Module Port
 #define WIFI_BUF        256                             // WiFi Buffer Length
 
-#define CAMERA_SHOT         "{\"method\": \"actTakePicture\",\"params\": [],\"id\": 1,\"version\": \"1.0\"}"
-#define CAMERA_REC_START    "{\"method\": \"startMovieRec\",\"params\": [],\"id\": 1,\"version\": \"1.0\"}"
-#define CAMERA_REC_STOP     "{\"method\": \"stopMovieRec\",\"params\": [],\"id\": 1,\"version\": \"1.0\"}"
-
+#define CAMERA_SET_PICMODE      "{\"method\": \"setShootMode\",\"params\": [\"still\"],\"id\": 1,\"version\": \"1.0\"}"
+#define CAMERA_SET_MOVIEMODE    "{\"method\": \"setShootMode\",\"params\": [\"movie\"],\"id\": 1,\"version\": \"1.0\"}"
+#define CAMERA_SHOT             "{\"method\": \"actTakePicture\",\"params\": [],\"id\": 1,\"version\": \"1.0\"}"
+#define CAMERA_REC_START        "{\"method\": \"startMovieRec\",\"params\": [],\"id\": 1,\"version\": \"1.0\"}"
+#define CAMERA_REC_STOP         "{\"method\": \"stopMovieRec\",\"params\": [],\"id\": 1,\"version\": \"1.0\"}"
+int     cameraStat = 0;
 #endif // WIFI_ENABLE
 
 /****************************************************************************/
@@ -308,9 +310,34 @@
     
     // build POST Request
     char buf[1024] = {'\0'};
-    // 写真の撮影
-    char dat[] = CAMERA_SHOT;
-    sprintf(buf, "POST /sony/camera HTTP/1.1\r\nHost: 10.0.0.1\r\nContent-Type: application/x-www-form-urlencoded\r\nContent-Length: %d\r\n\r\n%s\r\n",sizeof(dat), dat);
+    // 動画の撮影
+    char dat[128] = {'\0'};
+    
+    //sprintf(dat, "%s", CAMERA_SHOT);
+    
+    switch(cameraStat)
+    {
+        case 0:
+            sprintf(dat, "%s", CAMERA_SET_MOVIEMODE);
+            cameraStat++;
+        break;
+        
+        case 1:
+            sprintf(dat, "%s", CAMERA_REC_START);
+            cameraStat++;
+        break;
+        
+        case 2:
+            sprintf(dat, "%s", CAMERA_REC_STOP);
+            cameraStat++;
+        break;
+        
+        default:
+        
+        break;
+    }
+    
+    sprintf(buf, "POST /sony/camera HTTP/1.1\r\nHost: 10.0.0.1\r\nContent-Type: application/x-www-form-urlencoded\r\nContent-Length: %d\r\n\r\n%s\r\n",(strlen(dat)+1), dat);
 
     /*
     sprintf(buf, "GET %saction=add&token=001&lat=%lf&lon=%lf&height=%lf HTTP/1.1\r\nHost: %s\r\n\r\n",