1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- package services
- import (
- "eta/eta_pub/models"
- "eta/eta_pub/services/audio"
- "eta/eta_pub/utils"
- "fmt"
- "os"
- "path"
- )
- // HandleVideoDecibel 处理报告中的音频文件
- func HandleVideoDecibel(chapterInfo *models.ReportChapter) {
- var err error
- //fmt.Println("开始 处理报告中的音频文件")
- defer func() {
- if err != nil {
- utils.FileLog.Info(fmt.Sprint(chapterInfo.ReportChapterId, "处理报告中的音频分贝失败:"+err.Error()))
- }
- }()
- inputFile, err := utils.DownloadFile(chapterInfo.VideoUrl, "./static/tmpFile/")
- if err != nil {
- return
- }
- // 删除下载的临时音频文件
- defer func() {
- os.Remove(inputFile)
- }()
- outFileName, ok, _ := audio.ConvAudioDecibel(inputFile)
- if !ok {
- return
- }
- // 删除分贝变更后的音频文件
- defer func() {
- os.Remove(outFileName)
- }()
- // 如果输入与输出文件名一致,那么就不需要覆盖
- if outFileName == inputFile {
- return
- }
- // 音频分贝改变了,需要替换音频文件
- //上传到阿里云
- resourceUrl, err := UploadAliYun(path.Base(outFileName), outFileName)
- if err != nil {
- return
- }
- // 更改表中的音频地址
- chapterInfo.OriginalVideoUrl = chapterInfo.VideoUrl
- chapterInfo.VideoUrl = resourceUrl
- err = chapterInfo.UpdateChapter([]string{"OriginalVideoUrl", "VideoUrl"})
- return
- }
|