@echo off setlocal enabledelayedexpansion if "%~1"=="" ( echo Usage: %0 ^ exit /b 1 ) set "input_file=%~1" set "file_extension=%~x1" set "file_name=%~n1" set "file_dir=%~dp1" REM Extract audio if input is a video file if /i "%file_extension%"==".avi" ( echo Extracting audio from video... ffmpeg -i "%input_file%" -q:a 0 "%file_dir%%file_name%.mp3" set "audio_file=%file_dir%%file_name%.mp3" ) else ( set "audio_file=%input_file%" ) REM Run demucs for vocal extraction echo Running Demucs for vocal extraction... demucs -n htdemucs_ft "%audio_file%" --two-stems vocals -o "%file_dir%vocal_extracted" --filename "{track}-{stem}.{ext}" REM Process the extracted vocals echo Processing extracted vocals... ffmpeg -i "%file_dir%vocal_extracted\htdemucs_ft\%file_name%-vocals.wav" -ar 16000 -ac 1 -acodec pcm_s16le -af "aresample=resampler=soxr, lowpass=f=7500, acompressor=threshold=-12dB:ratio=2:attack=5:release=50, equalizer=f=1000:width_type=o:width=1:g=2, equalizer=f=3000:width_type=o:width=1:g=3" -b:a 128k "%file_dir%%file_name%_vocals_16k_mono_enhanced.wav" REM Run transcription script echo Running transcription... python "%~dp0transcribe_japanese_with_diarization.py" "%file_dir%%file_name%_vocals_16k_mono_enhanced.wav" REM Cleanup echo Cleaning up temporary files... if /i "%file_extension%"==".avi" del "%file_dir%%file_name%.mp3" rmdir /s /q "%file_dir%vocal_extracted" del "%file_dir%%file_name%_vocals_16k_mono_enhanced.wav" echo Processing complete!