]> 127.0.0.1 Git - bili_danmu/.git/commitdiff
Fix ws重新链接避免重复录制
authorqydysky <32743305+qydysky@users.noreply.github.com>
Fri, 20 Jan 2023 18:57:53 +0000 (02:57 +0800)
committerqydysky <32743305+qydysky@users.noreply.github.com>
Fri, 20 Jan 2023 18:57:53 +0000 (02:57 +0800)
Reply/F.go

index c8aedeeed78cce6ecb4c2ea79fb2934f3c626000..9a444095786606a92f965ad2e4d5709b6c1ab995 100644 (file)
@@ -118,12 +118,13 @@ func selfcross2(a []string) (float32, string) {
 }
 
 // 功能区
-// ShowRev 显示h营收
+// ShowRev 显示营收
 var (
        ShowRev_old   float64
        ShowRev_start bool
 )
 
+// 显示营收
 func ShowRevf() {
        if !IsOn("统计营收") {
                return
@@ -310,9 +311,7 @@ func init() {
                                        tmp.Callback_stop = func(ms *M4SStream) {
                                                streamO.Delete(ms.common.Roomid) //流服务去除
                                        }
-                                       if tmp.Start() {
-                                               streamO.Store(item.Roomid, tmp)
-                                       }
+                                       tmp.Start()
                                } else if !item.IsRec && ok {
                                        if v.(*M4SStream).Status.Islive() {
                                                v.(*M4SStream).Stop()
@@ -330,13 +329,16 @@ func init() {
 }
 
 // 获取实例的录制状态
-func StreamOStatus(roomid int) bool {
+func StreamOStatus(roomid int) (Islive bool) {
        v, ok := streamO.Load(roomid)
        return ok && (v.(*M4SStream).Status.Islive() || v.(*M4SStream).exitSign.Islive())
 }
 
 // 开始实例
 func StreamOStart(roomid int) {
+       if StreamOStatus(roomid) {
+               return
+       }
        var (
                tmp    = new(M4SStream)
                common = c.C
@@ -359,9 +361,7 @@ func StreamOStart(roomid int) {
        tmp.Callback_stop = func(ms *M4SStream) {
                streamO.Delete(ms.common.Roomid) //流服务去除
        }
-       if tmp.Start() {
-               streamO.Store(roomid, tmp)
-       }
+       tmp.Start()
 }
 
 // 停止实例