diff --git a/api.go b/api.go index 218dd0d..d7f9f73 100644 --- a/api.go +++ b/api.go @@ -21,15 +21,20 @@ type MergeTsDir_Resp struct { var gMergeIsRunning bool var gMergeIsRunningLocker sync.Mutex -func MergeTsDir(InputTsDir string, OutputMp4Name string) (resp MergeTsDir_Resp) { - { - gMergeIsRunningLocker.Lock() - defer gMergeIsRunningLocker.Unlock() +func beginMerge() bool { + gMergeIsRunningLocker.Lock() + defer gMergeIsRunningLocker.Unlock() - if gMergeIsRunning != false { - return resp - } - gMergeIsRunning = true + if gMergeIsRunning != false { + return false + } + gMergeIsRunning = true + return true +} + +func MergeTsDir(InputTsDir string, OutputMp4Name string) (resp MergeTsDir_Resp) { + if !beginMerge() { + return resp } defer func() { diff --git a/m3u8d-qt/mainwindow.ui b/m3u8d-qt/mainwindow.ui index 31044ee..346f6fa 100644 --- a/m3u8d-qt/mainwindow.ui +++ b/m3u8d-qt/mainwindow.ui @@ -18,7 +18,7 @@ - 1 + 0