From 9b21b25d1e891e2cda1d5b7ef6beb09fc308f6c5 Mon Sep 17 00:00:00 2001 From: cheliequan <liequanche@126.com> Date: 星期二, 07 二月 2023 17:50:19 +0800 Subject: [PATCH] Merge branch 'master' of http://192.168.5.5:10010/r/valib/c_shm --- shmparser/shmparser.go | 5 +---- main.go | 9 +++++++-- shmparser/shmparser.c | 10 +++++++--- 3 files changed, 15 insertions(+), 9 deletions(-) diff --git a/main.go b/main.go index 73fa91e..4751fa1 100644 --- a/main.go +++ b/main.go @@ -5,6 +5,7 @@ "fmt" "io/ioutil" "os" + "strings" "time" ) @@ -51,9 +52,10 @@ if i < 2 { w, h = 720, 576 } + timestamp := strings.Replace(time.Now().Format("2006-01-02 15:04:05.000"), ".", ":", -1) d := readFile(f) - shmparser.Image2Shm(shm, "cameraid", "cameraname", d, w, h, 1122331122) + shmparser.Image2Shm(shm, "cameraid", "cameraname", timestamp, d, w, h, 1122331122) printImage(shm, fmt.Sprintf("./npic/%dx%d.%d", w, h, i)) } } else { @@ -62,8 +64,11 @@ if i < 2 { w, h = 720, 576 } + + timestamp := strings.Replace(time.Now().Format("2006-01-02 15:04:05.000"), ".", ":", -1) + d := readFile(files[i]) - shmparser.Image2Shm(shm, "cameraid", "cameraname", d, w, h, 1122331122) + shmparser.Image2Shm(shm, "cameraid", "cameraname", timestamp, d, w, h, 1122331122) printImage(shm, fmt.Sprintf("./npic/%dx%d.%d", w, h, i)) } } diff --git a/shmparser/shmparser.c b/shmparser/shmparser.c index 49aceb7..528744d 100644 --- a/shmparser/shmparser.c +++ b/shmparser/shmparser.c @@ -474,8 +474,10 @@ // targets count tmp = put_number(tmp, RULE_SDK_TGT_COUNT, res->count); cursize += tmp - old; + // targets - tmp = put_targets(tmp, res, &cursize); + if (res->count > 0) + tmp = put_targets(tmp, res, &cursize); // 鏈�鍚庝慨鏀� psdksize 鍐呭 Put64(pheader, cursize); @@ -529,8 +531,10 @@ tmp = get_string(tmp, &cmd, &sdk.timestamp, &sdk.timestamp_size); tmp = get_number(tmp, &cmd, &sdk.tgt_count); - sdk.tgt = (struct sttgt*)calloc(sdk.tgt_count, sizeof(struct sttgt)); - tmp = get_targets(tmp, sdk.tgt, sdk.tgt_count); + if (sdk.tgt_count > 0){ + sdk.tgt = (struct sttgt*)calloc(sdk.tgt_count, sizeof(struct sttgt)); + tmp = get_targets(tmp, sdk.tgt, sdk.tgt_count); + } sdkarray[i] = sdk; } diff --git a/shmparser/shmparser.go b/shmparser/shmparser.go index d814eed..1c57973 100644 --- a/shmparser/shmparser.go +++ b/shmparser/shmparser.go @@ -7,8 +7,6 @@ */ import "C" import ( - "strings" - "time" "unsafe" ) @@ -23,8 +21,7 @@ } // Image2Shm fill image to shm -func Image2Shm(shm []byte, cid, cname string, data []byte, w, h int, fid int64) { - timestamp := strings.Replace(time.Now().Format("2006-01-02 15:04:05.000"), ".", ":", -1) +func Image2Shm(shm []byte, cid, cname, timestamp string, data []byte, w, h int, fid int64) { dataptr := (*C.uchar)(unsafe.Pointer(&data[0])) cidbyte := str2byte(cid) -- Gitblit v1.8.0