package main import ( "fmt" "basic.com/valib/deliver.git" "basic.com/pubsub/protomsg.git" "github.com/pierrec/lz4" ) const ( FDetect = "FaceDetect" // ParamFacePos 检测 FExtract = "FaceExtract" // ParamFaceFeature 提取 FProperty = "FaceProperty" FCompare = "FaceCompare" FtTract = "FaceTrack" FtDetect = "FaceTrackDetect" FtOnly = "FaceTrackOnly" YDetect = "Yolo" ) const mode = deliver.PushPull // MsgRS msg recv and snd type MsgRS struct { Msg protomsg.SdkMessage } // UnCompress uncompress func UnCompress(in []byte) ([]byte, error) { out := make([]byte, 10*len(in)) n, err := lz4.UncompressBlock(in, out) if err != nil { fmt.Println(err) return nil, err } out = out[:n] // uncompressed data return out, nil } // Compress compress func Compress(in []byte) ([]byte, error) { out := make([]byte, len(in)) ht := make([]int, 64<<10) // buffer for the compression table n, err := lz4.CompressBlock(in, out, ht) if err != nil { fmt.Println(err) return nil, err } if n >= len(in) { fmt.Println("image is not compressible") } out = out[:n] // compressed data return out, nil }