Ms-Dos - FFMPEG verificar carpeta

 
Vista:
sin imagen de perfil
Val: 21
Ha mantenido su posición en Ms-Dos (en relación al último mes)
Gráfica de Ms-Dos

FFMPEG verificar carpeta

Publicado por alexis (11 intervenciones) el 13/09/2019 10:36:53
Un cordial saludo a todos de la comunidad, con todo el debido respeto, me dirijo a ustedes para que me ayuden con este BAT para hacer conversión de m4a a mp3 con línea de comando (FFMPEG) y así mejorarlo.

No tengo conocimiento de programación, no sé cómo hacer para que me verifique la carpeta de salida ("Dir_ouput") y el proceso FFMPEG se detenga y me diga un mensaje que la carpeta no está vacía y retorne al menú principal de opciones.

Ejemplo: En el menú principal haiga la opción de mover los archivos convertidos a mp3 a otra carpeta.
Gracias… y espero su respuestas!

NOTA: descargar FFMPEG link: https://ffmpeg.zeranoe.com/builds/
codigo:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
@echo off
echo.
set presets=-vn -ar 44100 -ac 2 -ab 192k -f mp3 -map_metadata 0 -id3v2_version 3
set input=Dir_input
set output=Dir_ouput
:: Carpeta "Dir_input" donde estaran los archivos de entrada, Formato (m4a)
if not exist "Dir_input" (md %input%)
 
:menu
    cls
    echo.
    echo 1) Audio en formato (m4a) Convertir (mp3)
    echo 2) ejemplo...
    echo 3) ejemplo...
    echo 4) Salir
    echo.
    choice /c 1234 /n /m "Seleccione una opcion [1-4]:>"
    if errorlevel 4 exit
    if errorlevel 3 goto ...
    if errorlevel 2 goto ...
    if errorlevel 1 goto MP3
    echo.
    pause
    goto menu
 
:MP3
	if not exist "Dir_ouput" (md %output%)
	for /R %%G in (%input%\*.m4a) do (
	if not exist "%output%\%%~nG.mp3" ffmpeg -i "%%G" %presets% "%output%\%%~nG.mp3"
	)
pause >nul
goto menu
 
:exit
@cls&exit
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Antoni Masana
Val: 1.419
Oro
Ha mantenido su posición en Ms-Dos (en relación al último mes)
Gráfica de Ms-Dos

FFMPEG verificar carpeta

Publicado por Antoni Masana (811 intervenciones) el 16/09/2019 07:56:10
En primer lugar hay que tener claro como tienes los directorios estructurados, es decir como esta puestos.

Me explico:

Para empezar no se fuerza a que el BAT se ejecute en un lugar determinado, es decir puede ejecutarse en cualquier directorio
Tienes definidos dos directorios Dir_Input y Dir_Output con direcciones relativas, eso quiere decir que pueden colgar de cualquier sitio.

Creo entender que los dos directorios cuelgan de un determinado directorio de esta forma

1
2
3
4
5
6
7
C:.
+---Mi_Musica
    +---Dir_Input
    +---Dir_Output
 
C:\Mi_Musica\Dir_Input
C:\Mi_Musica\Dir_Output

O al menos es lo que creo que pretendes pero según veo el estas líneas de codigo:

1
2
3
4
5
:MP3
	if not exist "Dir_ouput" (md %output%)
	for /R %%G in (%input%\*.m4a) do (
	if not exist "%output%\%%~nG.mp3" ffmpeg -i "%%G" %presets% "%output%\%%~nG.mp3"
	)

La estructura de directorios es esta:

1
2
3
4
5
6
7
C:.
+---Mi_Musica
    +---Dir_Input
        +---Dir_Output
 
C:\Mi_Musica\Dir_Input
C:\Mi_Musica\Dir_Input\Dir_Output

Suponiendo la primera estructura de directorios te doy dos soluciones:

Opcion - 1

1
2
3
4
5
6
7
8
9
10
11
12
13
14
@echo off
...
set input=Dir_input
set output=Dir_ouput
...
:MP3
	if not exist "Dir_ouput" (md %output%)
	for /R %%G in ("%input%\*.m4a") do (
	    if not exist "..\%output%\%%~nG.mp3" (
	        ffmpeg -i "%%G" %presets% "..\%output%\%%~nG.mp3"
	     ) else (
	        echo El fichero: %%~nG.mp3 ya existe
	     )
	)

Opcion - 2

1
2
3
4
5
6
7
8
9
10
11
12
13
14
@echo off
...
set input=C:\Mi_Drectorio\Dir_input
set output=C:\Mi_Drectorio\Dir_ouput
...
:MP3
	if not exist "Dir_ouput" (md %output%)
	for /R %%G in ("%input%\*.m4a") do (
	    if not exist "%output%\%%~nG.mp3" (
	        ffmpeg -i "%%G" %presets% "%output%\%%~nG.mp3"
	     ) else (
	        echo El fichero: %%~nG.mp3 ya existe
	     )
	)


Saludos.
\\//_
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar
sin imagen de perfil
Val: 21
Ha mantenido su posición en Ms-Dos (en relación al último mes)
Gráfica de Ms-Dos

FFMPEG verificar carpeta

Publicado por alexis (11 intervenciones) el 22/09/2019 17:48:19
Gracias Sr. Antoni Masana

Por compartir tu conocimiento pedagógico y dar soluciones a personas que no tenemos conocimiento de programación.

El código funciona a la perfección y la idea de la estructuración de las carpeta es excelente.

Que Dios te bendiga te de salud y prosperidad...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar