#!/bin/bash
TIME1=$(date +"%s")
echo "";
echo -en "\033[37;1;41m ВНИМЕНИЕ! Изображения ОБЯЗАТЕЛЬНО \033[0m"; echo "";
echo -en "\033[37;1;41m ВНИМЕНИЕ! добжны быть ОДНОГО РАЗМЕРА! \033[0m"; echo -en "\E[0m";
echo "";
ls | grep ".jpg"; echo "";
# Заменяет пробелы символом подчеркивания в именах файлов в текущем каталоге.
ONE=1 # единственное или множественное число (см. ниже).
number=0 # Количество переименованных файлов.
FOUND=0 # Код завершения в случае успеха.
for filename in * # Перебор всех файлов в текущем каталоге.
do
echo "$filename" | grep -q " " # Проверить — содержит ли имя файла
if [ $? -eq $FOUND ] #+ пробелы.
then
fname=$filename # Удалить путь из имени файла.
n=`echo $fname | sed -e "s/ /_/g"` # Заменить пробелы символом подчеркивания.
mv "$fname" "$n" # Переименование.
let "number += 1"
fi
done
if [ "$number" -eq "$ONE" ]
then
echo "$number файл переименован."
else
echo "Переименовано файлов: $number"
fi
#
echo "";
ls | grep ".jpg"
echo " Ввести имена 2-х файлов изображений:";
echo -en "\033[32m Введи img1 : \033[40m"; echo "";
read IMG1
echo -en "\033[32m Введи img2 : \033[40m"; echo "";
read IMG2
echo "";
echo -en "\033[37;1;41m Собрать анимацию ? (y/n) \033[0m"; echo "";
read item
case "$item" in
y|Y) echo -en "\E[1;40;32m склеивание картинок ... \E[1;40;32m"; echo "";
ffmpeg -loop 1 -i $IMG1.jpg -loop 1 -i $IMG2.jpg -filter_complex \
"[0:0]format=rgba,trim=duration=10,fade=in:st=0:d=1:alpha=1,fade=out:st=4:d=1:alpha=1[a];[1:0]format=rgba,trim=duration=10,fade=in:st=5:d=1:alpha=1,fade=out:st=9:d=1:alpha=1[b];[a][b]overlay=[out1]" \
-map [out1] -y -qscale 25 -vcodec libx264 -b:v 2550K -crf 26 -s "1280x720" \
-threads auto -thread_type frame -strict -2 /home/$USER/anim_$(date +%Y-%m-%d_%H-%M-%S).mp4 2>/dev/null
;;
n|N) echo -en "\033[32m Ввели «n», завершаем... \033[40m"; echo "";
exit 0
;;
*) echo "Ничего не ввели. Выполняем действие по умолчанию..."
exit 0
;;
esac
# конец скрипта. записать контрольное время
TIME2=$(date +"%s")
# вычесть стоп-старт
TIME=$(($TIME1 - $TIME2))
# убрать не понятно откуда взявшийся символ "минус"
TIME0=$(echo "$TIME" | sed 's/^.//')
# при значениях менее 60, выдасть в секундах:
if [ "$TIME0" -lt "60" ];
then echo "$TIME0 секунд" #YES
else
X=$(( TIME0 / 60 ));
# при значениях больше 60, разделит на 60 и подаст как минуты:
echo "$X минут"
fi
Подписаться на:
Комментарии к сообщению (Atom)
h265.sh
#!/bin/bash file="../mp4" if [ -d $file ]; then echo " Директория существует :-) " for i in *.mp4; do f...
-
30 мая воплотилась в жизнь давняя мечта -- покататься на лодке. Плюс к тому в тот же день я попробовал свои силы в тире. Не разочаровался в ...
-
подпроцесс новый сценарий post-removal возвратил код ошибки 1 ls /var/lib/dpkg/info | grep "mail.ru-cloud" mail.ru-cloud.list ...
Комментариев нет:
Отправить комментарий