Skip to content

Commit 5928624

Browse files
committed
Fix error directory route with spaces
1 parent df86829 commit 5928624

1 file changed

Lines changed: 29 additions & 15 deletions

File tree

compress.py

Lines changed: 29 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -3,31 +3,45 @@
33

44
def comprimir_video(ruta_origen, ruta_destino):
55
"""
6-
Comprime un video usando HandBrakeCLI.
6+
Esta función comprime un video usando HandBrakeCLI.
77
88
Parámetros:
99
ruta_origen -- Ruta al archivo de video original.
1010
ruta_destino -- Ruta donde se guardará el video comprimido.
1111
"""
1212

13+
# Reemplaza las barras invertidas en las rutas de los archivos
14+
ruta_origen = ruta_origen.replace('\\', '')
15+
ruta_destino = ruta_destino.replace('\\', '')
16+
1317
# Comando para comprimir el video
14-
comando = ['/Applications/HandBrakeCLI', '-i', ruta_origen, '-o', ruta_destino, '-f', 'mp4', '--optimize', '-e', 'x264', '-q', '25.5', '-r', '30', '-E', 'ca_aac', '-B', '96', '-w', '1920']
18+
comando = ['/Applications/HandBrakeCLI', '-i', f'"{ruta_origen}"', '-o', f'"{ruta_destino}"', '-f', 'mp4', '--optimize', '-e', 'x264', '-q', '25.5', '-r', '30', '-E', 'ca_aac', '-B', '96', '-w', '1920']
1519

1620
# Ejecuta el comando
17-
subprocess.run(comando, check=True)
21+
subprocess.run(' '.join(comando), shell=True)
22+
23+
print("¡Bienvenido a Compress MP4, sus archivos se guardarán en el mismo directorio que los archivos de origen!")
24+
# Solicita la cantidad de videos a comprimir
25+
cantidad_videos = int(input("Ingrese la cantidad de videos a comprimir: ").strip())
26+
27+
# Lista para almacenar las rutas de los videos
28+
rutas_videos = []
1829

19-
print("¡Bienvenido a Compress MP4, su archivo se guardara en el mismo directorio que el archivo de origen!")
20-
# Solicita la ruta del archivo de origen convirtiendo la ruta en relativa para que acepte espacios en el nombre del archivo o en la ruta del directorio que lo contiene
21-
ruta_origen = input("Ingrese la ruta del archivo de origen: ").strip()
30+
for i in range(cantidad_videos):
31+
# Solicita la ruta del archivo de origen convirtiendo la ruta en relativa para que acepte espacios en el nombre del archivo o en la ruta del directorio que lo contiene
32+
ruta_origen = input(f"Ingrese la ruta del archivo de origen {i+1}: ").strip()
33+
rutas_videos.append(ruta_origen)
2234

23-
# Obtiene la ruta del directorio del archivo de origen
24-
ruta_directorio = os.path.dirname(ruta_origen)
35+
# Procesa cada video
36+
for ruta_origen in rutas_videos:
37+
# Obtiene la ruta del directorio del archivo de origen
38+
ruta_directorio = os.path.dirname(ruta_origen)
2539

26-
# Crea la ruta del archivo de destino en el mismo directorio que el archivo de origen
27-
nombre_archivo = os.path.basename(ruta_origen)
28-
nombre_base, extension = os.path.splitext(nombre_archivo)
29-
nombre_archivo_comprimido = f"{nombre_base}_comprimido{extension}"
30-
ruta_destino = os.path.join(ruta_directorio, nombre_archivo_comprimido)
40+
# Crea la ruta del archivo de destino en el mismo directorio que el archivo de origen
41+
nombre_archivo = os.path.basename(ruta_origen)
42+
nombre_base, extension = os.path.splitext(nombre_archivo)
43+
nombre_archivo_comprimido = f"{nombre_base}_comprimido{extension}"
44+
ruta_destino = os.path.join(ruta_directorio, nombre_archivo_comprimido)
3145

32-
# Uso de la función
33-
comprimir_video(ruta_origen, ruta_destino)
46+
# Uso de la función
47+
comprimir_video(ruta_origen, ruta_destino)

0 commit comments

Comments
 (0)