Добавить необязательные субтитры при склейке серий.
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
+19
-2
@@ -41,12 +41,26 @@ logic_prepare_file_lists() {
|
||||
return 1
|
||||
fi
|
||||
|
||||
local -a sub_list_raw=()
|
||||
if [[ -n "$SUB_SRC_DIR" ]]; then
|
||||
mapfile -d '' sub_list_raw < <(find "$SUB_SRC_DIR" -name "$SUB_FILE_PATTERN" -print0 | sort -z)
|
||||
if [ ${#sub_list_raw[@]} -eq 0 ]; then
|
||||
ui_show_message "Ошибка" "Субтитры по шаблону '$SUB_FILE_PATTERN' не найдены."
|
||||
return 1
|
||||
fi
|
||||
if [ ${#video_list_raw[@]} -ne ${#sub_list_raw[@]} ]; then
|
||||
ui_show_message "Ошибка" "Количество видео (${#video_list_raw[@]}), аудио (${#audio_list_raw[@]}) и субтитров (${#sub_list_raw[@]}) не совпадает."
|
||||
return 1
|
||||
fi
|
||||
fi
|
||||
|
||||
for i in "${!video_list_raw[@]}"; do
|
||||
local video_file="${video_list_raw[$i]}"
|
||||
local audio_file="${audio_list_raw[$i]}"
|
||||
local subtitle_file="${sub_list_raw[$i]}"
|
||||
local output_path
|
||||
output_path=$(logic_generate_output_name "$video_file") || return 1
|
||||
FILE_TRIPLETS+=("$video_file"$'\t'"$audio_file"$'\t'"$output_path")
|
||||
FILE_TRIPLETS+=("$video_file"$'\t'"$audio_file"$'\t'"$output_path"$'\t'"$subtitle_file")
|
||||
done
|
||||
|
||||
# РЕЖИМ: СИМЛИНКИ
|
||||
@@ -161,7 +175,7 @@ logic_show_preview() {
|
||||
local count=1
|
||||
local skip_count=0
|
||||
for triplet in "${FILE_TRIPLETS[@]}"; do
|
||||
IFS=$'\t' read -r video audio output <<< "$triplet"
|
||||
IFS=$'\t' read -r video audio output subtitle <<< "$triplet"
|
||||
body+="$(printf "%02d" $count). \n"
|
||||
|
||||
local exists=false
|
||||
@@ -173,6 +187,9 @@ logic_show_preview() {
|
||||
if [ "$CURRENT_ACTION" == "MERGE" ]; then
|
||||
body+=" \ZbВИДЕО:\Zn $(basename "$video")\n"
|
||||
body+=" \ZbАУДИО:\Zn $(basename "$audio")\n"
|
||||
if [[ -n "$subtitle" ]]; then
|
||||
body+=" \ZbСУБТИТРЫ:\Zn $(basename "$subtitle")\n"
|
||||
fi
|
||||
body+=" \Zb-> ВЫВОД:\Zn $(basename "$output")\n"
|
||||
else # SYMLINK
|
||||
body+=" \ZbИСТОЧНИК:\Zn $(basename "$video")\n"
|
||||
|
||||
Reference in New Issue
Block a user