No se puede usar ningún comodín con ffmpeg

2

El objetivo es simple, tengo una secuencia de archivos GIF:

000000.gif
000001.gif
000002.gif
...

Quiero hacer una película con ellos. Lo intenté:

ffmpeg.exe -i *.gif output.flv

y obtuve el error "* .gif: argumento no válido". Entonces probé:

ffmpeg.exe -i %06d.gif output.flv

y obtuve el error "% 06d.gif: No existe tal archivo o directorio". Sin embargo intentando:

ffmpeg.exe -i 000006.gif output.flv

funciona bien. Estoy empezando a pensar que mi compilación ffmpeg, que es la compilación x86 predeterminada para Windows, no admite ningún comodín.

¿Algunas ideas?

Paul Simmons
fuente
No es ffmpeg lo que debería expandir los comodines, sino el shell.
gronostaj
Este es el símbolo del sistema de Windows 7. No estoy seguro de si esa cáscara o fiesta apoya comodines estilo c
Paul Simmons
*.giffuncionaría en bash. Puede ejecutarlo en Windows a través del paquete MSYS o Cygwin.
gronostaj
ffmpeg.exe -i %06d.gif output.flv
Muestre la

Respuestas:

1

Use el siguiente lote:

@echo off
set a=
for %%i in (*gif) do call :concat "%%i"
ffmpeg.exe %a% output.flv
goto :eof

:concat
set a=%a% -i %1
goto :eof
NuTTyX
fuente
Gracias pero entiendo: la línea de entrada es demasiado larga. : concat fue inesperado en este momento.
Paul Simmons
1
¿Guardaste todo eso en un archivo por lotes (es decir, command.bat)?
NuTTyX
Sintaxis probada con más de 350 archivos (20 caracteres de largo cada uno) pero se romperá con entradas más largas.
NuTTyX