Bash functions for easily recording voice from terminal, using for my voice training
record.sh
edited
1# voice practice
2export VOICE_DIR="$NOTES/Personal/Transitioning/VoiceTraining/recordings/practice"
3record() {
4 mkdir -p $VOICE_DIR/$(date +%F)
5 file="$VOICE_DIR/$(date +%F)/practice_$(ls $VOICE_DIR/$(date +%F) | wc -l)"
6 if [ $# -eq 1 ]; then
7 file="$file-$1"
8 fi
9 arecord -f cd /tmp/rec.wav
10 ffmpeg -loglevel quiet -i /tmp/rec.wav -vn -ar 44100 -ac 2 -b:a 192k $file.mp3
11 rm /tmp/rec.wav
12}
13
14play_last_recording() {
15 file=$VOICE_DIR/$(date +%F)/$(ls $VOICE_DIR/$(date +%F) --sort newest | tail -n 1)
16 echo $file
17 ffplay -v 0 -nodisp -autoexit $file
18}
19alias play='play_last_recording'