40 lines
998 B
Makefile
40 lines
998 B
Makefile
PYTHON = python
|
|
|
|
WHISPER_PREFIX = ../../
|
|
WHISPER_MODEL = tiny
|
|
|
|
WHISPER_CLI = $(WHISPER_PREFIX)build/bin/whisper-cli
|
|
WHISPER_FLAGS = --no-prints --language en --output-txt
|
|
|
|
# You can create eval.conf to override the WHISPER_* variables
|
|
# defined above.
|
|
-include eval.conf
|
|
|
|
# This follows the file structure of the LibriSpeech project.
|
|
AUDIO_SRCS = $(sort $(wildcard LibriSpeech/*/*/*/*.flac))
|
|
TRANS_TXTS = $(addsuffix .txt, $(AUDIO_SRCS))
|
|
|
|
# We output the evaluation result to this file.
|
|
DONE = $(WHISPER_MODEL).txt
|
|
|
|
all: $(DONE)
|
|
|
|
$(DONE): $(TRANS_TXTS)
|
|
$(PYTHON) eval.py > $@.tmp
|
|
mv $@.tmp $@
|
|
|
|
# Note: This task writes to a temporary file first to
|
|
# create the target file atomically.
|
|
%.flac.txt: %.flac
|
|
$(WHISPER_CLI) $(WHISPER_FLAGS) --model $(WHISPER_PREFIX)models/ggml-$(WHISPER_MODEL).bin --file $^ --output-file $^.tmp
|
|
mv $^.tmp.txt $^.txt
|
|
|
|
archive:
|
|
tar -czf $(WHISPER_MODEL).tar.gz --exclude="*.flac" LibriSpeech $(DONE)
|
|
|
|
clean:
|
|
@rm -f $(TRANS_TXTS)
|
|
@rm -f $(DONE)
|
|
|
|
.PHONY: all clean
|