package main import ( "fmt" "log" "reader/internal/processor" ) func main() { // Определение параметров записи var date, startTime, endTime string fmt.Println("Введите дату записи ДД-ММ-ГГГГ:") fmt.Scan(&date) fmt.Println("Введите время начала записи ЧЧ-ММ:") fmt.Scan(&startTime) fmt.Println("Введите время окончания записи ЧЧ-ММ:") fmt.Scan(&endTime) // Вычисление времени начала и конца, запрошенного фрагмента startHour, startMinute, endHour, endMinute := processor.CalcNeededTime(startTime, endTime) var endMinuteFirstVideo, durationHour int // Вычисление длительности (часов) запрошенного фрагмента видеозаписи durationHour, endMinuteFirstVideo = processor.CalcEndMinuteFirstVideo(durationHour, endMinuteFirstVideo, startHour, endHour, endMinute) // Определение пути хранения видеозаписей path := "../writer/" switch durationHour { case 0: processed, created := processor.CreateFile( startTime, date, path, startMinute, endMinuteFirstVideo, 0) log.Println("Создан файл: ", processed) processor.MergeMKV(created) processor.DeleteTrimmedFragments(created) case 1: processed, created1 := processor.CreateFile( startTime, date, path, startMinute, endMinuteFirstVideo, 0) log.Println("Создан файл: ", processed) processed, created2 := processor.CreateFile( processed, date, path, startMinute, endMinute, durationHour) log.Println("Создан файл: ", processed) processor.MergeMKV(created1, created2) processor.DeleteTrimmedFragments(created1, created2) case 2: processed, created1 := processor.CreateFile( startTime, date, path, startMinute, endMinuteFirstVideo, 0) log.Println("Создан файл: ", processed) processed, created2 := processor.CreateFile( processed, date, path, startMinute, endMinuteFirstVideo, durationHour) log.Println("Создан файл: ", processed) processed, created3 := processor.CreateFile( processed, date, path, startMinute, endMinute, durationHour) log.Println("Создан файл: ", processed) processor.MergeMKV(created1, created2, created3) processor.DeleteTrimmedFragments(created1, created2, created3) case 3: created := "" processed, created1 := processor.CreateFile( startTime, date, path, startMinute, endMinuteFirstVideo, 0) log.Println("Создан файл: ", processed) createdS := make([]string, 4) createdS[0] = created1 for i := 1; i <= 2; i++ { processed, created = processor.CreateFile( processed, date, path, startMinute, endMinuteFirstVideo, durationHour) log.Println("Создан файл: ", processed) createdS[i] = created } processed, created4 := processor.CreateFile( processed, date, path, startMinute, endMinute, durationHour) log.Println("Создан файл: ", processed) createdS[3] = created4 processor.MergeMKV(createdS...) processor.DeleteTrimmedFragments(createdS...) case 4: created := "" processed, created1 := processor.CreateFile( startTime, date, path, startMinute, endMinuteFirstVideo, 0) log.Println("Создан файл: ", processed) createdS := make([]string, 5) createdS[0] = created1 for i := 1; i <= 3; i++ { processed, created = processor.CreateFile( processed, date, path, startMinute, endMinuteFirstVideo, durationHour) log.Println("Создан файл: ", processed) createdS[i] = created } processed, created5 := processor.CreateFile( processed, date, path, startMinute, endMinute, durationHour) log.Println("Создан файл: ", processed) createdS[4] = created5 processor.MergeMKV(createdS...) processor.DeleteTrimmedFragments(createdS...) case 5: created := "" processed, created1 := processor.CreateFile( startTime, date, path, startMinute, endMinuteFirstVideo, 0) log.Println("Создан файл: ", processed) createdS := make([]string, 6) createdS[0] = created1 for i := 1; i <= 4; i++ { processed, created = processor.CreateFile( processed, date, path, startMinute, endMinuteFirstVideo, durationHour) log.Println("Создан файл: ", processed) createdS[i] = created } processed, created6 := processor.CreateFile( processed, date, path, startMinute, endMinute, durationHour) log.Println("Создан файл: ", processed) createdS[5] = created6 processor.MergeMKV(createdS...) processor.DeleteTrimmedFragments(createdS...) case 6: created := "" processed, created1 := processor.CreateFile( startTime, date, path, startMinute, endMinuteFirstVideo, 0) log.Println("Создан файл: ", processed) createdS := make([]string, 7) createdS[0] = created1 for i := 1; i <= 5; i++ { processed, created = processor.CreateFile( processed, date, path, startMinute, endMinuteFirstVideo, durationHour) log.Println("Создан файл: ", processed) createdS[i] = created } processed, created7 := processor.CreateFile(processed, date, path, startMinute, endMinute, durationHour) log.Println("Создан файл: ", processed) createdS[6] = created7 processor.MergeMKV(createdS...) processor.DeleteTrimmedFragments(createdS...) case 7: created := "" processed, created1 := processor.CreateFile(startTime, date, path, startMinute, endMinuteFirstVideo, 0) log.Println("Создан файл: ", processed) createdS := make([]string, 8) createdS[0] = created1 for i := 1; i <= 6; i++ { processed, created = processor.CreateFile(processed, date, path, startMinute, endMinuteFirstVideo, durationHour) log.Println("Создан файл: ", processed) createdS[i] = created } processed, created8 := processor.CreateFile(processed, date, path, startMinute, endMinute, durationHour) log.Println("Создан файл: ", processed) createdS[7] = created8 processor.MergeMKV(createdS...) processor.DeleteTrimmedFragments(createdS...) case 8: created := "" processed, created1 := processor.CreateFile(startTime, date, path, startMinute, endMinuteFirstVideo, 0) log.Println("Создан файл: ", processed) createdS := make([]string, 9) createdS[0] = created1 for i := 1; i <= 7; i++ { processed, created = processor.CreateFile(processed, date, path, startMinute, endMinuteFirstVideo, durationHour) log.Println("Создан файл: ", processed) createdS[i] = created } processed, created9 := processor.CreateFile(processed, date, path, startMinute, endMinute, durationHour) log.Println("Создан файл: ", processed) createdS[8] = created9 processor.MergeMKV(createdS...) processor.DeleteTrimmedFragments(createdS...) case 9: created := "" processed, created1 := processor.CreateFile(startTime, date, path, startMinute, endMinuteFirstVideo, 0) log.Println("Создан файл: ", processed) createdS := make([]string, 10) createdS[0] = created1 for i := 1; i <= 8; i++ { processed, created = processor.CreateFile(processed, date, path, startMinute, endMinuteFirstVideo, durationHour) log.Println("Создан файл: ", processed) createdS[i] = created } processed, created10 := processor.CreateFile(processed, date, path, startMinute, endMinute, durationHour) log.Println("Создан файл: ", processed) createdS[9] = created10 processor.MergeMKV(createdS...) processor.DeleteTrimmedFragments(createdS...) case 10: created := "" processed, created1 := processor.CreateFile(startTime, date, path, startMinute, endMinuteFirstVideo, 0) log.Println("Создан файл: ", processed) createdS := make([]string, 11) createdS[0] = created1 for i := 1; i <= 9; i++ { processed, created = processor.CreateFile(processed, date, path, startMinute, endMinuteFirstVideo, durationHour) log.Println("Создан файл: ", processed) createdS[i] = created } processed, created11 := processor.CreateFile(processed, date, path, startMinute, endMinute, durationHour) log.Println("Создан файл: ", processed) createdS[10] = created11 processor.MergeMKV(createdS...) processor.DeleteTrimmedFragments(createdS...) case 11: created := "" processed, created1 := processor.CreateFile(startTime, date, path, startMinute, endMinuteFirstVideo, 0) log.Println("Создан файл: ", processed) createdS := make([]string, 12) createdS[0] = created1 for i := 1; i <= 10; i++ { processed, created = processor.CreateFile(processed, date, path, startMinute, endMinuteFirstVideo, durationHour) log.Println("Создан файл: ", processed) createdS[i] = created } processed, created12 := processor.CreateFile(processed, date, path, startMinute, endMinute, durationHour) log.Println("Создан файл: ", processed) createdS[11] = created12 processor.MergeMKV(createdS...) processor.DeleteTrimmedFragments(createdS...) case 12: created := "" processed, created1 := processor.CreateFile(startTime, date, path, startMinute, endMinuteFirstVideo, 0) log.Println("Создан файл: ", processed) createdS := make([]string, 13) createdS[0] = created1 for i := 1; i <= 11; i++ { processed, created = processor.CreateFile(processed, date, path, startMinute, endMinuteFirstVideo, durationHour) log.Println("Создан файл: ", processed) createdS[i] = created } processed, created13 := processor.CreateFile(processed, date, path, startMinute, endMinute, durationHour) log.Println("Создан файл: ", processed) createdS[12] = created13 processor.MergeMKV(createdS...) processor.DeleteTrimmedFragments(createdS...) case 13: created := "" processed, created1 := processor.CreateFile(startTime, date, path, startMinute, endMinuteFirstVideo, 0) log.Println("Создан файл: ", processed) createdS := make([]string, 14) createdS[0] = created1 for i := 1; i <= 12; i++ { processed, created = processor.CreateFile(processed, date, path, startMinute, endMinuteFirstVideo, durationHour) log.Println("Создан файл: ", processed) createdS[i] = created } processed, created14 := processor.CreateFile(processed, date, path, startMinute, endMinute, durationHour) log.Println("Создан файл: ", processed) createdS[13] = created14 processor.MergeMKV(createdS...) processor.DeleteTrimmedFragments(createdS...) case 14: created := "" processed, created1 := processor.CreateFile(startTime, date, path, startMinute, endMinuteFirstVideo, 0) log.Println("Создан файл: ", processed) createdS := make([]string, 15) createdS[0] = created1 for i := 1; i <= 13; i++ { processed, created = processor.CreateFile(processed, date, path, startMinute, endMinuteFirstVideo, durationHour) log.Println("Создан файл: ", processed) createdS[i] = created } processed, created15 := processor.CreateFile(processed, date, path, startMinute, endMinute, durationHour) log.Println("Создан файл: ", processed) createdS[14] = created15 processor.MergeMKV(createdS...) processor.DeleteTrimmedFragments(createdS...) case 15: created := "" processed, created1 := processor.CreateFile(startTime, date, path, startMinute, endMinuteFirstVideo, 0) log.Println("Создан файл: ", processed) createdS := make([]string, 16) createdS[0] = created1 for i := 1; i <= 14; i++ { processed, created = processor.CreateFile(processed, date, path, startMinute, endMinuteFirstVideo, durationHour) log.Println("Создан файл: ", processed) createdS[i] = created } processed, created16 := processor.CreateFile(processed, date, path, startMinute, endMinute, durationHour) log.Println("Создан файл: ", processed) createdS[15] = created16 processor.MergeMKV(createdS...) processor.DeleteTrimmedFragments(createdS...) case 16: created := "" processed, created1 := processor.CreateFile(startTime, date, path, startMinute, endMinuteFirstVideo, 0) log.Println("Создан файл: ", processed) createdS := make([]string, 17) createdS[0] = created1 for i := 1; i <= 15; i++ { processed, created = processor.CreateFile(processed, date, path, startMinute, endMinuteFirstVideo, durationHour) log.Println("Создан файл: ", processed) createdS[i] = created } processed, created17 := processor.CreateFile(processed, date, path, startMinute, endMinute, durationHour) log.Println("Создан файл: ", processed) createdS[16] = created17 processor.MergeMKV(createdS...) processor.DeleteTrimmedFragments(createdS...) case 17: created := "" processed, created1 := processor.CreateFile(startTime, date, path, startMinute, endMinuteFirstVideo, 0) log.Println("Создан файл: ", processed) createdS := make([]string, 18) createdS[0] = created1 for i := 1; i <= 16; i++ { processed, created = processor.CreateFile(processed, date, path, startMinute, endMinuteFirstVideo, durationHour) log.Println("Создан файл: ", processed) createdS[i] = created } processed, created18 := processor.CreateFile(processed, date, path, startMinute, endMinute, durationHour) log.Println("Создан файл: ", processed) createdS[17] = created18 processor.MergeMKV(createdS...) processor.DeleteTrimmedFragments(createdS...) case 18: created := "" processed, created1 := processor.CreateFile(startTime, date, path, startMinute, endMinuteFirstVideo, 0) log.Println("Создан файл: ", processed) createdS := make([]string, 19) createdS[0] = created1 for i := 1; i <= 17; i++ { processed, created = processor.CreateFile(processed, date, path, startMinute, endMinuteFirstVideo, durationHour) log.Println("Создан файл: ", processed) createdS[i] = created } processed, created19 := processor.CreateFile(processed, date, path, startMinute, endMinute, durationHour) log.Println("Создан файл: ", processed) createdS[18] = created19 processor.MergeMKV(createdS...) processor.DeleteTrimmedFragments(createdS...) case 19: created := "" processed, created1 := processor.CreateFile(startTime, date, path, startMinute, endMinuteFirstVideo, 0) log.Println("Создан файл: ", processed) createdS := make([]string, 20) createdS[0] = created1 for i := 1; i <= 18; i++ { processed, created = processor.CreateFile(processed, date, path, startMinute, endMinuteFirstVideo, durationHour) log.Println("Создан файл: ", processed) createdS[i] = created } processed, created20 := processor.CreateFile(processed, date, path, startMinute, endMinute, durationHour) log.Println("Создан файл: ", processed) createdS[19] = created20 processor.MergeMKV(createdS...) processor.DeleteTrimmedFragments(createdS...) case 20: created := "" processed, created1 := processor.CreateFile(startTime, date, path, startMinute, endMinuteFirstVideo, 0) log.Println("Создан файл: ", processed) createdS := make([]string, 21) createdS[0] = created1 for i := 1; i <= 19; i++ { processed, created = processor.CreateFile(processed, date, path, startMinute, endMinuteFirstVideo, durationHour) log.Println("Создан файл: ", processed) createdS[i] = created } processed, created21 := processor.CreateFile(processed, date, path, startMinute, endMinute, durationHour) log.Println("Создан файл: ", processed) createdS[20] = created21 processor.MergeMKV(createdS...) processor.DeleteTrimmedFragments(createdS...) case 21: created := "" processed, created1 := processor.CreateFile(startTime, date, path, startMinute, endMinuteFirstVideo, 0) log.Println("Создан файл: ", processed) createdS := make([]string, 22) createdS[0] = created1 for i := 1; i <= 20; i++ { processed, created = processor.CreateFile(processed, date, path, startMinute, endMinuteFirstVideo, durationHour) log.Println("Создан файл: ", processed) createdS[i] = created } processed, created22 := processor.CreateFile(processed, date, path, startMinute, endMinute, durationHour) log.Println("Создан файл: ", processed) createdS[21] = created22 processor.MergeMKV(createdS...) processor.DeleteTrimmedFragments(createdS...) case 22: created := "" processed, created1 := processor.CreateFile(startTime, date, path, startMinute, endMinuteFirstVideo, 0) log.Println("Создан файл: ", processed) createdS := make([]string, 23) createdS[0] = created1 for i := 1; i <= 21; i++ { processed, created = processor.CreateFile(processed, date, path, startMinute, endMinuteFirstVideo, durationHour) log.Println("Создан файл: ", processed) createdS[i] = created } processed, created23 := processor.CreateFile(processed, date, path, startMinute, endMinute, durationHour) log.Println("Создан файл: ", processed) createdS[22] = created23 processor.MergeMKV(createdS...) processor.DeleteTrimmedFragments(createdS...) case 23: created := "" processed, created1 := processor.CreateFile(startTime, date, path, startMinute, endMinuteFirstVideo, 0) log.Println("Создан файл: ", processed) createdS := make([]string, 24) createdS[0] = created1 for i := 1; i <= 22; i++ { processed, created = processor.CreateFile(processed, date, path, startMinute, endMinuteFirstVideo, durationHour) log.Println("Создан файл: ", processed) createdS[i] = created } processed, created24 := processor.CreateFile(processed, date, path, startMinute, endMinute, durationHour) log.Println("Создан файл: ", processed) createdS[23] = created24 processor.MergeMKV(createdS...) processor.DeleteTrimmedFragments(createdS...) } }