annotate god.bat @ 103:1cc4f545a260

Add files via upload committer: GitHub <noreply@github.com>
author Paper <37962225+mrpapersonic@users.noreply.github.com>
date Thu, 22 Sep 2022 00:01:37 -0400
parents
children 2e115eb60be8
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
103
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
1 @echo off
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
2
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
3 REM Welp, this was pointless.
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
4 REM
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
5 REM There's really no way to put raw PCM audio
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
6 REM in an MP4 container. MP4 is already a really
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
7 REM shitty format for a number of other reasons
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
8 REM (no real subtitle support, VERY limited codec
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
9 REM options, etc.), which is why I prefer using
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
10 REM Matroska for literally anything outside of
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
11 REM Vegas.
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
12 REM
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
13 REM However, I learned how to make an arguments
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
14 REM parser in fucking Batch out of all things,
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
15 REM so maybe there was a purpose for this after
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
16 REM all.
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
17 REM
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
18 REM TL;DR: I didn't even come close to solving the
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
19 REM problem this was meant to fix, and MP4 is a
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
20 REM godawful container. :D
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
21
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
22 setlocal EnableDelayedExpansion
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
23 call :argparser %*
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
24 if %count% LSS 3 goto usage
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
25 REM mp4 barely supports flac, matroska ftw
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
26 REM
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
27 REM vegas pro sucks and has barely any support
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
28 REM for different codecs in MP4s (see: yuv 4:4:4),
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
29 REM and really *only* supports AAC. this sucks,
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
30 REM cause AAC can be a bitch at times
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
31 if not defined acodec set "acodec=flac"
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
32
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
33 ffmpeg -y -i "!inputmp4!" -i "!inputwav!" -c:v copy -c:a !acodec! ^
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
34 -strict -2 -loglevel quiet -stats "!outputmp4!"
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
35 goto cleanup
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
36
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
37 :usage
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
38 echo.Usage:
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
39 echo. %~n0.bat ^<input.mp4^> ^<input.wav^> ^<output.mp4^> [--acodec ^<codec^>]
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
40 echo. [--debug]
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
41 echo.
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
42 echo.Arguments:
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
43 echo. ^<input.mp4^>: input mp4 with at least 1 video stream
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
44 echo. ^<input.wav^>: input wav (or flac)
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
45 echo. ^<output.mp4^>: output mp4
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
46 echo. [--acodec ^<codec^>]: (optional) audio codec to use
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
47 echo. [--debug]: prints all commands to the terminal
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
48 echo.
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
49 REM we don't know if the user is running from a terminal or not...
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
50 echo.Press any key to exit...
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
51 pause 1>NUL 2>&1
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
52
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
53 :cleanup
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
54 REM this MIGHT fuck up someone's environment variables
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
55 REM i don't care :). deal with it
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
56 set "inputmp4="
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
57 set "inputwav="
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
58 set "outputmp4="
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
59 set "acodec="
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
60 set "count="
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
61 exit /b 0
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
62
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
63 REM -------------- Functions --------------
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
64
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
65 :argparser
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
66 set "count=0"
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
67 :argparser_loop
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
68 if not "x%~1x" == "xx" (
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
69 set "var=%~1"
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
70 if "!var:~0,2!"=="--" (
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
71 if "!var!"=="--acodec" (
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
72 shift
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
73 set "acodec=%~2"
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
74 goto :argparser_end
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
75 )
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
76 if "!var!"=="--debug" (
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
77 @echo on
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
78 goto :argparser_end
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
79 )
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
80 ) else (
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
81 if %count% EQU 0 set "inputmp4=%~1"
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
82 if %count% EQU 1 set "inputwav=%~1"
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
83 if %count% EQU 2 set "outputmp4=%~1"
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
84 set /a "count+=1"
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
85 )
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
86 :argparser_end
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
87 shift
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
88 goto :argparser_loop
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
89 )
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
90 set "var="
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
91 exit /b 0
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
92
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
93 :error
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
94 echo [ERROR]: %~1
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
95 exit /b 0
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
96
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
97 :warning
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
98 echo [WARNING]: %~1
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
99 exit /b 0
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
100
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
101 :info
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
102 echo [INFO]: %~1
1cc4f545a260 Add files via upload
Paper <37962225+mrpapersonic@users.noreply.github.com>
parents:
diff changeset
103 exit /b 0