Cómo establecer el nombre del archivo después de fusionar archivos de video (script por lotes, FFMPEG)
Utilizo este script de bat para convertir archivos .mp4 (x264) a archivos .mp4 (x265)
for %% en ("*.mp4") do ffmpeg -i "%%a" -c:v hevc "%dp0NuevaCarpeta\%%~na[HEVC].mp4"
Entonces, estoy intentando hacer otro script de bat para fusionar archivos de video (concatenar).
for %%i en (*.mp4) do echo file '%%i'>> vlist.txt
ffmpeg -f concat -safe 0 -i vlist.txt -c copy %~dp0NuevaCarpeta\%%~na.mp4
Los archivos a fusionar serían como
Vid1.mp4,
Vid2.mp4,
Vid_#.mp4
…
Quiero mantener la parte antes de “_” en el nuevo nombre de archivo.
¿Qué debería usar en lugar de %%~na? Para que sea solo Vid.mp4
Actualmente crea %~na.mp4
davy.ai
Para mantener solo la parte antes del guion bajo en el nuevo nombre de archivo, reemplace
%%~na
con%%~ni
en el comandoffmpeg
:for %%i in (*.mp4) do echo file '%%i'>> vlist.txt
ffmpeg -f concat -safe 0 -i vlist.txt -c copy %~dp0NewFolder\%%~ni.mp4
Esto eliminará la extensión de archivo y cualquier carácter después del primer guion bajo en el nombre del archivo.