If you had read properly you would have figured out why why type 1 is so fast; because it ONLY REMUXES. If you have softsubbed subtitles (what do you mean by "embedded"?) type 1 will do nothing with them. You need the appropriate type which RE-ENCODES the video to hardcode them into the video stream.
If you remove the second pass you will have no video. Anyway, I see what you want to do, however there isn't a magic way to make it suddenly go fast. It will still take hours and there's nothing much that can be done about it. I guess if you don't care about quality and want to enjoy eye cancer, here you go:
Spoiler:
Code:
@echo off
SET PATH=""
:start
echo ---
echo What type of file have you got? (1, 2, 3 or 4)
set /p type=Type:
set type=%type:~0,1%
if %type% == 1 goto type1start
if %type% == 2 goto type2start
if %type% == 3 goto type3start
if %type% == 4 goto type4start
:type1start
echo Please enter the filename of the MKV file to load excluding
echo the extension
SET /P file=File:
:type1checkfile
if not exist %file%.mkv goto type1notfoundfile
echo Please enter the pixel aspect ratio (in the format N:D, ie 1:1):
SET /P par=PAR:
echo Please enter the filename for the final output file excluding the
echo extension
SET /P output=Output:
echo ---
:type1mux
echo Muxing Video and Audio...
"bin\mkvextract" tracks %file%.mkv 1:"bin\%output%_vid.h264" 2:"bin\%output%_aud.aac"
"bin\mkvextract" timecodes_v2 %file%.mkv 1:"bin\timecodes.txt"
"bin\binreplace" "bin\%output%_vid.h264" 0167640033 0167640029
"bin\mp4box" -add "bin\%output%_vid.h264" -fps 23.976 "bin\%output%_vid.mp4"
cd bin
tc2mp4 -i %output%_vid.mp4 -t timecodes.txt -o %output%_vid_new.mp4
cd ..
"bin\mp4box" -3gp -par 1=%par% -add "bin\%output%_vid_new.mp4" -add "bin\%output%_aud.aac" %output%.mp4
echo ---
goto type1post
:type1notfoundfile
echo ---
echo MKV FILE NOT FOUND!
echo Make sure to place the file you want to transcode into
echo the same directory as this batch script.
echo Else check that you specified the correct filename...
pause
goto type1start
:type1post
echo Deleting intermediate files...
del /f "bin\timecodes.txt"
del /f "bin\%output%_aud.aac"
del /f "bin\%output%_vid.h264"
del /f "bin\%output%_vid.mp4"
del /f "bin\%output%_vid_new.mp4"
echo Done!
goto end
:type2start
echo Please enter the filename of the MKV file to load excluding
echo the extension
SET /P file=File:
:type2checkfile
if not exist %file%.mkv goto type2notfoundfile
echo Please enter the pixel aspect ratio (in the format N:D, ie 1:1):
SET /P par=PAR:
echo Please enter the filename for the final output file excluding the
echo extension
SET /P output=Output:
echo ---
:type2audio
echo Encoding Audio...
"bin\bepipe" --script "DirectShowSource(^%~dp0%file%.mkv^,video=false)" | "bin\neroAacEnc.exe" -br 128000 -lc -if - -of "bin\%output%_aud.mp4"
echo ---
:type2mux
echo Muxing Video and Audio...
"bin\mkvextract" tracks %file%.mkv 1:"bin\%output%_vid.h264"
"bin\mkvextract" timecodes_v2 %file%.mkv 1:"bin\timecodes.txt"
"bin\binreplace" "bin\%output%_vid.h264" 0167640033 0167640029
"bin\mp4box" -add "bin\%output%_vid.h264" -fps 23.976 "bin\%output%_vid.mp4"
cd bin
tc2mp4 -i %output%_vid.mp4 -t timecodes.txt -o %output%_vid_new.mp4
cd ..
"bin\mp4box" -3gp -par 1=%par% -add "bin\%output%_vid_new.mp4" -add "bin\%output%_aud.mp4" %output%.mp4
echo ---
goto type2post
:type2notfoundfile
echo ---
echo MKV FILE NOT FOUND!
echo Make sure to place the file you want to transcode into
echo the same directory as this batch script.
echo Else check that you specified the correct filename...
pause
goto type2start
:type2post
echo Deleting intermediate files...
del /f "bin\timecodes.txt"
del /f "bin\%output%_aud.mp4"
del /f "bin\%output%_vid.h264"
del /f "bin\%output%_vid.mp4"
del /f "bin\%output%_vid_new.mp4"
echo Done!
goto end
:type3start
echo Please enter the filename of the MKV file to load excluding
echo the extension
SET /P file=File:
:type3checkfile
if not exist %file%.mkv goto type3notfoundfile
echo Please enter the pixel aspect ratio (in the format N:D, ie 1:1):
SET /P par=PAR:
echo Please enter the filename of the AviSynth script to load excluding
echo the extension
SET /P input=Script:
:type3checkscript
if not exist %input%.avs goto type3notfoundscript
echo Please enter the filename for the final output file excluding the
echo extension
SET /P output=Output:
echo Is your video standard or high definition? (s or h)
set /p standard=Standard:
set standard=%standard:~0,1%
:type3checksdhd1
if %standard% == s goto type3bitratesd
if %standard% == h goto type3bitratehd
:type3bitratesd
echo Please enter the video bitrate (kbps) that you would like to use
echo (recommended: 700-850)
SET /P bit=Bitrate:
echo ---
goto type3videosd1
:type3bitratehd
echo Please enter the video bitrate (kbps) that you would like to use
echo (recommended: 1200-1800)
SET /P bit=Bitrate:
echo ---
goto type3videohd1
:type3videosd1
echo Encoding Video Second Pass...
"bin\x264" --crf 18.0 --level 4.1 --ref 5 --mixed-refs --no-fast-pskip --bframes 4 --b-pyramid --b-rdo --bime --weightb --direct auto --filter 1,1 --subme 5 --trellis 1 --analyse all --8x8dct --vbv-bufsize 9000 --vbv-maxrate 25000 --me hex --merange 12 --threads auto --thread-input --progress --no-psnr --no-ssim --output "bin\%output%_vid.mp4" %input%.avs
echo ---
goto type3mux
:type3videohd1
echo Encoding Video Second Pass...
"bin\x264" --crf 18.0 --level 4.1 --ref 3 --mixed-refs --no-fast-pskip --bframes 3 --b-pyramid --b-rdo --bime --weightb --direct auto --filter 1,1 --subme 5 --trellis 1 --analyse all --8x8dct --vbv-bufsize 9000 --vbv-maxrate 25000 --me hex --merange 12 --threads auto --thread-input --progress --no-psnr --no-ssim --output "bin\%output%_vid.mp4" %input%.avs
echo ---
goto type3mux
:type3mux
echo Muxing Video and Audio...
"bin\mkvextract" tracks %file%.mkv 2:"bin\%output%_aud.aac"
"bin\mkvextract" timecodes_v2 %file%.mkv 1:"bin\timecodes.txt"
cd bin
tc2mp4 -i %output%_vid.mp4 -t timecodes.txt -o %output%_vid_new.mp4
cd ..
"bin\mp4box" -3gp -par 1=%par% -add "bin\%output%_vid_new.mp4" -add "bin\%output%_aud.aac" %output%.mp4
echo ---
goto type3post
:type3notfoundfile
echo ---
echo MKV FILE NOT FOUND!
echo Make sure to place the file you want to transcode into
echo the same directory as this batch script.
echo Else check that you specified the correct filename...
pause
goto type3start
:type3notfoundscript
echo ---
echo AVISYNTH SCRIPT NOT FOUND!
echo If the AviSynth script does not exist then please create it as instructed.
echo Else check that you specified the correct filename...
pause
goto type3checkfile
:type3post
echo Deleting intermediate files...
del /f "bin\timecodes.txt"
del /f "bin\%output%_aud.aac"
del /f "bin\%output%_vid.mp4"
del /f "bin\%output%_vid_new.mp4"
echo Done!
goto end
:type4start
echo Please enter the filename of the MKV file to load excluding
echo the extension
SET /P file=File:
:type4checkfile
if not exist %file%.mkv goto type4notfoundfile
echo Please enter the filename of the AviSynth script to load excluding
echo the extension
SET /P input=Script:
:type4checkscript
if not exist %input%.avs goto type4notfoundscript
echo Please enter the filename for the final output file excluding the
echo extension
SET /P output=Output:
echo Is your video standard or high definition (s or h)
set /p standard=Standard:
set standard=%standard:~0,1%
echo Please enter the pixel aspect ratio (in the format N:D, ie 1:1):
SET /P par=PAR:
:type4checksdhd1
if %standard% == s goto type4bitratesd
if %standard% == h goto type4bitratehd
:type4bitratesd
echo Please enter the video bitrate (kbps) that you would like to use
echo (recommended: 700-850)
SET /P bit=Bitrate:
echo ---
goto type4audio
:type4bitratehd
echo Please enter the video bitrate (kbps) that you would like to use
echo (recommended: 1200-1800)
SET /P bit=Bitrate:
echo ---
goto type4audio
:type4audio
echo Encoding Audio...
"bin\bepipe" --script "DirectShowSource(^%~dp0%file%.mkv^,video=false)" | "bin\neroAacEnc.exe" -br 128000 -lc -if - -of "bin\%output%_aud.mp4"
echo ---
:type4checksdhd2
if %standard% == s goto type4videosd1
if %standard% == h goto type4videohd1
:type4videosd1
echo Encoding Video Second Pass...
"bin\x264" --crf 18.0 --level 4.1 --ref 5 --mixed-refs --no-fast-pskip --bframes 4 --b-pyramid --b-rdo --bime --weightb --direct auto --filter 1,1 --subme 5 --trellis 1 --analyse all --8x8dct --vbv-bufsize 9000 --vbv-maxrate 25000 --me hex --merange 12 --threads auto --thread-input --progress --no-psnr --no-ssim --output "bin\%output%_vid.mp4" %input%.avs
echo ---
goto type4mux
:type4videohd1
echo Encoding Video Second Pass...
"bin\x264" --crf 18.0 --level 4.1 --ref 3 --mixed-refs --no-fast-pskip --bframes 3 --b-pyramid --b-rdo --bime --weightb --direct auto --filter 1,1 --subme 5 --trellis 1 --analyse all --8x8dct --vbv-bufsize 9000 --vbv-maxrate 25000 --me hex --merange 12 --threads auto --thread-input --progress --no-psnr --no-ssim --output "bin\%output%_vid.mp4" %input%.avs
echo ---
goto type4mux
:type4mux
echo Muxing Video and Audio...
"bin\mkvextract" timecodes_v2 %file%.mkv 1:"bin\timecodes.txt"
cd bin
tc2mp4 -i %output%_vid.mp4 -t timecodes.txt -o %output%_vid_new.mp4
cd ..
"bin\mp4box" -3gp -par 1=%par% -add "bin\%output%_vid_new.mp4" -add "bin\%output%_aud.mp4" %output%.mp4
echo ---
goto type4post
:type4notfoundfile
echo ---
echo MKV FILE NOT FOUND!
echo Make sure to place the file you want to transcode into
echo the same directory as this batch script.
echo Else check that you specified the correct filename...
pause
goto type4start
:type4notfoundscript
echo ---
echo AVISYNTH SCRIPT NOT FOUND!
echo If the AviSynth script does not exist then please create it as instructed.
echo Else check that you specified the correct filename...
pause
goto type4checkfile
:type4post
echo Deleting intermediate files...
del /f "bin\timecodes.txt"
del /f "bin\%output%_aud.mp4"
del /f "bin\%output%_vid.mp4"
del /f "bin\%output%_vid_new.mp4"
echo Done!
goto end
:end