The easiest would be to save your JPEG images in a video file of format MJPEG, which is a simple video format consisting a series of JPEG images.
You may turn to different ready-to-use encoders to turn a series of JPEG images into an MJPEG (or any other format) video file, such as ffmpeg. Using ffmpeg
, you could do it with the following command:
ffmpeg -r 2 -i "%02d.jpg" -vcodec mjpeg test.avi
If you want to do it in Go, you may use the dead-simple github.com/icza/mjpeg
package (disclosure: I'm the author).
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())