segmento/main.go

49 lines
786 B
Go

package main
import (
"flag"
"fmt"
"log"
"net/http"
"os"
"segmenta/pkg/generator"
"segmenta/pkg/handler"
)
// How to stream a static video file as a "live" stream?
func main() {
var url string
flag.StringVar(&url, "url", "", "URL to open")
flag.Parse()
if url == "" {
fmt.Println("Usage:")
flag.PrintDefaults()
os.Exit(-1)
}
// open URL:
client := http.Client{}
resp, err := client.Get(url)
if err != nil {
log.Fatal(err)
}
defer resp.Body.Close()
handler := handler.NewS3Handler("rfwatson-hls", "public-read")
generator := generator.NewFFMPEGGenerator("test", resp.Body)
generator.AddHandler(handler)
fmt.Println("starting generator...")
err = generator.Generate()
if err != nil {
log.Fatal(err)
}
fmt.Println("completed generator...")
}