chompionsawelo commited on
Commit
fb7a690
·
1 Parent(s): 05317bb

time fixes

Browse files
Files changed (3) hide show
  1. lang_ui.py +2 -0
  2. set_up.py +17 -2
  3. ui.py +3 -3
lang_ui.py CHANGED
@@ -19,6 +19,7 @@ english_ui = {
19
  "input_video_warning": "Please submit a video",
20
  "start_time_warning": "Please provide a correct start time",
21
  "end_time_warning": "Please provide a correct end time",
 
22
  "lang_radio_warning": "Please choose a language for the video",
23
  "model_dropdown_warning": "Please choose a model size for the video",
24
 
@@ -76,6 +77,7 @@ indonesia_ui = {
76
  "input_video_warning": "Mohon masukkan video",
77
  "start_time_warning": "Mohon berikan waktu mulai yang sesuai",
78
  "end_time_warning": "Mohon berikan waktu selesai yang sesuai",
 
79
  "lang_radio_warning": "Mohon pilih bahasa yang digunakan dalam video",
80
  "model_dropdown_warning": "Mohon pilih ukuran model yang digunakan untuk video",
81
 
 
19
  "input_video_warning": "Please submit a video",
20
  "start_time_warning": "Please provide a correct start time",
21
  "end_time_warning": "Please provide a correct end time",
22
+ "time_invalid": "Start time is greater than or equal to end time",
23
  "lang_radio_warning": "Please choose a language for the video",
24
  "model_dropdown_warning": "Please choose a model size for the video",
25
 
 
77
  "input_video_warning": "Mohon masukkan video",
78
  "start_time_warning": "Mohon berikan waktu mulai yang sesuai",
79
  "end_time_warning": "Mohon berikan waktu selesai yang sesuai",
80
+ "time_invalid": "Waktu mulai lebih besar dari atau sama dengan waktu selesai",
81
  "lang_radio_warning": "Mohon pilih bahasa yang digunakan dalam video",
82
  "model_dropdown_warning": "Mohon pilih ukuran model yang digunakan untuk video",
83
 
set_up.py CHANGED
@@ -3,6 +3,7 @@ from file_name import *
3
  from diarization import start_diarization
4
  from transcribe import start_transcribe
5
  from video_tool import convert_video_to_audio, add_subtitle_to_video
 
6
  import gradio as gr
7
  import re
8
  import os
@@ -35,10 +36,12 @@ def prepare_input(input_file, start_time, end_time, lang, model_size, progress=g
35
  if validate_time_format(start_time) is False:
36
  gr.Warning(ui_lang["start_time_warning"])
37
  return [None, None, [None, None]]
38
- if validate_time_format(end_time) is False or end_time is '99:99:99':
39
  gr.Warning(ui_lang["end_time_warning"])
40
  return [None, None, [None, None]]
41
- # Check if start time is lower than end time
 
 
42
  if lang is None:
43
  gr.Warning(ui_lang["lang_radio_warning"])
44
  return [None, None, [None, None]]
@@ -75,3 +78,15 @@ def prepare_input(input_file, start_time, end_time, lang, model_size, progress=g
75
  def validate_time_format(input_string):
76
  pattern = re.compile(r'^\d{2}:\d{2}:\d{2}$')
77
  return pattern.match(input_string) is not None
 
 
 
 
 
 
 
 
 
 
 
 
 
3
  from diarization import start_diarization
4
  from transcribe import start_transcribe
5
  from video_tool import convert_video_to_audio, add_subtitle_to_video
6
+ from datetime import datetime
7
  import gradio as gr
8
  import re
9
  import os
 
36
  if validate_time_format(start_time) is False:
37
  gr.Warning(ui_lang["start_time_warning"])
38
  return [None, None, [None, None]]
39
+ if validate_time_format(end_time) is False or end_time is '00:00:00':
40
  gr.Warning(ui_lang["end_time_warning"])
41
  return [None, None, [None, None]]
42
+ if (check_if_time_invalid(start_time, end_time)):
43
+ gr.Warning(ui_lang["time_invalid"])
44
+ return [None, None, [None, None]]
45
  if lang is None:
46
  gr.Warning(ui_lang["lang_radio_warning"])
47
  return [None, None, [None, None]]
 
78
  def validate_time_format(input_string):
79
  pattern = re.compile(r'^\d{2}:\d{2}:\d{2}$')
80
  return pattern.match(input_string) is not None
81
+
82
+
83
+ def check_if_time_invalid(start_time, end_time):
84
+ start = get_total_seconds(start_time)
85
+ end = get_total_seconds(end_time)
86
+ return start >= end
87
+
88
+
89
+ def get_total_seconds(time_string):
90
+ hours, minutes, seconds = map(int, time_string.split(":"))
91
+ total_seconds = hours * 3600 + minutes * 60 + seconds
92
+ return total_seconds
ui.py CHANGED
@@ -24,11 +24,11 @@ url_download_button = gr.Button(
24
  ui_lang["download_button_value"], size='sm', interactive=True)
25
  input_video = gr.Video(
26
  label=ui_lang["input_video_label"], interactive=True)
27
- input_video_button = gr.Button(
28
- ui_lang["input_video_button_value"], interactive=True)
29
  start_time = gr.Textbox("00:00:00", max_lines=1, placeholder="00:00:00",
30
  label=ui_lang["start_time_label"], interactive=True)
31
- end_time = gr.Textbox("00:10:00", max_lines=1, placeholder="99:99:99",
32
  label=ui_lang["end_time_label"], interactive=True)
33
  lang_radio = gr.Radio(
34
  ui_lang["lang_radio_choices"], label=ui_lang["lang_radio_label"], info=ui_lang["lang_radio_info"], type='index', interactive=True)
 
24
  ui_lang["download_button_value"], size='sm', interactive=True)
25
  input_video = gr.Video(
26
  label=ui_lang["input_video_label"], interactive=True)
27
+ # input_video_button = gr.Button(
28
+ # ui_lang["input_video_button_value"], interactive=True)
29
  start_time = gr.Textbox("00:00:00", max_lines=1, placeholder="00:00:00",
30
  label=ui_lang["start_time_label"], interactive=True)
31
+ end_time = gr.Textbox("00:00:00", max_lines=1, placeholder="99:99:99",
32
  label=ui_lang["end_time_label"], interactive=True)
33
  lang_radio = gr.Radio(
34
  ui_lang["lang_radio_choices"], label=ui_lang["lang_radio_label"], info=ui_lang["lang_radio_info"], type='index', interactive=True)