Ponto 1 da sua conclusão:
Instead of selecting just the .mkv, .mp4 and .avi file formats, the script selects all file types.
É claro no comando
dir *.mp4,*.mkv,*.avi /b /s /a-d %1
Isso inicia 4 varreduras, 3 do diretório atual com as respectivas extensões e uma para o valor% 1 passado
Sugiro que você faça primeiro um CD /D "%~1"
para que o diretório funcione a partir desse local.
@echo off
setlocal
CD /D "%~1"
:: Create numbered list of files in a temporary file
set "tempFile=%temp%\%~nx0_fileList_%time::=.%.txt"
dir /b /s /a-d *.mp4,*.mkv,*.avi | findstr /n "^" >"%tempFile%" & REM "