fix: 修复媒体整理中的文件覆盖、BMP解析与重复整理问题

- 移动文件改用 uuid+原文件名,避免同名覆盖丢失数据
- BMP 负高度取绝对值,自顶向下格式解析正确
- 新增 {目录名}-picker 白名单输出目录,整理后跳过重复扫描
- 分类目录名去掉 uuid 前缀,重复运行并入已有目录
This commit is contained in:
2025-03-15 21:17:24 +08:00
parent 0ebd84d3fe
commit f5e3f6b4ef
8 changed files with 239 additions and 135 deletions
+10 -1
View File
@@ -56,7 +56,8 @@ func ReadBmpImage(filePath string) (error, int32, int32) {
fmt.Printf("=== Failed to Read file: %v\n", err)
return err, 0, 0
}
return err, infoHeader.Width, infoHeader.Height
// 自顶向下 BMP 的高度为负值,取绝对值避免影响后续解析
return err, absInt32(infoHeader.Width), absInt32(infoHeader.Height)
//fmt.Printf("=== File size: %d bytes\n", fileHeader.FileSize)
//fmt.Printf("=== Image dimensions: %dx%d\n", )
//fmt.Printf("=== Bits per pixel: %d\n", infoHeader.BitsPerPixel)
@@ -76,3 +77,11 @@ func ReadBmpImage(filePath string) (error, int32, int32) {
//}
//fmt.Printf("=== Read %d bytes of pixel data.\n", len(data))
}
// absInt32 返回 int32 的绝对值
func absInt32(v int32) int32 {
if v < 0 {
return -v
}
return v
}
+3
View File
@@ -87,6 +87,9 @@ func visit(currentPath string, info os.FileInfo, err error) error {
if err != nil {
return err // 如果有错误,直接返回
}
if info.IsDir() && vars.GlobalPickerDir != "" && currentPath == vars.GlobalPickerDir {
return filepath.SkipDir // 跳过白名单目录(已整理文件的输出目录)
}
if !info.IsDir() {
vars.GlobalFilePathList = append(vars.GlobalFilePathList, currentPath)
// filename, include ext
+61 -63
View File
@@ -2,7 +2,6 @@ package core
import (
"fmt"
uuid "github.com/satori/go.uuid"
_ "image/gif" // 导入gif支持
_ "image/jpeg" // 导入jpeg支持
_ "image/png" // 导入png支持
@@ -12,7 +11,7 @@ import (
"strings"
)
func DoHandleImage(rootDir string) {
func DoHandleImage(pickerDir string) {
total := len(vars.GlobalImagePathList) // 总数
successCount := 0 // 成功数
errorCount := 0 // 失败数
@@ -63,33 +62,32 @@ func DoHandleImage(rootDir string) {
ignoreCount = ignoreCount + 1
vars.ImageIgnorePathList = append(vars.ImageIgnorePathList, imageFilePath)
}
uid := strings.ReplaceAll(uuid.NewV4().String(), "-", "")
if len(vars.ImagePsdList) > 0 {
psdImagePath := rootDir + string(os.PathSeparator) + uid + "-图片_PSD"
psdImagePath := pickerDir + string(os.PathSeparator) + "图片_PSD"
if util.CreateDir(psdImagePath) {
util.DoMoveFileToDir(vars.ImagePsdList, psdImagePath)
}
}
if len(vars.ImageReadErrorPathList) > 0 {
readInfoErrorPath := rootDir + string(os.PathSeparator) + uid + "-图片_读取异常"
readInfoErrorPath := pickerDir + string(os.PathSeparator) + "图片_读取异常"
if util.CreateDir(readInfoErrorPath) {
util.DoMoveFileToDir(vars.ImageReadErrorPathList, readInfoErrorPath)
}
}
if len(vars.ImageIgnorePathList) > 0 {
ignorePath := rootDir + string(os.PathSeparator) + uid + "-图片_已忽略"
ignorePath := pickerDir + string(os.PathSeparator) + "图片_已忽略"
if util.CreateDir(ignorePath) {
util.DoMoveFileToDir(vars.ImageIgnorePathList, ignorePath)
}
}
doPickImageFile(uid, rootDir, vars.ImagePath2WidthHeightMap)
fmt.Printf("=== 图片处理完毕(UID): %s \n\n", uid)
doPickImageFile(pickerDir, vars.ImagePath2WidthHeightMap)
fmt.Printf("=== 图片处理完毕 \n\n")
}
// 条件图片并分组存放
func doPickImageFile(uid string, rootDir string, imagePath2WidthHeightMap map[string]string) {
func doPickImageFile(pickerDir string, imagePath2WidthHeightMap map[string]string) {
if len(vars.ImagePath2WidthHeightMap) == 0 {
fmt.Printf("=== 当前目录下没有扫描到图片文件, %s \n", rootDir)
fmt.Printf("=== 当前目录下没有扫描到图片文件, %s \n", pickerDir)
return
}
for currentImagePath, infoStr := range imagePath2WidthHeightMap {
@@ -111,10 +109,10 @@ func doPickImageFile(uid string, rootDir string, imagePath2WidthHeightMap map[st
}
handleSquareImage(currentImagePath, width)
}
moveHorizontalImage(rootDir, uid)
moveVerticalImage(rootDir, uid)
moveSquareImage(rootDir, uid)
moveGifImage(rootDir, uid)
moveHorizontalImage(pickerDir)
moveVerticalImage(pickerDir)
moveSquareImage(pickerDir)
moveGifImage(pickerDir)
}
// 统一处理gif
@@ -262,249 +260,249 @@ func handleSquareImage(currentImagePath string, width int) {
}
// 移动水平图片
func moveHorizontalImage(rootDir string, uid string) {
func moveHorizontalImage(pickerDir string) {
pathSeparator := string(os.PathSeparator)
// 标准
if len(vars.ImageHorizontalStandard720PList) > 0 {
imageDirPath := rootDir + pathSeparator + uid + "-图片_横屏_720P"
imageDirPath := pickerDir + pathSeparator + "图片_横屏_720P"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageHorizontalStandard720PList, imageDirPath)
}
if len(vars.ImageHorizontalStandard1D5KList) > 0 {
imageDirPath := rootDir + pathSeparator + uid + "-图片_横屏_1D5KP"
imageDirPath := pickerDir + pathSeparator + "图片_横屏_1D5KP"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageHorizontalStandard1D5KList, imageDirPath)
}
if len(vars.ImageHorizontalStandard1080PList) > 0 {
imageDirPath := rootDir + pathSeparator + uid + "-图片_横屏_1080P"
imageDirPath := pickerDir + pathSeparator + "图片_横屏_1080P"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageHorizontalStandard1080PList, imageDirPath)
}
if len(vars.ImageHorizontalStandard2DKList) > 0 {
imageDirPath := rootDir + pathSeparator + uid + "-图片_横屏_2DKP"
imageDirPath := pickerDir + pathSeparator + "图片_横屏_2DKP"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageHorizontalStandard2DKList, imageDirPath)
}
if len(vars.ImageHorizontalStandard2D5KList) > 0 {
imageDirPath := rootDir + pathSeparator + uid + "-图片_横屏_2D5KP"
imageDirPath := pickerDir + pathSeparator + "图片_横屏_2D5KP"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageHorizontalStandard2D5KList, imageDirPath)
}
if len(vars.ImageHorizontalStandardUltraWide2List) > 0 {
imageDirPath := rootDir + pathSeparator + uid + "-图片_横屏_ultraWide2KP"
imageDirPath := pickerDir + pathSeparator + "图片_横屏_ultraWide2KP"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageHorizontalStandardUltraWide2List, imageDirPath)
}
if len(vars.ImageHorizontalStandardUltraWide3List) > 0 {
imageDirPath := rootDir + pathSeparator + uid + "-图片_横屏_ultraWide3KP"
imageDirPath := pickerDir + pathSeparator + "图片_横屏_ultraWide3KP"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageHorizontalStandardUltraWide3List, imageDirPath)
}
if len(vars.ImageHorizontalStandardUltraWide4List) > 0 {
imageDirPath := rootDir + pathSeparator + uid + "-图片_横屏_ultraWide4KP"
imageDirPath := pickerDir + pathSeparator + "图片_横屏_ultraWide4KP"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageHorizontalStandardUltraWide4List, imageDirPath)
}
if len(vars.ImageHorizontalStandard4KList) > 0 {
imageDirPath := rootDir + pathSeparator + uid + "-图片_横屏_4KP"
imageDirPath := pickerDir + pathSeparator + "图片_横屏_4KP"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageHorizontalStandard4KList, imageDirPath)
}
if len(vars.ImageHorizontalStandard4KHList) > 0 {
imageDirPath := rootDir + pathSeparator + uid + "-图片_横屏_4KHP"
imageDirPath := pickerDir + pathSeparator + "图片_横屏_4KHP"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageHorizontalStandard4KHList, imageDirPath)
}
if len(vars.ImageHorizontalStandard8KList) > 0 {
imageDirPath := rootDir + pathSeparator + uid + "-图片_横屏_8KP"
imageDirPath := pickerDir + pathSeparator + "图片_横屏_8KP"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageHorizontalStandard8KList, imageDirPath)
}
// 非标准
if len(vars.ImageHorizontalNormalList) > 0 {
imageDirPath := rootDir + pathSeparator + uid + "-图片_横屏_普通"
imageDirPath := pickerDir + pathSeparator + "图片_横屏_普通"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageHorizontalNormalList, imageDirPath)
}
if len(vars.ImageHorizontal1KList) > 0 {
imageDirPath := rootDir + pathSeparator + uid + "-图片_横屏_1K"
imageDirPath := pickerDir + pathSeparator + "图片_横屏_1K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageHorizontal1KList, imageDirPath)
}
if len(vars.ImageHorizontal2KList) > 0 {
imageDirPath := rootDir + pathSeparator + uid + "-图片_横屏_2K"
imageDirPath := pickerDir + pathSeparator + "图片_横屏_2K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageHorizontal2KList, imageDirPath)
}
if len(vars.ImageHorizontal3KList) > 0 {
imageDirPath := rootDir + pathSeparator + uid + "-图片_横屏_3K"
imageDirPath := pickerDir + pathSeparator + "图片_横屏_3K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageHorizontal3KList, imageDirPath)
}
if len(vars.ImageHorizontal4KList) > 0 {
imageDirPath := rootDir + pathSeparator + uid + "-图片_横屏_4K"
imageDirPath := pickerDir + pathSeparator + "图片_横屏_4K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageHorizontal4KList, imageDirPath)
}
if len(vars.ImageHorizontal5KList) > 0 {
imageDirPath := rootDir + pathSeparator + uid + "-图片_横屏_5K"
imageDirPath := pickerDir + pathSeparator + "图片_横屏_5K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageHorizontal5KList, imageDirPath)
}
if len(vars.ImageHorizontal6KList) > 0 {
imageDirPath := rootDir + pathSeparator + uid + "-图片_横屏_6K"
imageDirPath := pickerDir + pathSeparator + "图片_横屏_6K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageHorizontal6KList, imageDirPath)
}
if len(vars.ImageHorizontal7KList) > 0 {
imageDirPath := rootDir + pathSeparator + uid + "-图片_横屏_7K"
imageDirPath := pickerDir + pathSeparator + "图片_横屏_7K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageHorizontal7KList, imageDirPath)
}
if len(vars.ImageHorizontal8KList) > 0 {
imageDirPath := rootDir + pathSeparator + uid + "-图片_横屏_8K"
imageDirPath := pickerDir + pathSeparator + "图片_横屏_8K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageHorizontal8KList, imageDirPath)
}
if len(vars.ImageHorizontal9KList) > 0 {
imageDirPath := rootDir + pathSeparator + uid + "-图片_横屏_9K"
imageDirPath := pickerDir + pathSeparator + "图片_横屏_9K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageHorizontal9KList, imageDirPath)
}
if len(vars.ImageHorizontalHKList) > 0 {
imageDirPath := rootDir + pathSeparator + uid + "-图片_横屏_原图"
imageDirPath := pickerDir + pathSeparator + "图片_横屏_原图"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageHorizontalHKList, imageDirPath)
}
}
// 移动垂直图片
func moveVerticalImage(rootDir string, uid string) {
func moveVerticalImage(pickerDir string) {
pathSeparator := string(os.PathSeparator)
// 非标准
if len(vars.ImageVerticalNormalList) > 0 {
imageDirPath := rootDir + pathSeparator + uid + "-图片_竖屏_普通"
imageDirPath := pickerDir + pathSeparator + "图片_竖屏_普通"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageVerticalNormalList, imageDirPath)
}
if len(vars.ImageVertical1KList) > 0 {
imageDirPath := rootDir + pathSeparator + uid + "-图片_竖屏_1K"
imageDirPath := pickerDir + pathSeparator + "图片_竖屏_1K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageVertical1KList, imageDirPath)
}
if len(vars.ImageVertical2KList) > 0 {
imageDirPath := rootDir + pathSeparator + uid + "-图片_竖屏_2K"
imageDirPath := pickerDir + pathSeparator + "图片_竖屏_2K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageVertical2KList, imageDirPath)
}
if len(vars.ImageVertical3KList) > 0 {
imageDirPath := rootDir + pathSeparator + uid + "-图片_竖屏_3K"
imageDirPath := pickerDir + pathSeparator + "图片_竖屏_3K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageVertical3KList, imageDirPath)
}
if len(vars.ImageVertical4KList) > 0 {
imageDirPath := rootDir + pathSeparator + uid + "-图片_竖屏_4K"
imageDirPath := pickerDir + pathSeparator + "图片_竖屏_4K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageVertical4KList, imageDirPath)
}
if len(vars.ImageVertical5KList) > 0 {
imageDirPath := rootDir + pathSeparator + uid + "-图片_竖屏_5K"
imageDirPath := pickerDir + pathSeparator + "图片_竖屏_5K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageVertical5KList, imageDirPath)
}
if len(vars.ImageVertical6KList) > 0 {
imageDirPath := rootDir + pathSeparator + uid + "-图片_竖屏_6K"
imageDirPath := pickerDir + pathSeparator + "图片_竖屏_6K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageVertical6KList, imageDirPath)
}
if len(vars.ImageVertical7KList) > 0 {
imageDirPath := rootDir + pathSeparator + uid + "-图片_竖屏_7K"
imageDirPath := pickerDir + pathSeparator + "图片_竖屏_7K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageVertical7KList, imageDirPath)
}
if len(vars.ImageVertical8KList) > 0 {
imageDirPath := rootDir + pathSeparator + uid + "-图片_竖屏_8K"
imageDirPath := pickerDir + pathSeparator + "图片_竖屏_8K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageVertical8KList, imageDirPath)
}
if len(vars.ImageVertical9KList) > 0 {
imageDirPath := rootDir + pathSeparator + uid + "-图片_竖屏_9K"
imageDirPath := pickerDir + pathSeparator + "图片_竖屏_9K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageVertical9KList, imageDirPath)
}
if len(vars.ImageVerticalHKList) > 0 {
imageDirPath := rootDir + pathSeparator + uid + "-图片_竖屏_原图"
imageDirPath := pickerDir + pathSeparator + "图片_竖屏_原图"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageVerticalHKList, imageDirPath)
}
}
// 移动等比图片
func moveSquareImage(rootDir string, uid string) {
func moveSquareImage(pickerDir string) {
pathSeparator := string(os.PathSeparator)
// 非标准
if len(vars.ImageSquareNormalList) > 0 {
imageDirPath := rootDir + pathSeparator + uid + "-图片_等比_普通"
imageDirPath := pickerDir + pathSeparator + "图片_等比_普通"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageSquareNormalList, imageDirPath)
}
if len(vars.ImageSquare1KList) > 0 {
imageDirPath := rootDir + pathSeparator + uid + "-图片_等比_1K"
imageDirPath := pickerDir + pathSeparator + "图片_等比_1K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageSquare1KList, imageDirPath)
}
if len(vars.ImageSquare2KList) > 0 {
imageDirPath := rootDir + pathSeparator + uid + "-图片_等比_2K"
imageDirPath := pickerDir + pathSeparator + "图片_等比_2K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageSquare2KList, imageDirPath)
}
if len(vars.ImageSquare3KList) > 0 {
imageDirPath := rootDir + pathSeparator + uid + "-图片_等比_3K"
imageDirPath := pickerDir + pathSeparator + "图片_等比_3K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageSquare3KList, imageDirPath)
}
if len(vars.ImageSquare4KList) > 0 {
imageDirPath := rootDir + pathSeparator + uid + "-图片_等比_4K"
imageDirPath := pickerDir + pathSeparator + "图片_等比_4K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageSquare4KList, imageDirPath)
}
if len(vars.ImageSquare5KList) > 0 {
imageDirPath := rootDir + pathSeparator + uid + "-图片_等比_5K"
imageDirPath := pickerDir + pathSeparator + "图片_等比_5K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageSquare5KList, imageDirPath)
}
if len(vars.ImageSquare6KList) > 0 {
imageDirPath := rootDir + pathSeparator + uid + "-图片_等比_6K"
imageDirPath := pickerDir + pathSeparator + "图片_等比_6K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageSquare6KList, imageDirPath)
}
if len(vars.ImageSquare7KList) > 0 {
imageDirPath := rootDir + pathSeparator + uid + "-图片_等比_7K"
imageDirPath := pickerDir + pathSeparator + "图片_等比_7K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageSquare7KList, imageDirPath)
}
if len(vars.ImageSquare8KList) > 0 {
imageDirPath := rootDir + pathSeparator + uid + "-图片_等比_8K"
imageDirPath := pickerDir + pathSeparator + "图片_等比_8K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageSquare8KList, imageDirPath)
}
if len(vars.ImageSquare9KList) > 0 {
imageDirPath := rootDir + pathSeparator + uid + "-图片_等比_9K"
imageDirPath := pickerDir + pathSeparator + "图片_等比_9K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageSquare9KList, imageDirPath)
}
if len(vars.ImageSquareHKList) > 0 {
imageDirPath := rootDir + pathSeparator + uid + "-图片_等比_原图"
imageDirPath := pickerDir + pathSeparator + "图片_等比_原图"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageSquareHKList, imageDirPath)
}
}
// 移动gif图片
func moveGifImage(rootDir string, uid string) {
func moveGifImage(pickerDir string) {
if len(vars.ImageGifList) > 0 {
pathSeparator := string(os.PathSeparator)
imageDirPath := rootDir + pathSeparator + uid + "-图片_GIF"
imageDirPath := pickerDir + pathSeparator + "图片_GIF"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageGifList, imageDirPath)
}
+63 -65
View File
@@ -2,7 +2,6 @@ package core
import (
"fmt"
uuid "github.com/satori/go.uuid"
"kenaito-media-picker/util"
"kenaito-media-picker/vars"
"os"
@@ -10,7 +9,7 @@ import (
"time"
)
func DoHandleVideo(rootDir string) {
func DoHandleVideo(pickerDir string) {
// 释放ffprobe
readerFileName := "./ffprobe.exe"
if util.CheckFileIsExist(readerFileName) {
@@ -53,18 +52,18 @@ func DoHandleVideo(rootDir string) {
vars.VideoIgnorePathList = append(vars.VideoIgnorePathList, videoFilePath)
}
if len(vars.VideoReadErrorPathList) > 0 {
readInfoErrorPath := rootDir + string(os.PathSeparator) + "读取异常"
readInfoErrorPath := pickerDir + string(os.PathSeparator) + "读取异常"
if util.CreateDir(readInfoErrorPath) {
util.DoMoveFileToDir(vars.VideoReadErrorPathList, readInfoErrorPath)
}
}
if len(vars.VideoIgnorePathList) > 0 {
ignorePath := rootDir + string(os.PathSeparator) + "已忽略"
ignorePath := pickerDir + string(os.PathSeparator) + "已忽略"
if util.CreateDir(ignorePath) {
util.DoMoveFileToDir(vars.VideoIgnorePathList, ignorePath)
}
}
doPickVideoFile(rootDir, vars.VideoPath2WidthHeightMap)
doPickVideoFile(pickerDir, vars.VideoPath2WidthHeightMap)
// 删除ffprobe
if util.CheckFileIsExist(readerFileName) {
_ = os.Remove(readerFileName)
@@ -73,9 +72,9 @@ func DoHandleVideo(rootDir string) {
}
// 条件视频并分组存放
func doPickVideoFile(rootDir string, videoPath2WidthHeightMap map[string]string) {
func doPickVideoFile(pickerDir string, videoPath2WidthHeightMap map[string]string) {
if len(videoPath2WidthHeightMap) == 0 {
fmt.Printf("=== 当前目录下没有扫描到视频文件, %s \n", rootDir)
fmt.Printf("=== 当前目录下没有扫描到视频文件, %s \n", pickerDir)
readerFileName := "./ffprobe.exe"
if util.CheckFileIsExist(readerFileName) {
_ = os.Remove(readerFileName)
@@ -97,269 +96,268 @@ func doPickVideoFile(rootDir string, videoPath2WidthHeightMap map[string]string)
}
handleSquareVideo(currentVideoPath, width, height, suffix)
}
uid := strings.ReplaceAll(uuid.NewV4().String(), "-", "")
moveNormalVideo(uid, rootDir)
moveHorizontalVideo(uid, rootDir)
moveVerticalVideo(uid, rootDir)
moveSquareVideo(uid, rootDir)
moveGifVideo(uid, rootDir)
moveNormalVideo(pickerDir)
moveHorizontalVideo(pickerDir)
moveVerticalVideo(pickerDir)
moveSquareVideo(pickerDir)
moveGifVideo(pickerDir)
}
// 移动垂直视频
func moveVerticalVideo(uid string, rootDir string) {
func moveVerticalVideo(pickerDir string) {
pathSeparator := string(os.PathSeparator)
if len(vars.VideoVertical1KList) > 0 {
videoDirPath := rootDir + pathSeparator + uid + "-视频_竖屏_1k"
videoDirPath := pickerDir + pathSeparator + "视频_竖屏_1k"
util.CreateDir(videoDirPath)
util.DoMoveFileToDir(vars.VideoVertical1KList, videoDirPath)
}
if len(vars.VideoVertical2KList) > 0 {
videoDirPath := rootDir + pathSeparator + uid + "-视频_竖屏_2k"
videoDirPath := pickerDir + pathSeparator + "视频_竖屏_2k"
util.CreateDir(videoDirPath)
util.DoMoveFileToDir(vars.VideoVertical2KList, videoDirPath)
}
if len(vars.VideoVertical3KList) > 0 {
videoDirPath := rootDir + pathSeparator + uid + "-视频_竖屏_3k"
videoDirPath := pickerDir + pathSeparator + "视频_竖屏_3k"
util.CreateDir(videoDirPath)
util.DoMoveFileToDir(vars.VideoVertical3KList, videoDirPath)
}
if len(vars.VideoVertical4KList) > 0 {
videoDirPath := rootDir + pathSeparator + uid + "-视频_竖屏_4k"
videoDirPath := pickerDir + pathSeparator + "视频_竖屏_4k"
util.CreateDir(videoDirPath)
util.DoMoveFileToDir(vars.VideoVertical4KList, videoDirPath)
}
if len(vars.VideoVertical5KList) > 0 {
videoDirPath := rootDir + pathSeparator + uid + "-视频_竖屏_5k"
videoDirPath := pickerDir + pathSeparator + "视频_竖屏_5k"
util.CreateDir(videoDirPath)
util.DoMoveFileToDir(vars.VideoVertical5KList, videoDirPath)
}
if len(vars.VideoVertical6KList) > 0 {
videoDirPath := rootDir + pathSeparator + uid + "-视频_竖屏_6k"
videoDirPath := pickerDir + pathSeparator + "视频_竖屏_6k"
util.CreateDir(videoDirPath)
util.DoMoveFileToDir(vars.VideoVertical6KList, videoDirPath)
}
if len(vars.VideoVertical7KList) > 0 {
videoDirPath := rootDir + pathSeparator + uid + "-视频_竖屏_7k"
videoDirPath := pickerDir + pathSeparator + "视频_竖屏_7k"
util.CreateDir(videoDirPath)
util.DoMoveFileToDir(vars.VideoVertical7KList, videoDirPath)
}
if len(vars.VideoVertical8KList) > 0 {
videoDirPath := rootDir + pathSeparator + uid + "-视频_竖屏_8k"
videoDirPath := pickerDir + pathSeparator + "视频_竖屏_8k"
util.CreateDir(videoDirPath)
util.DoMoveFileToDir(vars.VideoVertical8KList, videoDirPath)
}
if len(vars.VideoVertical9KList) > 0 {
videoDirPath := rootDir + pathSeparator + uid + "-视频_竖屏_9k"
videoDirPath := pickerDir + pathSeparator + "视频_竖屏_9k"
util.CreateDir(videoDirPath)
util.DoMoveFileToDir(vars.VideoVertical9KList, videoDirPath)
}
if len(vars.VideoVerticalHKList) > 0 {
videoDirPath := rootDir + pathSeparator + uid + "-视频_竖屏_原画质"
videoDirPath := pickerDir + pathSeparator + "视频_竖屏_原画质"
util.CreateDir(videoDirPath)
util.DoMoveFileToDir(vars.VideoVerticalHKList, videoDirPath)
}
}
// 移动水平视频
func moveHorizontalVideo(uid string, rootDir string) {
func moveHorizontalVideo(pickerDir string) {
pathSeparator := string(os.PathSeparator)
if len(vars.VideoHorizontal1KList) > 0 {
videoDirPath := rootDir + pathSeparator + uid + "-视频_横屏_1k"
videoDirPath := pickerDir + pathSeparator + "视频_横屏_1k"
util.CreateDir(videoDirPath)
util.DoMoveFileToDir(vars.VideoHorizontal1KList, videoDirPath)
}
if len(vars.VideoHorizontal2KList) > 0 {
videoDirPath := rootDir + pathSeparator + uid + "-视频_横屏_2k"
videoDirPath := pickerDir + pathSeparator + "视频_横屏_2k"
util.CreateDir(videoDirPath)
util.DoMoveFileToDir(vars.VideoHorizontal2KList, videoDirPath)
}
if len(vars.VideoHorizontal3KList) > 0 {
videoDirPath := rootDir + pathSeparator + uid + "-视频_横屏_3k"
videoDirPath := pickerDir + pathSeparator + "视频_横屏_3k"
util.CreateDir(videoDirPath)
util.DoMoveFileToDir(vars.VideoHorizontal3KList, videoDirPath)
}
if len(vars.VideoHorizontal4KList) > 0 {
videoDirPath := rootDir + pathSeparator + uid + "-视频_横屏_4k"
videoDirPath := pickerDir + pathSeparator + "视频_横屏_4k"
util.CreateDir(videoDirPath)
util.DoMoveFileToDir(vars.VideoHorizontal4KList, videoDirPath)
}
if len(vars.VideoHorizontal5KList) > 0 {
videoDirPath := rootDir + pathSeparator + uid + "-视频_横屏_5k"
videoDirPath := pickerDir + pathSeparator + "视频_横屏_5k"
util.CreateDir(videoDirPath)
util.DoMoveFileToDir(vars.VideoHorizontal5KList, videoDirPath)
}
if len(vars.VideoHorizontal6KList) > 0 {
videoDirPath := rootDir + pathSeparator + uid + "-视频_横屏_6k"
videoDirPath := pickerDir + pathSeparator + "视频_横屏_6k"
util.CreateDir(videoDirPath)
util.DoMoveFileToDir(vars.VideoHorizontal6KList, videoDirPath)
}
if len(vars.VideoHorizontal7KList) > 0 {
videoDirPath := rootDir + pathSeparator + uid + "-视频_横屏_7k"
videoDirPath := pickerDir + pathSeparator + "视频_横屏_7k"
util.CreateDir(videoDirPath)
util.DoMoveFileToDir(vars.VideoHorizontal7KList, videoDirPath)
}
if len(vars.VideoHorizontal8KList) > 0 {
videoDirPath := rootDir + pathSeparator + uid + "-视频_横屏_8k"
videoDirPath := pickerDir + pathSeparator + "视频_横屏_8k"
util.CreateDir(videoDirPath)
util.DoMoveFileToDir(vars.VideoHorizontal8KList, videoDirPath)
}
if len(vars.VideoHorizontal9KList) > 0 {
videoDirPath := rootDir + pathSeparator + uid + "-视频_横屏_9k"
videoDirPath := pickerDir + pathSeparator + "视频_横屏_9k"
util.CreateDir(videoDirPath)
util.DoMoveFileToDir(vars.VideoHorizontal9KList, videoDirPath)
}
if len(vars.VideoHorizontalHKList) > 0 {
videoDirPath := rootDir + pathSeparator + uid + "-视频_横屏_原画质"
videoDirPath := pickerDir + pathSeparator + "视频_横屏_原画质"
util.CreateDir(videoDirPath)
util.DoMoveFileToDir(vars.VideoHorizontalHKList, videoDirPath)
}
if len(vars.VideoHorizontalStandard720PList) > 0 {
videoDirPath := rootDir + pathSeparator + uid + "-视频_横屏_720P"
videoDirPath := pickerDir + pathSeparator + "视频_横屏_720P"
util.CreateDir(videoDirPath)
util.DoMoveFileToDir(vars.VideoHorizontalStandard720PList, videoDirPath)
}
if len(vars.VideoHorizontalStandard1D5PList) > 0 {
videoDirPath := rootDir + pathSeparator + uid + "-视频_横屏_1D5KP"
videoDirPath := pickerDir + pathSeparator + "视频_横屏_1D5KP"
util.CreateDir(videoDirPath)
util.DoMoveFileToDir(vars.VideoHorizontalStandard1D5PList, videoDirPath)
}
if len(vars.VideoHorizontalStandard1080PList) > 0 {
videoDirPath := rootDir + pathSeparator + uid + "-视频_横屏_1080P"
videoDirPath := pickerDir + pathSeparator + "视频_横屏_1080P"
util.CreateDir(videoDirPath)
util.DoMoveFileToDir(vars.VideoHorizontalStandard1080PList, videoDirPath)
}
if len(vars.VideoHorizontalStandard2DKList) > 0 {
videoDirPath := rootDir + pathSeparator + uid + "-视频_横屏_2DKP"
videoDirPath := pickerDir + pathSeparator + "视频_横屏_2DKP"
util.CreateDir(videoDirPath)
util.DoMoveFileToDir(vars.VideoHorizontalStandard2DKList, videoDirPath)
}
if len(vars.VideoHorizontalStandard2D5KList) > 0 {
videoDirPath := rootDir + pathSeparator + uid + "-视频_横屏_2D5KP"
videoDirPath := pickerDir + pathSeparator + "视频_横屏_2D5KP"
util.CreateDir(videoDirPath)
util.DoMoveFileToDir(vars.VideoHorizontalStandard2D5KList, videoDirPath)
}
if len(vars.VideoHorizontalStandardUltraWide2List) > 0 {
videoDirPath := rootDir + pathSeparator + uid + "-视频_横屏_UltraWide2KP"
videoDirPath := pickerDir + pathSeparator + "视频_横屏_UltraWide2KP"
util.CreateDir(videoDirPath)
util.DoMoveFileToDir(vars.VideoHorizontalStandardUltraWide2List, videoDirPath)
}
if len(vars.VideoHorizontalStandardUltraWide3List) > 0 {
videoDirPath := rootDir + pathSeparator + uid + "-视频_横屏_UltraWide3KP"
videoDirPath := pickerDir + pathSeparator + "视频_横屏_UltraWide3KP"
util.CreateDir(videoDirPath)
util.DoMoveFileToDir(vars.VideoHorizontalStandardUltraWide3List, videoDirPath)
}
if len(vars.VideoHorizontalStandardUltraWide4List) > 0 {
videoDirPath := rootDir + pathSeparator + uid + "-视频_横屏_UltraWide4KP"
videoDirPath := pickerDir + pathSeparator + "视频_横屏_UltraWide4KP"
util.CreateDir(videoDirPath)
util.DoMoveFileToDir(vars.VideoHorizontalStandardUltraWide4List, videoDirPath)
}
if len(vars.VideoHorizontalStandard4KList) > 0 {
videoDirPath := rootDir + pathSeparator + uid + "-视频_横屏_4KP"
videoDirPath := pickerDir + pathSeparator + "视频_横屏_4KP"
util.CreateDir(videoDirPath)
util.DoMoveFileToDir(vars.VideoHorizontalStandard4KList, videoDirPath)
}
if len(vars.VideoHorizontalStandard4KHList) > 0 {
videoDirPath := rootDir + pathSeparator + uid + "-视频_横屏_4KHP"
videoDirPath := pickerDir + pathSeparator + "视频_横屏_4KHP"
util.CreateDir(videoDirPath)
util.DoMoveFileToDir(vars.VideoHorizontalStandard4KHList, videoDirPath)
}
if len(vars.VideoHorizontalStandard8KList) > 0 {
videoDirPath := rootDir + pathSeparator + uid + "-视频_横屏_8KP"
videoDirPath := pickerDir + pathSeparator + "视频_横屏_8KP"
util.CreateDir(videoDirPath)
util.DoMoveFileToDir(vars.VideoHorizontalStandard8KList, videoDirPath)
}
}
// 移动等比视频
func moveSquareVideo(uid string, rootDir string) {
func moveSquareVideo(pickerDir string) {
pathSeparator := string(os.PathSeparator)
if len(vars.VideoSquare1KList) > 0 {
videoDirPath := rootDir + pathSeparator + uid + "-视频_等比_1k"
videoDirPath := pickerDir + pathSeparator + "视频_等比_1k"
util.CreateDir(videoDirPath)
util.DoMoveFileToDir(vars.VideoSquare1KList, videoDirPath)
}
if len(vars.VideoSquare2KList) > 0 {
videoDirPath := rootDir + pathSeparator + uid + "-视频_等比_2k"
videoDirPath := pickerDir + pathSeparator + "视频_等比_2k"
util.CreateDir(videoDirPath)
util.DoMoveFileToDir(vars.VideoSquare2KList, videoDirPath)
}
if len(vars.VideoSquare3KList) > 0 {
videoDirPath := rootDir + pathSeparator + uid + "-视频_等比_3k"
videoDirPath := pickerDir + pathSeparator + "视频_等比_3k"
util.CreateDir(videoDirPath)
util.DoMoveFileToDir(vars.VideoSquare3KList, videoDirPath)
}
if len(vars.VideoSquare4KList) > 0 {
videoDirPath := rootDir + pathSeparator + uid + "-视频_等比_4k"
videoDirPath := pickerDir + pathSeparator + "视频_等比_4k"
util.CreateDir(videoDirPath)
util.DoMoveFileToDir(vars.VideoSquare4KList, videoDirPath)
}
if len(vars.VideoSquare5KList) > 0 {
videoDirPath := rootDir + pathSeparator + uid + "-视频_等比_5k"
videoDirPath := pickerDir + pathSeparator + "视频_等比_5k"
util.CreateDir(videoDirPath)
util.DoMoveFileToDir(vars.VideoSquare5KList, videoDirPath)
}
if len(vars.VideoSquare6KList) > 0 {
videoDirPath := rootDir + pathSeparator + uid + "-视频_等比_6k"
videoDirPath := pickerDir + pathSeparator + "视频_等比_6k"
util.CreateDir(videoDirPath)
util.DoMoveFileToDir(vars.VideoSquare6KList, videoDirPath)
}
if len(vars.VideoSquare7KList) > 0 {
videoDirPath := rootDir + pathSeparator + uid + "-视频_等比_7k"
videoDirPath := pickerDir + pathSeparator + "视频_等比_7k"
util.CreateDir(videoDirPath)
util.DoMoveFileToDir(vars.VideoSquare7KList, videoDirPath)
}
if len(vars.VideoSquare8KList) > 0 {
videoDirPath := rootDir + pathSeparator + uid + "-视频_等比_8k"
videoDirPath := pickerDir + pathSeparator + "视频_等比_8k"
util.CreateDir(videoDirPath)
util.DoMoveFileToDir(vars.VideoSquare8KList, videoDirPath)
}
if len(vars.VideoSquare9KList) > 0 {
videoDirPath := rootDir + pathSeparator + uid + "-视频_等比_9k"
videoDirPath := pickerDir + pathSeparator + "视频_等比_9k"
util.CreateDir(videoDirPath)
util.DoMoveFileToDir(vars.VideoSquare9KList, videoDirPath)
}
if len(vars.VideoSquareHKList) > 0 {
videoDirPath := rootDir + pathSeparator + uid + "-视频_等比_原画质"
videoDirPath := pickerDir + pathSeparator + "视频_等比_原画质"
util.CreateDir(videoDirPath)
util.DoMoveFileToDir(vars.VideoSquareHKList, videoDirPath)
}
}
// 移动gif视频
func moveGifVideo(uid string, rootDir string) {
func moveGifVideo(pickerDir string) {
pathSeparator := string(os.PathSeparator)
if len(vars.VideoHorizontalGifList) > 0 {
videoDirPath := rootDir + pathSeparator + uid + "-视频_横屏_GIF"
videoDirPath := pickerDir + pathSeparator + "视频_横屏_GIF"
util.CreateDir(videoDirPath)
util.DoMoveFileToDir(vars.VideoHorizontalGifList, videoDirPath)
}
if len(vars.VideoVerticalGifList) > 0 {
videoDirPath := rootDir + pathSeparator + uid + "-视频_竖屏_GIF"
videoDirPath := pickerDir + pathSeparator + "视频_竖屏_GIF"
util.CreateDir(videoDirPath)
util.DoMoveFileToDir(vars.VideoVerticalGifList, videoDirPath)
}
if len(vars.VideoSquareGifList) > 0 {
videoDirPath := rootDir + pathSeparator + uid + "-视频_等比_GIF"
videoDirPath := pickerDir + pathSeparator + "视频_等比_GIF"
util.CreateDir(videoDirPath)
util.DoMoveFileToDir(vars.VideoSquareGifList, videoDirPath)
}
}
// 移动普通视频
func moveNormalVideo(uid string, rootDir string) {
func moveNormalVideo(pickerDir string) {
pathSeparator := string(os.PathSeparator)
if len(vars.VideoHorizontalNormalList) > 0 {
videoDirPath := rootDir + pathSeparator + uid + "-视频_横屏_普通"
videoDirPath := pickerDir + pathSeparator + "视频_横屏_普通"
util.CreateDir(videoDirPath)
util.DoMoveFileToDir(vars.VideoHorizontalNormalList, videoDirPath)
}
if len(vars.VideoVerticalNormalList) > 0 {
videoDirPath := rootDir + pathSeparator + uid + "-视频_竖屏_普通"
videoDirPath := pickerDir + pathSeparator + "视频_竖屏_普通"
util.CreateDir(videoDirPath)
util.DoMoveFileToDir(vars.VideoVerticalNormalList, videoDirPath)
}
if len(vars.VideoSquareNormalList) > 0 {
videoDirPath := rootDir + pathSeparator + uid + "-视频_等比_普通"
videoDirPath := pickerDir + pathSeparator + "视频_等比_普通"
util.CreateDir(videoDirPath)
util.DoMoveFileToDir(vars.VideoSquareNormalList, videoDirPath)
}