2019-04-14 15:53:12 +00:00
|
|
|
#!/bin/sh
|
2018-01-01 19:29:36 +00:00
|
|
|
|
2020-08-28 16:11:06 +00:00
|
|
|
# Blaze - record screen and audio
|
|
|
|
# https://github.com/cherrry9/blaze/
|
|
|
|
# modificado por deadguy
|
2020-07-07 23:12:28 +00:00
|
|
|
|
2021-02-09 16:45:49 +00:00
|
|
|
ICON_NO="$XDG_DATA_HOME/icons/Haiku/scalable/actions/process-stop.svg"
|
|
|
|
ICON_RECORD="$XDG_DATA_HOME/icons/Haiku/scalable/devices/gnome-dev-camera.svg"
|
|
|
|
|
Chicos, Medianos, y Grandes
Empezando por los grandes. portee mis scripts de dmenu a rofi ya que
este ultimo ha alcanzado un grado de madurez que considero
satisfactoria. Seguramente haga falta ajustar algunos detalles pero eso
lo ire viendo con el uso.
En cuanto a medianos, afilar el hacha es una ocupacion constante, ojala
me pagaran por eso (creo que ya puse eso en un commit una vez...). Asi
que agregue cosas relevantes para golang, ajuste varios temas de ALE
porque me parecia que no andaban del todo bien, y agregue algunos
archivos que por alguna razon no estaban en el repo.
Siguiendo con los medianos, cambie un par de cosas en la configuracion
de neomutt, como poder tener fechas relativas en el inbox, usar elinks y
suprimir esos mensajes de autoview que eran puro ruido.
Chicos no se, varias cositas aqui y alla. Los cambios de QOL de siempre,
supongo.
Ah, y borre a la mierda el readme de /bin porque era medio cualquiera,
despues voy a ver de crear uno como la gente.
2020-10-21 13:05:09 +00:00
|
|
|
output="$HOME/vid/Screen/$(date '+%F_%H_%M').mp4"
|
|
|
|
fps=60
|
|
|
|
m() { rofi -dmenu -i -no-custom "$@"; }
|
2020-07-07 23:12:28 +00:00
|
|
|
|
Chicos, Medianos, y Grandes
Empezando por los grandes. portee mis scripts de dmenu a rofi ya que
este ultimo ha alcanzado un grado de madurez que considero
satisfactoria. Seguramente haga falta ajustar algunos detalles pero eso
lo ire viendo con el uso.
En cuanto a medianos, afilar el hacha es una ocupacion constante, ojala
me pagaran por eso (creo que ya puse eso en un commit una vez...). Asi
que agregue cosas relevantes para golang, ajuste varios temas de ALE
porque me parecia que no andaban del todo bien, y agregue algunos
archivos que por alguna razon no estaban en el repo.
Siguiendo con los medianos, cambie un par de cosas en la configuracion
de neomutt, como poder tener fechas relativas en el inbox, usar elinks y
suprimir esos mensajes de autoview que eran puro ruido.
Chicos no se, varias cositas aqui y alla. Los cambios de QOL de siempre,
supongo.
Ah, y borre a la mierda el readme de /bin porque era medio cualquiera,
despues voy a ver de crear uno como la gente.
2020-10-21 13:05:09 +00:00
|
|
|
method="$(printf "Pantalla\nSelección" | m -p " ")"
|
2018-03-12 12:07:25 +00:00
|
|
|
|
2020-08-28 16:11:06 +00:00
|
|
|
if [ "$method" = "Pantalla" ]; then
|
2021-02-09 16:45:49 +00:00
|
|
|
# get information about the display
|
|
|
|
monitors="$(xrandr --listmonitors | awk 'NR>1 { printf $NF"\n" }')"
|
|
|
|
|
|
|
|
# if there's only one display, use that and skip asking
|
|
|
|
if [ "$(printf "%b\n" "$monitors" | wc -l)" = 1 ]; then
|
|
|
|
display="$monitors"
|
|
|
|
else # if there are other displays ask the user which one to use
|
|
|
|
[ ! "$display" ] && display="$(printf "%b" "$monitors" | m -p "Pantalla")"
|
|
|
|
fi
|
|
|
|
|
|
|
|
set -- $(xrandr -q | grep "$display" | grep -oP '\d*x\d*\+\d*\+\d*' | tr '+x' ' ')
|
|
|
|
|
|
|
|
width="$1"
|
|
|
|
height="$2"
|
|
|
|
offX="$3"
|
|
|
|
offY="$4"
|
|
|
|
|
|
|
|
sonido="$(printf "Sí\nNo" | m -p "Audio")"
|
|
|
|
|
|
|
|
if [ "$sonido" = "Sí" ]; then
|
|
|
|
# find default audio device
|
|
|
|
pacmd="$(pacmd list-sources | grep -i -B 1 output)"
|
|
|
|
dev="$(echo "$pacmd" | grep -i '\* index' ||
|
|
|
|
echo "$pacmd" | grep -i 'index' | head -n 1)"
|
|
|
|
audio="-f pulse -i $(echo "$dev" | grep -o '[0-9]')"
|
|
|
|
else
|
|
|
|
audio=""
|
|
|
|
fi
|
2019-04-14 15:53:12 +00:00
|
|
|
|
2020-08-28 16:11:06 +00:00
|
|
|
elif [ "$method" = "Selección" ]; then
|
2021-02-09 16:45:49 +00:00
|
|
|
gif="$(printf "Sí\nNo" | m -p "Gif")"
|
Chicos, Medianos, y Grandes
Empezando por los grandes. portee mis scripts de dmenu a rofi ya que
este ultimo ha alcanzado un grado de madurez que considero
satisfactoria. Seguramente haga falta ajustar algunos detalles pero eso
lo ire viendo con el uso.
En cuanto a medianos, afilar el hacha es una ocupacion constante, ojala
me pagaran por eso (creo que ya puse eso en un commit una vez...). Asi
que agregue cosas relevantes para golang, ajuste varios temas de ALE
porque me parecia que no andaban del todo bien, y agregue algunos
archivos que por alguna razon no estaban en el repo.
Siguiendo con los medianos, cambie un par de cosas en la configuracion
de neomutt, como poder tener fechas relativas en el inbox, usar elinks y
suprimir esos mensajes de autoview que eran puro ruido.
Chicos no se, varias cositas aqui y alla. Los cambios de QOL de siempre,
supongo.
Ah, y borre a la mierda el readme de /bin porque era medio cualquiera,
despues voy a ver de crear uno como la gente.
2020-10-21 13:05:09 +00:00
|
|
|
|
2021-02-09 16:45:49 +00:00
|
|
|
if [ "$gif" = "Sí" ]; then
|
|
|
|
output="$HOME/vid/Screen/$(date '+%F_%H_%M').gif"
|
|
|
|
fps=15
|
|
|
|
fi
|
Chicos, Medianos, y Grandes
Empezando por los grandes. portee mis scripts de dmenu a rofi ya que
este ultimo ha alcanzado un grado de madurez que considero
satisfactoria. Seguramente haga falta ajustar algunos detalles pero eso
lo ire viendo con el uso.
En cuanto a medianos, afilar el hacha es una ocupacion constante, ojala
me pagaran por eso (creo que ya puse eso en un commit una vez...). Asi
que agregue cosas relevantes para golang, ajuste varios temas de ALE
porque me parecia que no andaban del todo bien, y agregue algunos
archivos que por alguna razon no estaban en el repo.
Siguiendo con los medianos, cambie un par de cosas en la configuracion
de neomutt, como poder tener fechas relativas en el inbox, usar elinks y
suprimir esos mensajes de autoview que eran puro ruido.
Chicos no se, varias cositas aqui y alla. Los cambios de QOL de siempre,
supongo.
Ah, y borre a la mierda el readme de /bin porque era medio cualquiera,
despues voy a ver de crear uno como la gente.
2020-10-21 13:05:09 +00:00
|
|
|
|
2021-02-09 16:45:49 +00:00
|
|
|
# select an area and make each number a separate word
|
|
|
|
set -- $(slop -f '%w %h %x %y')
|
2020-08-28 16:11:06 +00:00
|
|
|
|
2021-02-09 16:45:49 +00:00
|
|
|
# get information about the display
|
|
|
|
width="$1"
|
|
|
|
height="$2"
|
|
|
|
offX="$3"
|
|
|
|
offY="$4"
|
2020-08-28 16:11:06 +00:00
|
|
|
|
2021-02-09 16:45:49 +00:00
|
|
|
[ "$((width % 2))" = 1 ] && width="$((width + 1))"
|
|
|
|
[ "$((height % 2))" = 1 ] && height="$((height + 1))"
|
2020-08-28 16:11:06 +00:00
|
|
|
else
|
2021-02-09 16:45:49 +00:00
|
|
|
notify-send -t 3000 -u critical -i "$ICON_NO" "Método inválido"
|
|
|
|
exit 1
|
2020-08-28 16:11:06 +00:00
|
|
|
fi
|
|
|
|
|
|
|
|
# ask the user if they want to start the recording
|
Chicos, Medianos, y Grandes
Empezando por los grandes. portee mis scripts de dmenu a rofi ya que
este ultimo ha alcanzado un grado de madurez que considero
satisfactoria. Seguramente haga falta ajustar algunos detalles pero eso
lo ire viendo con el uso.
En cuanto a medianos, afilar el hacha es una ocupacion constante, ojala
me pagaran por eso (creo que ya puse eso en un commit una vez...). Asi
que agregue cosas relevantes para golang, ajuste varios temas de ALE
porque me parecia que no andaban del todo bien, y agregue algunos
archivos que por alguna razon no estaban en el repo.
Siguiendo con los medianos, cambie un par de cosas en la configuracion
de neomutt, como poder tener fechas relativas en el inbox, usar elinks y
suprimir esos mensajes de autoview que eran puro ruido.
Chicos no se, varias cositas aqui y alla. Los cambios de QOL de siempre,
supongo.
Ah, y borre a la mierda el readme de /bin porque era medio cualquiera,
despues voy a ver de crear uno como la gente.
2020-10-21 13:05:09 +00:00
|
|
|
[ ! "$ready" ] && ready="$(printf "Sí\nNo" | m -p "Empezar")"
|
2020-08-28 16:11:06 +00:00
|
|
|
|
|
|
|
[ "$ready" = "Sí" ] && {
|
2021-02-09 16:45:49 +00:00
|
|
|
notify-send -t 2000 -i "$ICON_RECORD" "Grabando"
|
|
|
|
|
|
|
|
ffmpeg \
|
|
|
|
-loglevel error \
|
|
|
|
-y \
|
|
|
|
-thread_queue_size 4096 \
|
|
|
|
$audio \
|
|
|
|
-f x11grab \
|
|
|
|
-draw_mouse 1 \
|
|
|
|
-s "${width}x$height" \
|
|
|
|
-r "$fps" \
|
|
|
|
-i "$DISPLAY.0+$offX,$offY" \
|
|
|
|
-pix_fmt yuv420p \
|
|
|
|
-q:v 0 \
|
|
|
|
"$output" &
|
|
|
|
|
|
|
|
echo $! > /tmp/blaze-pid
|
2020-08-28 16:11:06 +00:00
|
|
|
}
|