Цитата Sisin:
А можно как-то извратиться »
|
Вам надо извращений? Их есть у меня! :)
Код:

@Echo Off
cls
SetLocal EnableExtensions EnableDelayedExpansion
Call :Parameters ":Inmkvmerge" "Pmkv"
For %%a in (fix\*.mkv) do Echo mkvmerge -o "fixed\%%~nxa"%Pmkv% "%%~a"
Call :Parameters ":Inffmpeg" "Pffm"
for %%a in (*.mkv;*.mp4;*.wmv) Do Echo ffmpeg -i "%%~a"%Pffm% "fix\%%~na.mkv"
pause
GoTo :Eof
:Parameters
For /F "usebackq tokens=1* delims=:" %%a In (`"FINDSTR /B /L /I /N /C:%1 "%~dpnx0""`) DO Set /A Nbeg=%%a
Set "%~2="
For /F "usebackq tokens=1,* delims=~" %%a In (`"more +%Nbeg% "%~dpnx0""`) DO (
If /I "%%a"=="GoTo :Eof" GoTo :Eof
If Not "%%a"==":" Set "%~2=!%~2! %%a"
)
GoTo :Eof
:Inffmpeg
-c:v copy
-c:a copy
:~ Начало обрезки:
:~ -ss 00:08:38
:~ Продолжительность обрезки:
:~-t 00:05:00
GoTo :Eof
:Inmkvmerge
:~Настройка по умолчанию для 1 видео и 1 аудио дорожек
:~ Распознавание дорожек:
:~-d 0 -a 1,2 -s 3
-d 0 a 1 -S -T
--track-name 0:""
--track-name 1:""
:~--track-name 2:""
--language 0:und
--language 1:rus
:~--language 2:rus
--default-track 0:yes
--default-track 1:yes
:~--default-track 2:no
--forced-track 0:no
--forced-track 1:no
:~--forced-track 2:no
--compression 0:none
--compression 1:none
:~--compression 2:none
--title ""
:~ Очередность дорожек:
:~--track-order 0:0,0:1,0:2,0:3
--track-order 0:0,0:1
--no-global-tags
--no-chapters
--disable-track-statistics-tags
GoTo :Eof
Идея работы:
Перечислить все параметры построчно в отдельной секции и на их основе сформировать строку параметров.
Я придумал для секции способ комментирования: символы :~
Сначала вызываем формирование параметров, а затем уже цикл по вашим файлам.
Echo перед вызовом Ваших программ написал для отладки, так как их у меня нет.