qqwjq1981 commited on
Commit
35efadd
·
verified ·
1 Parent(s): bbc39f5

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +14 -7
app.py CHANGED
@@ -340,7 +340,7 @@ def transcribe_video_with_speakers(video_path):
340
 
341
  # return translated_json
342
 
343
- def update_translations(file, edited_table, process_mode):
344
  """
345
  Update the translations based on user edits in the Gradio Dataframe.
346
  """
@@ -364,9 +364,11 @@ def update_translations(file, edited_table, process_mode):
364
  }
365
  for _, row in edited_table.iterrows()
366
  ]
 
 
367
 
368
  # Call the function to process the video with updated translations
369
- add_transcript_voiceover(file.name, updated_translations, output_video_path, process_mode)
370
 
371
  # Calculate elapsed time
372
  elapsed_time = time.time() - start_time
@@ -1309,7 +1311,7 @@ def upload_and_manage(file, target_language, process_mode):
1309
  elapsed_time_display = f"Processing completed in {elapsed_time:.2f} seconds."
1310
  logger.info(f"Processing completed in {elapsed_time:.2f} seconds.")
1311
 
1312
- return editable_table, output_video_path, elapsed_time_display
1313
 
1314
  except Exception as e:
1315
  logger.error(f"An error occurred: {str(e)}")
@@ -1322,8 +1324,13 @@ def build_interface():
1322
  with gr.Row():
1323
  with gr.Column(scale=4):
1324
  file_input = gr.File(label="Upload Video/Audio File")
1325
- language_input = gr.Dropdown(["en", "es", "fr", "zh"], label="Select Language") # Language codes
1326
- process_mode = gr.Radio(choices=[("Transcription Only", 1),("Transcription with Premium Voice",2),("Transcription with Voice Clone", 3)],label="Choose Processing Type",value=1)
 
 
 
 
 
1327
  submit_button = gr.Button("Post and Process")
1328
 
1329
  with gr.Column(scale=8):
@@ -1364,14 +1371,14 @@ def build_interface():
1364
 
1365
  save_changes_button.click(
1366
  update_translations,
1367
- inputs=[file_input, editable_table, process_mode],
1368
  outputs=[processed_video_output, elapsed_time_display]
1369
  )
1370
 
1371
  submit_button.click(
1372
  upload_and_manage,
1373
  inputs=[file_input, language_input, process_mode],
1374
- outputs=[editable_table, processed_video_output, elapsed_time_display]
1375
  )
1376
 
1377
  # Connect submit button to save_feedback_db function
 
340
 
341
  # return translated_json
342
 
343
+ def update_translations(file, edited_table, source_language, target_language, process_mode):
344
  """
345
  Update the translations based on user edits in the Gradio Dataframe.
346
  """
 
364
  }
365
  for _, row in edited_table.iterrows()
366
  ]
367
+
368
+ translated_json = apply_adaptive_speed(updated_translations, source_language, target_language)
369
 
370
  # Call the function to process the video with updated translations
371
+ add_transcript_voiceover(file.name, translated_json, output_video_path, process_mode)
372
 
373
  # Calculate elapsed time
374
  elapsed_time = time.time() - start_time
 
1311
  elapsed_time_display = f"Processing completed in {elapsed_time:.2f} seconds."
1312
  logger.info(f"Processing completed in {elapsed_time:.2f} seconds.")
1313
 
1314
+ return source_language, editable_table, output_video_path, elapsed_time_display
1315
 
1316
  except Exception as e:
1317
  logger.error(f"An error occurred: {str(e)}")
 
1324
  with gr.Row():
1325
  with gr.Column(scale=4):
1326
  file_input = gr.File(label="Upload Video/Audio File")
1327
+ language_input = gr.Dropdown(["en", "es", "fr", "zh"], label="Select Language")
1328
+ source_language_display = gr.Textbox(label="Detected Source Language", interactive=False)
1329
+ process_mode = gr.Radio(
1330
+ choices=[("Transcription Only", 1), ("Transcription with Premium Voice", 2), ("Transcription with Voice Clone", 3)],
1331
+ label="Choose Processing Type",
1332
+ value=1
1333
+ )
1334
  submit_button = gr.Button("Post and Process")
1335
 
1336
  with gr.Column(scale=8):
 
1371
 
1372
  save_changes_button.click(
1373
  update_translations,
1374
+ inputs=[file_input, editable_table, source_language_display, language_input, process_mode],
1375
  outputs=[processed_video_output, elapsed_time_display]
1376
  )
1377
 
1378
  submit_button.click(
1379
  upload_and_manage,
1380
  inputs=[file_input, language_input, process_mode],
1381
+ outputs=[source_language_display, editable_table, processed_video_output, elapsed_time_display]
1382
  )
1383
 
1384
  # Connect submit button to save_feedback_db function