Browse Source

fix: support run without config file

close https://github.com/gwuhaolin/livego/issues/74
pull/89/head 0.0.6
吴浩麟 6 years ago
parent
commit
5219d1c1c2
  1. 18
      configure/liveconfig.go
  2. 2
      livego.json
  3. 7
      main.go

18
configure/liveconfig.go

@ -45,28 +45,30 @@ type ServerCfg struct {
Server []Application `json:"server"` Server []Application `json:"server"`
} }
var RtmpServercfg ServerCfg // default config
var RtmpServercfg = ServerCfg{
Server: []Application{{
Appname: "livego",
Liveon: "on",
Hlson: "on",
StaticPush: nil,
}},
}
func LoadConfig(configfilename string) error { func LoadConfig(configfilename string) {
log.Printf("starting load configure file %s", configfilename) log.Printf("starting load configure file %s", configfilename)
data, err := ioutil.ReadFile(configfilename) data, err := ioutil.ReadFile(configfilename)
if err != nil { if err != nil {
log.Printf("ReadFile %s error:%v", configfilename, err) log.Printf("ReadFile %s error:%v", configfilename, err)
return err
} }
// log.Printf("loadconfig: \r\n%s", string(data))
err = json.Unmarshal(data, &RtmpServercfg) err = json.Unmarshal(data, &RtmpServercfg)
if err != nil { if err != nil {
log.Printf("json.Unmarshal error:%v", err) log.Printf("json.Unmarshal error:%v", err)
return err
} }
log.Printf("get config json data:%v", RtmpServercfg) log.Printf("get config json data:%v", RtmpServercfg)
Init() Init()
return nil
} }
func GetKeyFile() *string { func GetKeyFile() *string {

2
config/livego.json → livego.json

@ -1,7 +1,7 @@
{ {
"server": [ "server": [
{ {
"appname": "live", "appname": "livego",
"liveon": "on", "liveon": "on",
"hlson": "on" "hlson": "on"
} }

7
main.go

@ -19,7 +19,7 @@ var (
httpFlvAddr = flag.String("httpflv-addr", ":7001", "HTTP-FLV server listen address") httpFlvAddr = flag.String("httpflv-addr", ":7001", "HTTP-FLV server listen address")
hlsAddr = flag.String("hls-addr", ":7002", "HLS server listen address") hlsAddr = flag.String("hls-addr", ":7002", "HLS server listen address")
operaAddr = flag.String("manage-addr", ":8090", "HTTP manage interface server listen address") operaAddr = flag.String("manage-addr", ":8090", "HTTP manage interface server listen address")
configfilename = flag.String("config-file", "config/livego.json", "configure filename") configfilename = flag.String("config-file", "livego.json", "configure filename")
) )
func init() { func init() {
@ -116,10 +116,7 @@ func main() {
} }
}() }()
log.Println("start livego, version", version) log.Println("start livego, version", version)
err := configure.LoadConfig(*configfilename) configure.LoadConfig(*configfilename)
if err != nil {
return
}
stream := rtmp.NewRtmpStream() stream := rtmp.NewRtmpStream()
hlsServer := startHls() hlsServer := startHls()

Loading…
Cancel
Save