ffmpeg expansión local y ejecutar un comando dentro de


0

Pregunta de n00b a lo grande. Simplemente no puedo entender qué estoy haciendo mal. Aquí está mi archivo .bat:

@ECHO OFF

SETLOCAL

set /p Input= Drop file here, and click enter.

set file=%Input%
FOR %%i IN (%file%) DO (
ECHO filedrive=%%~di
ECHO filepath=%%~pi
ECHO filename=%%~ni
ECHO fileextension=%%~xi
ECHO %filename%

)

ffmpeg -i %Input% -an -c:v libx264 -preset medium -crf 22 "%%~di%%~pi%%~ni.mp4"

pause

Cuando ejecuto esto, no reconoce ffmpeg como un comando. Esto debe ser simple ... ¿Qué diablos estoy haciendo mal?


Compruebe si ffmpeg está en su ruta o en la PWD del archivo por lotes.
Gyan

AH ok. Ese fue esencialmente el problema. ¿Por qué no ve que FFMPEG está en mi directorio de usuarios? De todos modos, una vez que especifiqué dónde estaba FFMPEG a través de una variable o lo moví al lado del archivo por lotes, funcionó.
M Leonard

Como encontró una solución, puede responder a su propia pregunta.
llogan

Respuestas:


0

Era tan simple como esto:

@ECHO OFF

SETLOCAL

set /p Input= Drop file here, and click enter.
set ffmpeg=C:\Windows\User\ffmpeg.exe

set file=%Input%
FOR %%i IN (%file%) DO (
ECHO filedrive=%%~di
ECHO filepath=%%~pi
ECHO filename=%%~ni
ECHO fileextension=%%~xi
ECHO %filename%

)

%ffmpeg% -i %Input% -an -c:v libx264 -preset medium -crf 22 "%%~di%%~pi%%~ni.mp4"

pause
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.