@echo off
setlocal enabledelayedexpansion

for /f %%i in ('ffprobe -v error -show_entries format^=duration -of default^=noprint_wrappers^=1 input.mp4 ^| find "duration"') do (

set /a half=%%i
set /a half=!half!/2

)

ffmpeg -i input.mp4 -t !half! -c copy part1.mp4 -ss !half! -c copy part2.mp4

@echo off
setlocal enabledelayedexpansion

for %%i in (*.mp4) do (

for /f %%j in ('ffprobe -v error -show_entries format^=duration -of default^=noprint_wrappers^=1 "%%i" ^| find "duration"') do (
    set /a half=%%j
    set /a half=!half!/2
)

ffmpeg -i "%%i" -t !half! -c copy "part1_%%~ni.mp4" -ss !half! -c copy "part2_%%~ni.mp4"

)

'''

@echo off
setlocal enabledelayedexpansion

for %%i in (*.mp4) do (

for /f %%j in ('ffprobe -v error -show_entries format^=duration -of default^=noprint_wrappers^=1 "%%i" ^| find "duration"') do (
    set /a half=%%j
    set /a half=!half!/2
)

ffmpeg -i "%%i" -t !half! -c copy "part1_%%~ni.mp4" -ss !half! -c copy "part2_%%~ni.mp4"

del "%%i"

)
'''