Live video on the AT Protocol
at next 56 lines 1.1 kB view raw
1package cmd 2 3import ( 4 "context" 5 "flag" 6 "strings" 7 8 "github.com/golang/glog" 9 "github.com/livepeer/go-livepeer/cmd/livepeer/starter" 10 "stream.place/streamplace/pkg/config" 11) 12 13func GoLivepeer(ctx context.Context, fs *flag.FlagSet) error { 14 lpfs := flag.NewFlagSet("livepeer", flag.ExitOnError) 15 cfg := starter.NewLivepeerConfig(lpfs) 16 fs.VisitAll(func(f *flag.Flag) { 17 if !strings.HasPrefix(f.Name, "livepeer.") { 18 return 19 } 20 name := strings.TrimPrefix(f.Name, "livepeer.") 21 adapted := config.LivepeerFlags.SnakeToCamel[name] 22 23 if adapted == "" { 24 panic("unknown livepeer flag: " + name) 25 } 26 err := lpfs.Set(adapted, f.Value.String()) 27 if err != nil { 28 panic(err) 29 } 30 }) 31 32 err := flag.Set("logtostderr", "true") 33 if err != nil { 34 return err 35 } 36 vFlag := flag.Lookup("v") 37 err = vFlag.Value.Set("3") 38 if err != nil { 39 return err 40 } 41 42 // Config file 43 // err = ff.Parse(fs, args, 44 // ff.WithConfigFileFlag("config"), 45 // ff.WithEnvVarPrefix("SP_LIVEPEER"), 46 // ) 47 if err != nil { 48 glog.Exit("Error parsing config: ", err) 49 } 50 51 cfg = starter.UpdateNilsForUnsetFlags(cfg) 52 53 starter.StartLivepeer(ctx, cfg) 54 55 return nil 56}