release版本,输出每小时一次

This commit is contained in:
lijun 2025-01-19 15:13:51 +08:00
parent 2b3724a00a
commit b00537b5ec
2 changed files with 16 additions and 1 deletions

View File

@ -120,8 +120,9 @@ func GetVideoStream(c *gin.Context) {
return false return false
} }
cnt := service.GetDeviceCurrentFrameV2(&frame, deviceID) cnt := service.GetDeviceCurrentFrameV2(&frame, deviceID)
if cnt == count { if cnt == count || cnt == -1 {
time.Sleep(50 * time.Millisecond) time.Sleep(50 * time.Millisecond)
log.Printf("stream device:%d ,cnt =%d,count=%d,errCount=%d", deviceID, cnt, count, errCount)
errCount++ errCount++
continue continue
} }
@ -203,6 +204,11 @@ func subscribeAndHandleMessagesV3(ws *websocket.Conn, device_id int) {
//从service获取当前帧 //从service获取当前帧
c := service.GetDeviceCurrentFrameV2(&img, device_id) c := service.GetDeviceCurrentFrameV2(&img, device_id)
if c != count { if c != count {
if c == -1 {
log.Printf("device:%d get frame err!", device_id)
worker.SetRedisSetRemove(online_conn_key, con_id)
break
}
//将img转[]byte //将img转[]byte
if img.Empty() { if img.Empty() {
log.Printf("device:%d img is empty! count = %d \n", device_id, c) log.Printf("device:%d img is empty! count = %d \n", device_id, c)

View File

@ -115,16 +115,25 @@ func GetDeviceCurrentFrameV2(frame *gocv.Mat, deviceId int) int {
if (*frame).Empty() { if (*frame).Empty() {
*frame = gocv.NewMatWithSize(Device1CurrentFrame.Rows(), Device1CurrentFrame.Cols(), Device1CurrentFrame.Type()) *frame = gocv.NewMatWithSize(Device1CurrentFrame.Rows(), Device1CurrentFrame.Cols(), Device1CurrentFrame.Type())
} }
if Device1CurrentFrame.Empty() {
return -1
}
Device1CurrentFrame.CopyTo(frame) Device1CurrentFrame.CopyTo(frame)
case 50: case 50:
if (*frame).Empty() { if (*frame).Empty() {
*frame = gocv.NewMatWithSize(Device50CurrentFrame.Rows(), Device50CurrentFrame.Cols(), Device50CurrentFrame.Type()) *frame = gocv.NewMatWithSize(Device50CurrentFrame.Rows(), Device50CurrentFrame.Cols(), Device50CurrentFrame.Type())
} }
if Device50CurrentFrame.Empty() {
return -1
}
Device50CurrentFrame.CopyTo(frame) Device50CurrentFrame.CopyTo(frame)
case 73: case 73:
if (*frame).Empty() { if (*frame).Empty() {
*frame = gocv.NewMatWithSize(Device73CurrentFrame.Rows(), Device73CurrentFrame.Cols(), Device73CurrentFrame.Type()) *frame = gocv.NewMatWithSize(Device73CurrentFrame.Rows(), Device73CurrentFrame.Cols(), Device73CurrentFrame.Type())
} }
if Device73CurrentFrame.Empty() {
return -1
}
Device73CurrentFrame.CopyTo(frame) Device73CurrentFrame.CopyTo(frame)
} }