mjpeg

用 Go 实现的 MJPEG 视频编写器。「MJPEG video writer implementation in Go.」

Github星跟踪图

mjpeg

Build Status
Go Reference
Go Report Card

MJPEG video writer implementation in Go.

Examples

Let's see an example how to turn the JPEG files 1.jpg, 2.jpg, ..., 10.jpg into a movie file:

checkErr := func(err error) {
    if err != nil {
        panic(err)
    }
}

// Video size: 200x100 pixels, FPS: 2
aw, err := mjpeg.New("test.avi", 200, 100, 2)
checkErr(err)

// Create a movie from images: 1.jpg, 2.jpg, ..., 10.jpg
for i := 1; i <= 10; i++ {
    data, err := ioutil.ReadFile(fmt.Sprintf("%d.jpg", i))
    checkErr(err)
    checkErr(aw.AddFrame(data))
}

checkErr(aw.Close())

Example to add an image.Image as a frame to the video:

aw, err := mjpeg.New("test.avi", 200, 100, 2)
checkErr(err)

var img image.Image
// Acquire / initialize image, e.g.:
// img = image.NewRGBA(image.Rect(0, 0, 200, 100))

buf := &bytes.Buffer{}
checkErr(jpeg.Encode(buf, img, nil))
checkErr(aw.AddFrame(buf.Bytes()))

checkErr(aw.Close())

主要指标

概览
名称与所有者icza/mjpeg
主编程语言Go
编程语言Go (语言数: 1)
平台Linux, Mac, Windows
许可证Apache License 2.0
所有者活动
创建于2016-11-21 09:35:05
推送于2023-03-30 13:41:59
最后一次提交2023-03-30 15:41:56
发布数0
用户参与
星数120
关注者数4
派生数18
提交数28
已启用问题?
问题数3
打开的问题数2
拉请求数1
打开的拉请求数0
关闭的拉请求数0
项目设置
已启用Wiki?
已存档?
是复刻?
已锁定?
是镜像?
是私有?