transcribe 835 B

12345678910111213141516171819202122232425262728293031323334
  1. #!/usr/bin/env bash
  2. export TRANSCRIBE_MODEL=${TRANSCRIBE_MODEL:-turbo}
  3. if [[ $# -lt 2 ]] ; then
  4. echo "$(basename $0) RECORDER_DIR OUTPUT_DIR" >&2
  5. exit 1
  6. fi
  7. export TRANSCRIBE_DIR=$1
  8. export TRANSCRIBE_OUT=$2
  9. set -e
  10. function run_transcription {
  11. INPATH="${1}"
  12. REL_PATH=$(realpath --relative-to "${TRANSCRIBE_DIR}" $(dirname "${INPATH}"))
  13. OUT_DIR_PATH="${TRANSCRIBE_OUT}/${REL_PATH}"
  14. set -x
  15. mkdir -p "${OUT_DIR_PATH}"
  16. whisper --model "${TRANSCRIBE_MODEL}" \
  17. --output_dir "${OUT_DIR_PATH}" \
  18. --output_format txt \
  19. --task transcribe \
  20. --language en \
  21. "${INPATH}"
  22. rm "${INPATH}"
  23. }
  24. export -f run_transcription
  25. find ${TRANSCRIBE_DIR} -type l,f \
  26. -\( -name '*.wav' -o -name '*.mp3' -\) \
  27. -exec bash -c 'run_transcription "$0"' {} \;