summaryrefslogtreecommitdiff
path: root/.i3/scripts/audio
diff options
context:
space:
mode:
Diffstat (limited to '.i3/scripts/audio')
-rwxr-xr-x.i3/scripts/audio27
1 files changed, 27 insertions, 0 deletions
diff --git a/.i3/scripts/audio b/.i3/scripts/audio
new file mode 100755
index 0000000..cb630c8
--- /dev/null
+++ b/.i3/scripts/audio
@@ -0,0 +1,27 @@
+#!/bin/bash
+
+# This script records audio.
+# It runs an appropriate record script for either ALSA and Pulseaudio.
+# It also names files smartly to prevent overwrites.
+
+# Picks a file name for the output file based on availability:
+while [[ -f $HOME/screencast$n.mkv ]]
+do
+ n=$((n+1))
+done
+filename="$HOME/screencast$n.mkv"
+
+# For Pulseaudio with ALSA:
+record_pulse() { \
+ffmpeg \
+-f alsa -i default \
+-c:a flac \
+$filename ;}
+
+# For ALSA:
+record_alsa() { \
+ffmpeg -y \
+-f alsa -ar 44100 -i hw:1 \
+$filename ;}
+
+if [[ $(pgrep -x pulseaudio) ]]; then record_pulse; else record_alsa; fi