mirror of
https://github.com/aljazceru/vibeline.git
synced 2026-01-14 03:54:25 +01:00
- Add --force/-f flag to control file overwriting in extract.py - Propagate force flag through all scripts (extract.sh, process.sh, run.sh, watch_voice_memos.py) - Add TODO item for future CLI modernization using Python - Skip existing output files unless force flag is used
53 lines
1.2 KiB
Bash
Executable File
53 lines
1.2 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# Parse arguments
|
|
force_flag=""
|
|
while getopts "f" opt; do
|
|
case $opt in
|
|
f) force_flag="-f" ;;
|
|
esac
|
|
done
|
|
shift $((OPTIND-1))
|
|
|
|
# Check if a file argument was provided
|
|
if [ $# -ne 1 ]; then
|
|
echo "Usage: $0 [-f] <voice_memo_file>"
|
|
exit 1
|
|
fi
|
|
|
|
# Get the input file
|
|
input_file="$1"
|
|
|
|
# Check if the input file exists
|
|
if [ ! -f "$input_file" ]; then
|
|
echo "Error: File $input_file does not exist"
|
|
exit 1
|
|
fi
|
|
|
|
# Set the directory paths
|
|
VOICE_MEMO_DIR="VoiceMemos"
|
|
TRANSCRIPT_DIR="$VOICE_MEMO_DIR/transcripts"
|
|
|
|
# Get the filename without the path and extension
|
|
filename=$(basename "$input_file" .m4a)
|
|
transcript_file="$TRANSCRIPT_DIR/$filename.txt"
|
|
|
|
echo "Processing voice memo: $input_file"
|
|
echo "----------------------------------------"
|
|
|
|
# Step 1: Transcribe
|
|
echo "Step 1: Transcribing audio..."
|
|
./transcribe.sh "$input_file"
|
|
|
|
# Check if transcription was successful
|
|
if [ ! -f "$transcript_file" ]; then
|
|
echo "Error: Transcription failed"
|
|
exit 1
|
|
fi
|
|
|
|
# Step 2: Extract content (including summary)
|
|
echo "Step 2: Extracting content..."
|
|
./extract.sh $force_flag "$transcript_file"
|
|
|
|
echo "----------------------------------------"
|
|
echo "Processing complete!" |