-
Notifications
You must be signed in to change notification settings - Fork 0
/
v140s
executable file
·78 lines (72 loc) · 1.87 KB
/
v140s
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
#! /bin/bash
#v288p_nologo
#################################################################################################
#set -x
echo -n "Introduce el video de entrada: (/mnt/d/Vídeos/) "
read -e -i "/mnt/d/Vídeos/" v_entrada # RUTA COMPLETA DEL VÍDEO DE ENTRADA
ruta="${v_entrada%/*}/"
nom_f="${v_entrada##*/}"
ext_f=".${nom_f##*.}"
nom_f="${nom_f%.*}"
fontfile="/mnt/c/Windows/Fonts/impact.ttf" # Ruta de la fuente de texto
read -ep "Introduce el inicio de la secuencia (00:00:00.000): " -i "00:00:00.000" t_ini # Inicio de la secuencia
v_dur=$(ffprobe -v error -show_entries format=duration -sexagesimal -of default=noprint_wrappers=1:nokey=1 "${v_entrada}")
read -ep "Introduce el final de la secuencia (${v_dur}): " -i "${v_dur}" t_fin # Fin de la secuencia
secuencia_t1="$(date --date ${t_ini} +%s.%N)"
secuencia_t2="$(date --date ${v_dur} +%s.%N)"
setpts=$(echo "scale=6;140/(${secuencia_t2}-${secuencia_t1})" | bc )
atempo=$(echo "scale=6; 1/${setpts}" | bc )
#echo ${atempo}
read -p "Introduce el titular 1: " txt_l1 # LINEA 1 DE TEXTO A INCRUSTAR
read -p "Introduce el titular 2: " txt_l2 # LINEA 2 DE TEXTO A INCRUSTAR
v_salida="${ruta}${nom_f}_140s.mp4" # RUTA COMPLETA DEL VIDEO DE SALIDA
f_txt_l1="
[0:v]
drawtext=
fontfile='${fontfile}':
text='${txt_l1}':
fontcolor=white:
borderw=1:
fontsize=18:
alpha=0.67:
x=(w-tw)/2:
y=(th/4)
"
f_txt_l2="
,
drawtext=
fontfile='${fontfile}':
text='${txt_l2}':
fontcolor=white:
borderw=1:
fontsize=18:
alpha=0.67:
x=(w-tw)/2:
y=(4*th/2)
"
f_setpts="
,
setpts='${setpts}*PTS'
[v]
;
[0:a]
atempo='${atempo}'
[a]
"
filter_complex="${f_txt_l1}${f_txt_l2}${f_setpts}"
##########
# FFMPEG #
##########
ffmpeg -y \
-ss "${t_ini}" \
-to "${t_fin}" \
-i "${v_entrada}" \
-filter_complex "${filter_complex}" \
-map '[v]' \
-map '[a]' \
-c:a aac \
-q:a 1 \
-ac 1 \
-c:v h264 \
-crf 25 \
"${v_salida}"