86 lines
1.8 KiB
Markdown
86 lines
1.8 KiB
Markdown
|
Me in 2022
|
||
|
==========
|
||
|
|
||
|
![](https://i.imgur.com/m5rQtBI.gif)
|
||
|
|
||
|
The above *.gif* shows a snapshot taken by my computer at 12:00 for a large number of days of the year. The below *.gif* shows a snapshot taken by my computer every five minutes on the 22/02/2022:
|
||
|
|
||
|
![](https://i.imgur.com/Pw1iMSn.gif)
|
||
|
|
||
|
### To create such a *.gif* in Linux
|
||
|
|
||
|
**a. Create a script to take a photo from your webcam:**
|
||
|
|
||
|
```
|
||
|
## Defs
|
||
|
panopticonDir="~/.panopticon"
|
||
|
|
||
|
selfiesDir="$panopticonDir/selfies"
|
||
|
today="$(date +"%Y%m%d")"
|
||
|
timeNow="$(date +"%H%M%S")"
|
||
|
|
||
|
## Init
|
||
|
mkdir -p "$selfiesDir/$today"
|
||
|
|
||
|
## Selfies
|
||
|
|
||
|
selfieFileName="webcam_$timeNow.jpg"
|
||
|
/usr/bin/fswebcam -r 1280x720 "$selfiesDir/$today/$selfieFileName"
|
||
|
# ^ works with pipewire
|
||
|
|
||
|
```
|
||
|
|
||
|
**b. Call the script from within crontab**
|
||
|
|
||
|
Call
|
||
|
|
||
|
```
|
||
|
$ sudo crontab -e
|
||
|
```
|
||
|
|
||
|
and then paste:
|
||
|
|
||
|
```
|
||
|
*/5 * * * * /home/loki/.panopticon/shoot.sh
|
||
|
```
|
||
|
|
||
|
**c. Put it all together into a gif**
|
||
|
|
||
|
One gif from snapshots taken at 12:00.
|
||
|
|
||
|
```
|
||
|
summary_dir="~/.panopticon/summary-12"
|
||
|
mkdir summary_dir
|
||
|
for dir in ~/.panopticon/*/ ; do
|
||
|
if [[ -d "$dir" && ! -L "$dir" ]]; then
|
||
|
echo "Entering $dir";
|
||
|
dirname_raw="$(echo "$dir" | sed 's#/##')"
|
||
|
temp_photo_name="$(echo $dirname_raw/webcam_1200*)"
|
||
|
echo "$temp_photo_name"
|
||
|
cp $temp_photo_name temp.jpg
|
||
|
mv temp.jpg $summary_dir/$dirname_raw.jpg
|
||
|
fi;
|
||
|
done
|
||
|
|
||
|
convert -delay 10 -loop 0 $summary_dir/*.jpg 12.gif
|
||
|
|
||
|
```
|
||
|
|
||
|
One for each day with something like:
|
||
|
|
||
|
```
|
||
|
for dir in */ ; do
|
||
|
if [[ -d "$dir" && ! -L "$dir" ]]; then
|
||
|
echo "Entering $dir";
|
||
|
dirname_raw="$(echo "$dir" | sed 's#/##')"
|
||
|
convert -delay 10 -loop 0 $dirname_raw/*.jpg daily-gifs/$dirname_raw.gif
|
||
|
echo "Created daily_gifs/$dirname_raw"
|
||
|
fi;
|
||
|
done
|
||
|
|
||
|
```
|
||
|
|
||
|
<p><section id="isso-thread">
|
||
|
<noscript>Javascript needs to be activated to view comments.</noscript>
|
||
|
</section></p>
|