From 84cba437249e3c109435c9b93a4026c6098cb491 Mon Sep 17 00:00:00 2001 From: James Mills Date: Sat, 21 Mar 2020 10:46:03 +1000 Subject: Add support for on-demand thumbnail generation via github.com/mutschler/mt --- media/video.go | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'media/video.go') diff --git a/media/video.go b/media/video.go index 9340e86..9c10b1e 100644 --- a/media/video.go +++ b/media/video.go @@ -1,8 +1,11 @@ package media import ( + "fmt" + "io/ioutil" "os" "path" + "path/filepath" "strings" "time" @@ -72,6 +75,17 @@ func ParseVideo(p *Path, name string) (*Video, error) { if pic != nil { v.Thumb = pic.Data v.ThumbType = pic.MIMEType + } else if cmdExists("mt") { + if err := runCmd(3, "mt", "-s", "-n", "1", pth); err != nil { + return nil, err + } + data, err := ioutil.ReadFile(fmt.Sprintf("%s.jpg", strings.TrimSuffix(pth, filepath.Ext(pth)))) + if err != nil { + return nil, err + } + v.Thumb = data + v.ThumbType = "image/jpeg" } + return v, nil } -- cgit v1.2.3