AlexandreScriptsMT commited on
Commit
e7a363a
·
verified ·
1 Parent(s): a950c39

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +8 -13
app.py CHANGED
@@ -4,28 +4,22 @@ import tempfile
4
  import os
5
 
6
  def convert_webm_to_mp4(webm_file):
7
- """
8
- Recebe um arquivo WebM, converte para MP4 usando ffmpeg,
9
- e retorna o caminho do MP4 pronto para download.
10
- """
11
  if webm_file is None:
12
  return None
13
 
14
- # Criar arquivo temporário para o MP4
15
  tmp_dir = tempfile.mkdtemp()
16
  mp4_path = os.path.join(tmp_dir, "output.mp4")
17
 
18
- # Comando ffmpeg para conversão
19
  try:
20
  subprocess.run(
21
  [
22
  "ffmpeg",
23
- "-y", # sobrescreve se existir
24
- "-i", webm_file, # input
25
- "-c:v", "libx264", # codec de vídeo
26
  "-preset", "fast",
27
- "-crf", "23", # qualidade
28
- mp4_path # output
29
  ],
30
  check=True,
31
  stdout=subprocess.PIPE,
@@ -39,7 +33,9 @@ def convert_webm_to_mp4(webm_file):
39
  # --- Interface Gradio ---
40
  with gr.Blocks() as demo:
41
  gr.Markdown("## WebM → MP4 Converter")
42
- webm_input = gr.Video(label="Upload WebM", type="filepath") # apenas caminho do arquivo
 
 
43
  mp4_output = gr.File(label="Download MP4")
44
  convert_btn = gr.Button("Convert to MP4")
45
 
@@ -47,5 +43,4 @@ with gr.Blocks() as demo:
47
 
48
  # Rodar app
49
  if __name__ == "__main__":
50
- # share=True cria link público temporário (útil para testes)
51
  demo.launch(server_name="0.0.0.0", server_port=7860, share=True)
 
4
  import os
5
 
6
  def convert_webm_to_mp4(webm_file):
 
 
 
 
7
  if webm_file is None:
8
  return None
9
 
 
10
  tmp_dir = tempfile.mkdtemp()
11
  mp4_path = os.path.join(tmp_dir, "output.mp4")
12
 
 
13
  try:
14
  subprocess.run(
15
  [
16
  "ffmpeg",
17
+ "-y",
18
+ "-i", webm_file,
19
+ "-c:v", "libx264",
20
  "-preset", "fast",
21
+ "-crf", "23",
22
+ mp4_path
23
  ],
24
  check=True,
25
  stdout=subprocess.PIPE,
 
33
  # --- Interface Gradio ---
34
  with gr.Blocks() as demo:
35
  gr.Markdown("## WebM → MP4 Converter")
36
+
37
+ # <-- aqui removemos 'type' -->
38
+ webm_input = gr.Video(label="Upload WebM")
39
  mp4_output = gr.File(label="Download MP4")
40
  convert_btn = gr.Button("Convert to MP4")
41
 
 
43
 
44
  # Rodar app
45
  if __name__ == "__main__":
 
46
  demo.launch(server_name="0.0.0.0", server_port=7860, share=True)