优化全局zap的打印,修复待机任务出现多个的情况
This commit is contained in:
@@ -2,6 +2,7 @@ package utils
|
||||
|
||||
import (
|
||||
"bytes"
|
||||
"fmt"
|
||||
"game-driver/pkg/logger"
|
||||
"io"
|
||||
"net/http"
|
||||
@@ -48,21 +49,20 @@ func get(u string) io.ReadCloser {
|
||||
}
|
||||
|
||||
// LinkAudio 链接音频,解析链接,直接提取为数据流
|
||||
func LinkAudio(link string) (bgm io.ReadCloser) {
|
||||
func LinkAudio(link string) (bgm io.ReadCloser, err error) {
|
||||
if link == "" {
|
||||
return nil
|
||||
return
|
||||
}
|
||||
u, err := url.Parse(link)
|
||||
if err != nil {
|
||||
logger.Infoln("音频 URL 解析错误: ", err)
|
||||
err = fmt.Errorf("URL 解析错误: %v", err)
|
||||
} else {
|
||||
if u.Scheme == "file" {
|
||||
bgm = open(link)
|
||||
} else if u.Scheme == "http" || u.Scheme == "https" {
|
||||
bgm = get(link)
|
||||
} else {
|
||||
logger.Infof("不支持的音频文件协议: %v\n", u.String())
|
||||
return
|
||||
err = fmt.Errorf("不支持的链接协议: %v", u.String())
|
||||
}
|
||||
bgm = toSeeker(bgm)
|
||||
}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
package utils
|
||||
|
||||
import (
|
||||
"game-driver/pkg/logger"
|
||||
"fmt"
|
||||
"io"
|
||||
"net/http"
|
||||
"net/url"
|
||||
@@ -11,13 +11,13 @@ import (
|
||||
)
|
||||
|
||||
// LinkVideo 链接视频,解析链接,网络文件会下载到临时目录并返回本地路径
|
||||
func LinkVideo(link string) (local string) {
|
||||
func LinkVideo(link string) (local string, err error) {
|
||||
if link == "" {
|
||||
return
|
||||
}
|
||||
u, err := url.Parse(link)
|
||||
if err != nil {
|
||||
logger.Infoln("音频 URL 解析错误: ", err)
|
||||
err = fmt.Errorf("URL 解析错误: %v", err)
|
||||
} else {
|
||||
if u.Scheme == "file" {
|
||||
local, _ = strings.CutPrefix(link, "file://")
|
||||
@@ -26,13 +26,12 @@ func LinkVideo(link string) (local string) {
|
||||
tmpLocal := path.Join(os.TempDir(), path.Base(p))
|
||||
err = Download(link, tmpLocal)
|
||||
if err != nil {
|
||||
logger.Infoln("音频文件下载失败: ", err)
|
||||
err = fmt.Errorf("链接文件获取失败: %v", err)
|
||||
return
|
||||
}
|
||||
local = tmpLocal
|
||||
} else {
|
||||
logger.Infof("不支持的视频链接协议: %v\n", u.String())
|
||||
return
|
||||
err = fmt.Errorf("不支持的链接协议: %v", u.String())
|
||||
}
|
||||
}
|
||||
return
|
||||
|
||||
Reference in New Issue
Block a user