From 1259edc89eaf352043b5040e8ac64ca1ee9e4548 Mon Sep 17 00:00:00 2001 From: Douglas Goulart Date: Sun, 7 Apr 2024 00:28:58 -0300 Subject: [PATCH] feat: allow slash chat at flv saving --- container/flv/muxer.go | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/container/flv/muxer.go b/container/flv/muxer.go index 932b261..84017ce 100755 --- a/container/flv/muxer.go +++ b/container/flv/muxer.go @@ -150,15 +150,11 @@ func (writer *FLVWriter) Info() (ret av.Info) { type FlvDvr struct{} func (f *FlvDvr) GetWriter(info av.Info) av.WriteCloser { - paths := strings.SplitN(info.Key, "/", 2) - if len(paths) != 2 { - log.Warning("invalid info") - return nil - } + paths := strings.Split(info.Key, "/") flvDir := configure.Config.GetString("flv_dir") - err := os.MkdirAll(path.Join(flvDir, paths[0]), 0755) + err := os.MkdirAll(path.Join(append([]string{flvDir}, paths[:len(paths)-1]...)...), 0755) if err != nil { log.Error("mkdir error: ", err) return nil @@ -172,7 +168,7 @@ func (f *FlvDvr) GetWriter(info av.Info) av.WriteCloser { return nil } - writer := NewFLVWriter(paths[0], paths[1], info.URL, w) + writer := NewFLVWriter(strings.Join(paths[:len(paths)-1], "/"), paths[len(paths)-1], info.URL, w) log.Debug("new flv dvr: ", writer.Info()) return writer }