From 5747a775a1661331f98e371edd3317bfcd47adb1 Mon Sep 17 00:00:00 2001 From: Gigi Date: Sat, 29 Mar 2025 20:04:37 +0000 Subject: [PATCH] Move process_voice_memos.sh to src directory and update paths --- src/process_voice_memos.sh | 49 ++++++++++++++++++++++++++++++++++++++ src/watch_voice_memos.py | 2 +- 2 files changed, 50 insertions(+), 1 deletion(-) create mode 100755 src/process_voice_memos.sh diff --git a/src/process_voice_memos.sh b/src/process_voice_memos.sh new file mode 100755 index 0000000..643519d --- /dev/null +++ b/src/process_voice_memos.sh @@ -0,0 +1,49 @@ +#!/bin/bash + +# Set the directory paths +VOICE_MEMO_DIR="VoiceMemos" +TRANSCRIPT_DIR="$VOICE_MEMO_DIR/transcripts" + +# Check if the voice memo directory exists +if [ ! -d "$VOICE_MEMO_DIR" ]; then + echo "Error: $VOICE_MEMO_DIR directory does not exist" + exit 1 +fi + +# Create transcripts directory if it doesn't exist +mkdir -p "$TRANSCRIPT_DIR" + +# Check if there are any m4a files in the directory +if ! ls "$VOICE_MEMO_DIR"/*.m4a 1> /dev/null 2>&1; then + echo "No m4a files found in $VOICE_MEMO_DIR" + exit 0 +fi + +# Activate the virtual environment +source vibenv/bin/activate + +# Process each m4a file +for file in "$VOICE_MEMO_DIR"/*.m4a; do + if [ -f "$file" ]; then + # Get the filename without the path and extension + filename=$(basename "$file" .m4a) + transcript_file="$TRANSCRIPT_DIR/$filename.txt" + + # Only process if transcript doesn't exist + if [ ! -f "$transcript_file" ]; then + echo "Processing file: $file" + echo "Transcribing audio..." + + # Use whisper to transcribe the audio with tiny model + whisper "$file" --model tiny --output_dir "$TRANSCRIPT_DIR" --output_format txt + + echo "Transcription saved to: $transcript_file" + echo "----------------------------------------" + else + echo "Skipping $file - transcript already exists" + fi + fi +done + +# Deactivate the virtual environment +deactivate \ No newline at end of file diff --git a/src/watch_voice_memos.py b/src/watch_voice_memos.py index 18687ef..4639a5d 100755 --- a/src/watch_voice_memos.py +++ b/src/watch_voice_memos.py @@ -53,7 +53,7 @@ class VoiceMemoHandler(FileSystemEventHandler): try: self.processing_lock = True print("Processing voice memo...") - result = subprocess.run([str(self.base_dir / 'process_voice_memos.sh')], + result = subprocess.run([str(self.base_dir / 'src' / 'process_voice_memos.sh')], capture_output=True, text=True) if result.returncode == 0: