翻出了以前写的合并多个文件到一个mp4文件的脚本,保存为bat和ffmpeg放置到同文件夹,直接拖多个文件到bat上,自动合并并输出到输入文件夹。
距离完美还有距离,原先还有这些设想:
输入音频文件和图片,合成带图的视频;
输入多个音频文件,合成一个音频并生成lrc文件,lrc文件根据合并的时长显示当前的音频文件的名字
输入一个视频文件,提示需要转换格式还是提取音频还是提取视频
@echo off
set program=%~dp0ffmpeg
set outformat=.mp4
set outfile=%~1_all%outformat%
set allparam=concat:
:param
set str=%1
if "%str%"=="" (
goto end
)
set allparam=%allparam%%str%char_spacer
shift /0
goto param
:end
echo end
set allparam=%allparam:char_spacer=^|%
if "%allparam%"=="concat:" (
goto ex
)
rem remove left right blank
rem :intercept_left
rem if "%allparam:~0,1%"==" " set "allparam=%allparam:~1%"&goto intercept_left
:intercept_right
if "%allparam:~-1%"==" " set "allparam=%allparam:~0,-1%"&goto intercept_right
if "%allparam:~-1%"=="|" set "allparam=%allparam:~0,-1%"&goto intercept_right
if "%allparam:~-1%"=="concat:" goto ex
:eof
echo ------------
%program% -i "%allparam%" -c copy "%outfile%"
pause
exit
:ex
echo input 0 file
pause