使用“ github.com/blackjack/webcam”库为以go语言编写的视频流加水印

I want to watermark "the video streaming over http" which is written in GO language by using blackjack library. And for this, I found a code watermarking with png. But I could not manage to transform the variables jpeg <-> byte[].

Here is the code part which gets the frame from cam and writes to "JpegImage" variable.

var jpegImage []byte   
frame, err := cam.ReadFrame()
if len(frame) != 0 {
    mutex.Lock()
    jpegImage = frame
    mutex.Unlock()
} 
else if err != nil {
    panic(err.Error())
}

And here is the watermarking code with "image.jpg" variable.

imgb, _ := os.Open("image.jpg")
img, _ := jpeg.Decode(imgb)
defer imgb.Close()

wmb, _ := os.Open("watermark.png")
watermark, _ := png.Decode(wmb)
defer wmb.Close()

offset := image.Pt(200, 200)
b := img.Bounds()
m := image.NewRGBA(b)
draw.Draw(m, b, img, image.ZP, draw.Src)
draw.Draw(m, watermark.Bounds().Add(offset), watermark, image.ZP, draw.Over)

imgw, _ := os.Create("watermarked.jpg")
jpeg.Encode(imgw, m, &jpeg.Options{jpeg.DefaultQuality})
defer imgw.Close()

In the end, I need to combine this two code parts. After getting the frame from cam; firstly transform it to jpg, secondly watermark with png, thirdly transform it to []byte and lastly assign it to "JpegImage" variable.

I hope you can help me please.