80 lines
1.6 KiB
Markdown
80 lines
1.6 KiB
Markdown
# TimeLapse
|
|
|
|
- Registro fotografico cada X tiempo, durante Y tiempo o Z cantidad de fotografias
|
|
|
|
### Fecha/Tiempo
|
|
|
|
**Formato:** `Dia-Mes-Año_hora:minutos`
|
|
```bash
|
|
FECHA = $(date +'%d-%h-%Y_%H:%M')
|
|
1-Feb-2022_02:12
|
|
```
|
|
|
|
**Diferencia** de fechas en segundos
|
|
```bash
|
|
LA_FECHA=$(( ($(date -d "2022-01-27" "+%s") - $(date -d "2022-01-22" "+%s") )))
|
|
```
|
|
|
|
**Agregar** segundos a **LA_FECHA**
|
|
```bash
|
|
LA_FECHA2=$((LA_FECHA+800))
|
|
echo ${LA_FECHA2}
|
|
```
|
|
|
|
**Equivalencias** en segundos:
|
|
Otro | Segundos
|
|
-|-
|
|
1 Año | 31536000
|
|
1 Mes | 18144000
|
|
1 Semana | 604800
|
|
1 Dia | 86400
|
|
1 Hora | 3600
|
|
20 Min | 1200
|
|
15 Min | 900
|
|
10 Min | 600
|
|
|
|
<br>
|
|
|
|
> **Necesito tiempo(s)**
|
|
> Para no depender de función sleep para los intervalos,
|
|
> ya que el tiempo de ejecucion de las ordenes es variable
|
|
|
|
|
|
Variables de tiempo | Poblada por
|
|
-|-
|
|
Tiempo Actual | `$(date -d today +%s")` int: segundos
|
|
Intervalo | Argumento (int: segundos)
|
|
Duración intervalo, ó <br> Cantidad de fotos | Argumento (int: segundos o cantidad)
|
|
Tiempo Ultimo Lapso, <br> (post-ejecucion) | `$(date -d today +%s")` int: segundos
|
|
|
|
|
|
ej. Fotos cada 1 hora, durante medio día:
|
|
```bash
|
|
# Limite por cantidad de fotos
|
|
./foto.sh --int=3600 --cant=12
|
|
|
|
# Limite por tiempo
|
|
./foto.sh --int=3600 --fin=43200
|
|
```
|
|
|
|
<br>
|
|
|
|
Diferencia de tiempo entre intervalos:
|
|
```c
|
|
algún loop {
|
|
t_actual = "tiempo actual en segundos";
|
|
if (t_actual - t_loop_previo) >= intervalo_loop {
|
|
# alguna acción...
|
|
t_loop_previo = t_actual;
|
|
}
|
|
}
|
|
```
|
|
|
|
### Video
|
|
|
|
- Crea video con las imagenes (en orden temporal)
|
|
```bash
|
|
ffmpeg -framerate 5 -pattern_type glob -i "*.jpeg" -c:v libx264 -crf 0 output.mp4
|
|
```
|
|
|