| 1 | #!/bin/bash |
| 2 | # Bold |
| 3 | BBlack='e[1;30m' # Nero |
| 4 | BRed='e[1;31m' # Rosso |
| 5 | BGreen='e[1;32m' # Verde |
| 6 | BYellow='e[1;33m' # Giallo |
| 7 | BBlue='e[1;34m' # Blu |
| 8 | BPurple='e[1;35m' # Viola |
| 9 | BCyan='e[1;36m' # Ciano |
| 10 | BWhite='e[1;37m' # Bianco |
| 11 | Color_Off='e[0m' # Text Reset |
| 12 | reset_console="E[37;40m" #biancoBold |
| 13 | echo -e $BRed'PROGRAMMA shell PER trasformazione in seppia VIDEO a colori' |
| 14 | echo -e $BWhite'Titolo video'$BYellow |
| 15 | read titolo |
| 16 | dur1=$( ffprobe -i $titolo -show_entries format=duration -v quiet -of csv=p=0 ) |
| 17 | #la lunghezza per la transizione deve essere 8 sec.finali e iniziali |
| 18 | echo -e $BYellow"Durata "$BWhite$titolo"= "$BGreen$dur1 |
| 19 | largh=$( ffprobe -i $titolo -v error -select_streams v -show_entries stream=width -of default=noprint_wrappers=1 ) |
| 20 | inizio=${largh-6} |
| 21 | larghe=${largh:6:$inizio} |
| 22 | larghv=$(($larghe)) |
| 23 | echo -e $BWhite"Valore larghezza "$BYellow$larghv |
| 24 | alt=$( ffprobe -i $titolo -v error -select_streams v -show_entries stream=height -of default=noprint_wrappers=1 ) |
| 25 | echo $alt |
| 26 | lungalt=${#alt} #lunghezza output |
| 27 | la=$((lungalt-7)) #lungh.numero valore video |
| 28 | subalt=${alt:7:la} #stringa altezza |
| 29 | echo -e $BWhite"Altezza= "$BYellow$subalt |
| 30 | subh=$(($subalt)) |
| 31 | stringascale=$larghe"x"$subalt |
| 32 | echo $stringascale #; exit 0 |
| 33 | #-------aggiungo la possibilità di inserire la maschera filtro |
| 34 | echo -e $BWhite'Titolo maschera vintage |
| 35 | '$BRed'(assicurarsi di avere una maschera che copra la durata del video base)'$BYellow |
| 36 | read titolo2 |
| 37 | |
| 38 | echo -e $BWhite"Inizio sovrapposiazione sul primo video in secondi?"$BYellow" (1 decimale)" |
| 39 | read init |
| 40 | echo -e $BWhite"Fine sovrapposiazione sul primo video in secondi?"$BYellow" (da inizio 1°video - 1 decimale)" |
| 41 | read fine |
| 42 | echo -e $BWhite"Indice di traparenza?"$BYellow" (decimale)$BWhite |
| 43 | Valori intermedi tra -2.0 e 2.0"$BYellow |
| 44 | read trasp |
| 45 | #---- |
| 46 | echo -e $BWhite'Digitare il nome del titolo che si vuole dare al video elaborato'$BYellow |
| 47 | read nuovotitolo |
| 48 | #--------------- |
| 49 | |
| 50 | ffmpeg -y -i $titolo -i $titolo2 -filter_complex " |
| 51 | [0:v] |
| 52 | colorchannelmixer= |
| 53 | 0.393:0.769:0.189:0.000: |
| 54 | 0.349:0.686:0.168:0.000: |
| 55 | 0.272:0.534:0.131:0.000: |
| 56 | 0.000:0.000:0.000:1.000 |
| 57 | [v]; [1:v]scale="$stringascale"[scalato]; |
| 58 | [scalato]format=yuva444p, colorchannelmixer=aa='$trasp',setpts=PTS-STARTPTS |
| 59 | [over]; [v][over]overlay=x=0:0:enable='between(t,"$init","$fine")'[new]" |
| 60 | -map "[new]" -c:v libx264 -map 0:a $nuovotitolo |
| 61 | |
| 62 | exit 0 |
| 63 | |
| 64 | |