Codice
1#!/bin/bash
2# Bold
3BBlack='e[1;30m' # Nero
4BRed='e[1;31m' # Rosso
5BGreen='e[1;32m' # Verde
6BYellow='e[1;33m' # Giallo
7BBlue='e[1;34m' # Blu
8BPurple='e[1;35m' # Viola
9BCyan='e[1;36m' # Ciano
10BWhite='e[1;37m' # Bianco
11
12Color_Off='e[0m' # Text Reset
13reset_console="E[37;40m" #biancoBold
14#background
15backW="e[47m"
16backB="e[40m]"
17echo -e $BRed'PROGRAMMA shell PER IMMISSIONE logo, sottotitoli, cornice
18e sovrapposizione video'
19echo -e $BWhite'Titolo video base'
20
21sonoro=0
22read titolo;
23echo -e $BYellow$titolo
24
25echo 'Immettere nome e percorso
26del vostro video per overlay'
27read sovr
28
29echo "Dimensione orizzontale video in sovrapposizione"
30read largh
31#calcolo coefficiente rimpicciolimento
32coef=$( echo "scale=2;"$largh"/1280" | bc)
33echo -e $BRed$largh" larghezza"
34echo -e $BWhite$coef" coefficiente riduzione"
35
36#---calcolo dimensione y proporzionale
37alt=$(echo "scale=2;"$largh"*720/1280" | bc)
38alt=${alt%.*}
39#se non divisibile 2 (pari)
40parix=$(echo $((alt%2)) )
41echo "parix="$parix
42if [[ $parix != 0 ]]; then
43#se dispari riportiamo a pari
44alt=$(($alt-1))
45fi
46
47echo "altezza="$alt
48corra=$(echo "scale=2;124*"$coef | bc)
49corrai=${corra%.*}
50echo -e $BWhite$corrai" correzione altezza"
51corrl=$(echo "scale=2;88*"$coef | bc)
52corrli=${corrl%.*}
53echo -e $BWhite$corrli"correzione larghezza"
54#exit 0
55altcorn=$(($alt+$corrai))
56echo -e $BBlue$altcorn" altezza cornice"
57larghcorn=$(($largh+$corrli))
58echo -e $BCyan$larghcorn" larghezza cornice esterna"
59echo -e $BWhite$sovr
60
61echo -e $BYellow'Posizione X di overlay video sovraimpressione (0:0 = angolo superiore sinistro)'
62read overx
63echo -e $BYellow'Posizione Y di overlay video sovraimpressione (0:0 = angolo superiore sinistro)'
64read overy
65echo -e $BWhite"Posizione overlay video piccolo: "$BYellow$overx":"$overy
66corx=$(echo "scale=2;44*"$coef | bc)
67corx=${corx%.*}
68cory=$(echo "scale=2;62*"$coef | bc)
69cory=${cory%.*}
70overcornx=$(($overx-$corx))
71echo -e $BCyan$overcornx
72overcorny=$(($overy-$cory))
73echo -e $BCyan$overcorny
74#aggiunte x logo e subtitles
75echo -e $BYellow'Nome file .ass per sottotitoli'
76read ass
77echo 'Immettere nome e percorso
78del vostro logo GIF'
79read logo
80#----------------AGGIUNGO VARIANTE POSIZIONE LOGO
81echo -e $BYellow'Posizione X del logo nel video (0 = top left)'
82read xoverlay
83echo -e $BYellow'Posizione Y del logo nel video (0 = top)'
84read yoverlay
85#variante cornice video sovrapposto
86echo -e $BYellow$titolo
87echo -e "Scegliere colore Cornice per video."
88echo -e $BRed"Si suppone di essere in ../Elements/action/qualche_cartella
89le cornici sono in una cartella relativa"
90echo -e $backW$BBlack"0 = NERO "$backB
91echo -e $BWhite"1 = BIANCO "
92echo -e $BRed"2 = ROSSO"
93echo -e $BPurple"3 = VIOLA"
94echo -e $BCyan"4 = CIANO"
95echo -e $BBlue"5 = BLU"
96echo -e $BYellow"6 = GIALLO"
97echo -e $BGreen"7 = VERDE CHIARO"
98echo -e $BGreen"8 = VERDE SCURO"
99echo -e $BWhite"9 = GRIGIO CHIARO"
100echo -e $BWhite"10 = GRIGIO SCURO"
101read colorcor
102#--------musica
103echo -e $BYellow"Commento sonoro aggiunto"
104read commento
105#----end-musica
106OPTION=$colorcor
107case $OPTION in
1080)
109cornice="/run/media/claudio/Elements/action/000standard/cornici/decor/decornero.png"
110echo -e "Hai scelto la cornice di colore"$backW$BBlack" NERO "$backB
111;;
1121)
113cornice="/run/media/claudio/Elements/action/000standard/cornici/decor/decorbianco.png"
114echo -e "Hai scelto la cornice di colore"$BWhite" BIANCO"
115;;
1162)
117cornice="/run/media/claudio/Elements/action/000standard/cornici/decor/decorrosso.png"
118echo -e "Hai scelto la cornice di colore"$Bred" ROSSO"
119;;
1203)
121cornice="/run/media/claudio/Elements/action/000standard/cornici/decor/decorfucsia.png"
122echo -e "Hai scelto la cornice di colore"$BPurple" FUCSIA"
123;;
1244)
125cornice="/run/media/claudio/Elements/action/000standard/cornici/decor/decorciano.png"
126echo -e "Hai scelto la cornice di colore"$BCyan" CIANO"
127;;
1285)
129cornice="/run/media/claudio/Elements/action/000standard/cornici/decor/decorblu.png"
130echo -e "Hai scelto la cornice di colore"$BBlue" BLU"
131;;
1326)
133cornice="/run/media/claudio/Elements/action/000standard/cornici/decor/decorgiallo.png"
134echo -e "Hai scelto la cornice di colore"$BYellow" GIALLO"
135;;
1367)
137cornice="/run/media/claudio/Elements/action/000standard/cornici/decor/decorverde1.png"
138echo -e "Hai scelto la cornice di colore"$BGreen" VERDE CHIARO"
139;;
1408)
141cornice="/run/media/claudio/Elements/action/000standard/cornici/decor/decorverde.png"
142echo -e "Hai scelto la cornice di colore"$BGreen" VERDE"
143;;
1449)
145cornice="/run/media/claudio/Elements/action/000standard/cornici/decor/decorgrigio1.png"
146echo -e "Hai scelto la cornice di colore"$BWhite" GRIGIO CHIARO"
147;;
14810)
149cornice="/run/media/claudio/Elements/action/000standard/cornici/decor/decorgrigio.png"
150echo -e "Hai scelto la cornice di colore"$BWhite" GRIGIO"
151;;
152*)
153echo -e $BCyan"Hai scelto un numero non contemplato!
154Probramma interrotto."
155exit 0
156esac
157#------------#------------
158echo 'Digitare il nome del titolo che si vuole dare al video elaborato'
159read nuovotitolo
160#----------------
161ffmpeg -i $titolo -i $sovr -i $commento -i $cornice -ignore_loop 0 -i $logo -filter_complex "[0:a][1:a]amix=inputs=2:shortest:dropout_transition=0
162[2video:a];[2video:a][2:a]amix=inputs=2:shortest:dropout_transition=0
163[soundtot:a];[1]scale="$largh":"$alt",setsar=1:1, setdar=16:9[scaled];[0][scaled]overlay=x="$overx":"$overy"
164[2video];[3]scale="$larghcorn":"$altcorn",setsar=1:1, setdar=16:9[cornscal];[2video][cornscal]overlay=x="$overcornx":"$overcorny"
165[2vcorn];[2vcorn][4]overlay=x="$xoverlay":"$yoverlay"[outv];
166[outv]subtitles="$ass -map [soundtot:a]? -c:v libx264 -shortest -r 25 -crf 17 -aspect 16/9 $nuovotitolo
167
168echo -e $Bred'Il tuo video '$BYellow$nuovotitolo$Bred' รจ stato elaborato'
169
170exit 0