From f88a44f58396fb36a979cfe5640a36d6ac2d7289 Mon Sep 17 00:00:00 2001 From: liuxiaolong <736321739@qq.com> Date: 星期四, 25 七月 2019 14:50:56 +0800 Subject: [PATCH] add discovery --- service/CamraUpdatesnashot.go | 53 +++++++++++++++++++++++++++++++++++++---------------- 1 files changed, 37 insertions(+), 16 deletions(-) diff --git a/service/CamraUpdatesnashot.go b/service/CamraUpdatesnashot.go index 233447d..ad5ab9f 100644 --- a/service/CamraUpdatesnashot.go +++ b/service/CamraUpdatesnashot.go @@ -1,27 +1,16 @@ package service import ( - "flag" - "fmt" - "os" - "os/exec" - "strconv" - "time" - "webserver/extend/config" - - "bytes" - "encoding/json" "errors" - "gocv.io/x/gocv" - "io" - "log" - "mime/multipart" - "net/http" "path/filepath" + "strconv" + "webserver/extend/config" + "webserver/extend/esutil" "basic.com/dbapi.git" + "basic.com/valib/capture.git" ) - +/*浠ヤ笅灞炰簬鏃х増鏈湴鎽勫儚鏈鸿幏鍙栨埅鍥撅紙鍥芥爣鎽勫儚鏈哄簳鍥炬棤娉曞埛鏂帮級 func PostFormBufferData(uri string, filepath string, fileName string) (maps map[string]interface{}, err0 error) { // 瑕佹寚瀹氳浆byte鐨勬牸寮� picMat := gocv.IMRead(filepath, gocv.IMReadColor) @@ -142,4 +131,36 @@ return "", errors.New("update filelocal to camera fail") } return filename, nil +}*/ + +//璋冪敤缁熶竴鎺ュ彛锛屽埛鏂板簳鍥撅紙闆嗘垚鍥芥爣搴曞浘鍒锋柊锛� +func UpdateCapture(cid string) (fileName string,err error){ + var cameraApi dbapi.CameraApi + camera, err := cameraApi.GetCameraById(cid) + if err !=nil{ + return "",errors.New("camera not exist") + } + + m := capture.Rtsp + if camera.Type == 1{//鍥芥爣鎽勫儚鏈� + m = capture.GB28181 + } + b,err := capture.Capture("./runtime/libcffmpeg.so",m,camera.Rtsp,capture.JPEGFileExt,1280,720,10) + if err == nil{ + var weedfsUri = "http://"+config.WeedFs.Ip+":"+strconv.Itoa(config.WeedFs.UploadPort)+"/submit" + resp, err := esutil.PostFormBufferData(weedfsUri, camera.Name+".jpg", "file", b) + if err != nil { + return "",err + } else { + fileurl := resp["fileUrl"].(string) // 鏂囦欢璺緞 + filename := filepath.Base(fileurl) + ok := cameraApi.UpdateSnapshotUrl(cid, filename) + if !ok { + return "", errors.New("update camera's snapshot fail") + } + return filename, nil + } + }else{ + return "",err + } } -- Gitblit v1.8.0