Spaces:
Sleeping
Sleeping
rosyvs
commited on
Commit
·
c4ab5b6
1
Parent(s):
040d75f
Refactor print statements for consistency and clarity in video processing functions
Browse files
app.py
CHANGED
|
@@ -21,17 +21,7 @@ def delete_files(files):
|
|
| 21 |
except FileNotFoundError:
|
| 22 |
print(f"File {file} not found for deletion.")
|
| 23 |
pass
|
| 24 |
-
print("files deleted")
|
| 25 |
-
|
| 26 |
-
def classify_input_format(input_string):
|
| 27 |
-
seconds = HHMMSS_to_sec(time_str=input_string)
|
| 28 |
-
if seconds is not None:
|
| 29 |
-
print("Successfully converted timestamps to seconds")
|
| 30 |
-
return seconds
|
| 31 |
-
else:
|
| 32 |
-
# if the input format is neither seconds nor HH:MM:SS, return None
|
| 33 |
-
gr.Error("Input time stamp format not supported. Please enter a valid time in the format HH:MM:SS or seconds.")
|
| 34 |
-
return None
|
| 35 |
|
| 36 |
def set_output_file(input_file, output_format, folder, insert_string = 'trimmed'):
|
| 37 |
# Set output file name and extension
|
|
@@ -39,9 +29,7 @@ def set_output_file(input_file, output_format, folder, insert_string = 'trimmed'
|
|
| 39 |
os.makedirs(folder)
|
| 40 |
file_name = f"{Path(input_file.name).stem.partition('.')[0]}_{insert_string}.{output_format}"
|
| 41 |
output_file = os.path.join(folder, file_name)
|
| 42 |
-
print(f"
|
| 43 |
-
print(f"file_name: {file_name}")
|
| 44 |
-
print(f"Output file: {output_file}")
|
| 45 |
return output_file
|
| 46 |
|
| 47 |
def trim_video_helper(input_file, output_file, start_time, end_time):
|
|
@@ -50,42 +38,39 @@ def trim_video_helper(input_file, output_file, start_time, end_time):
|
|
| 50 |
end_time = 300
|
| 51 |
elif start_time and not end_time:
|
| 52 |
end_time = 300 + HHMMSS_to_sec(time_str=start_time)
|
| 53 |
-
print("start time (s): ", start_time)
|
| 54 |
-
print("end time (s): ", end_time)
|
| 55 |
# Trim the video
|
| 56 |
-
print("start trimming")
|
| 57 |
output_file = convert_and_trim_video(input_file.name, output_file, start_time, end_time)
|
| 58 |
-
print("finished trimming")
|
| 59 |
return output_file
|
| 60 |
|
| 61 |
def convert_video_helper(input_file, output_file, output_format):
|
| 62 |
# convert video
|
| 63 |
-
print(f"convert_video_helper: converting {input_file} to {output_format}")
|
| 64 |
output_file = convert_and_trim_video(input_file.name, output_file)
|
| 65 |
-
print("
|
| 66 |
return output_file
|
| 67 |
|
| 68 |
def convert_transcript_helper(input_transcript, output_transcript):
|
| 69 |
# convert transcript
|
| 70 |
-
print("start converting transcript")
|
| 71 |
table = xlsx_to_table(xl_file=input_transcript)
|
| 72 |
-
print("
|
| 73 |
output_file = table_to_ELAN_tsv(table, output_transcript)
|
| 74 |
-
print("finished converting transcript")
|
| 75 |
return output_file
|
| 76 |
|
| 77 |
|
| 78 |
|
| 79 |
def trim_video_vtr(input_file, output_format):
|
| 80 |
-
|
|
|
|
| 81 |
try:
|
| 82 |
# randomly select start time
|
| 83 |
start_time = random.randint(300, 900)
|
| 84 |
end_time = start_time + 600 # since 10 minutes
|
| 85 |
-
print("start time (s): ", start_time)
|
| 86 |
-
print("end time (s): ", end_time)
|
| 87 |
audio_base_name = input_file.name.split("/")[-1].split(".")[-2]
|
| 88 |
-
print("audio_base_name: ", audio_base_name)
|
| 89 |
|
| 90 |
# set output file
|
| 91 |
insert_string = f"start{start_time}_end{end_time}"
|
|
@@ -103,6 +88,7 @@ def trim_video_vtr(input_file, output_format):
|
|
| 103 |
output_file = trim_video_helper(input_file, output_file, start_time, end_time)
|
| 104 |
|
| 105 |
# delete threading
|
|
|
|
| 106 |
path_to_delete = [input_file.name, output_file, log_file]
|
| 107 |
threading.Thread(target=delete_files, args=([path_to_delete])).start()
|
| 108 |
|
|
@@ -113,6 +99,7 @@ def trim_video_vtr(input_file, output_format):
|
|
| 113 |
|
| 114 |
|
| 115 |
def trim_video_wt(input_file, input_transcript, output_format, start_time, end_time):
|
|
|
|
| 116 |
# trim video with transcript
|
| 117 |
try:
|
| 118 |
# set output file
|
|
@@ -128,7 +115,7 @@ def trim_video_wt(input_file, input_transcript, output_format, start_time, end_t
|
|
| 128 |
output_transcript = convert_transcript_helper(path, output_transcript)
|
| 129 |
# output_transcript = output_file
|
| 130 |
# remove file after 10 minutes for security
|
| 131 |
-
print("
|
| 132 |
path_to_delete = [input_file.name, input_transcript.name, output_file, output_transcript]
|
| 133 |
threading.Thread(target=delete_files, args=([path_to_delete])).start()
|
| 134 |
|
|
@@ -140,7 +127,6 @@ def trim_video_wt(input_file, input_transcript, output_format, start_time, end_t
|
|
| 140 |
|
| 141 |
def sort_transcript_helper(input_transcript, output_transcript):
|
| 142 |
# sort transcript
|
| 143 |
-
print("start sorting transcript")
|
| 144 |
print("input_transcript: ", input_transcript)
|
| 145 |
print("output_transcript: ", output_transcript)
|
| 146 |
output_transcript = sort_transcript(input_transcript, output_transcript)
|
|
@@ -148,12 +134,14 @@ def sort_transcript_helper(input_transcript, output_transcript):
|
|
| 148 |
return output_transcript
|
| 149 |
|
| 150 |
def sort_transcript_wrapper(input_file):
|
|
|
|
| 151 |
output_folder = f"{os.getcwd()}/results/"
|
| 152 |
output_file_path = set_output_file(input_file, "tsv", output_folder, insert_string = 'sorted')
|
| 153 |
output_file_path = sort_transcript_helper(input_file.name, output_file_path)
|
| 154 |
return output_file_path
|
| 155 |
|
| 156 |
def trim_video(input_file, output_format, start_time, end_time):
|
|
|
|
| 157 |
try:
|
| 158 |
# Set output file
|
| 159 |
output_folder = f"{os.getcwd()}/results/"
|
|
@@ -163,7 +151,7 @@ def trim_video(input_file, output_format, start_time, end_time):
|
|
| 163 |
output_file = trim_video_helper(input_file, output_file, start_time, end_time)
|
| 164 |
|
| 165 |
# Remove files after 10 minutes for security
|
| 166 |
-
print("
|
| 167 |
path_to_delete = [input_file.name, output_file]
|
| 168 |
threading.Thread(target=delete_files, args=([path_to_delete])).start()
|
| 169 |
|
|
@@ -173,17 +161,17 @@ def trim_video(input_file, output_format, start_time, end_time):
|
|
| 173 |
return f"Error: {str(e)}"
|
| 174 |
|
| 175 |
def convert_video(input_file, output_format):
|
|
|
|
| 176 |
try:
|
| 177 |
# Set output file
|
| 178 |
output_folder = f"{os.getcwd()}/results/"
|
| 179 |
output_file = set_output_file(input_file, output_format, output_folder, \
|
| 180 |
insert_string = 'converted')
|
| 181 |
-
print(f"Begin converting to output format: {output_format}" )
|
| 182 |
# Convert video
|
| 183 |
output_file = convert_video_helper(input_file, output_file, output_format)
|
| 184 |
-
print(f"created output file: {output_file}")
|
| 185 |
# remove file after 10 minutes for security
|
| 186 |
-
print("Done converting.
|
| 187 |
path_to_delete = [input_file.name, output_file]
|
| 188 |
threading.Thread(target=delete_files, args=([path_to_delete])).start()
|
| 189 |
|
|
|
|
| 21 |
except FileNotFoundError:
|
| 22 |
print(f"File {file} not found for deletion.")
|
| 23 |
pass
|
| 24 |
+
print("...files deleted")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 25 |
|
| 26 |
def set_output_file(input_file, output_format, folder, insert_string = 'trimmed'):
|
| 27 |
# Set output file name and extension
|
|
|
|
| 29 |
os.makedirs(folder)
|
| 30 |
file_name = f"{Path(input_file.name).stem.partition('.')[0]}_{insert_string}.{output_format}"
|
| 31 |
output_file = os.path.join(folder, file_name)
|
| 32 |
+
print(f"...set output file: {output_file}")
|
|
|
|
|
|
|
| 33 |
return output_file
|
| 34 |
|
| 35 |
def trim_video_helper(input_file, output_file, start_time, end_time):
|
|
|
|
| 38 |
end_time = 300
|
| 39 |
elif start_time and not end_time:
|
| 40 |
end_time = 300 + HHMMSS_to_sec(time_str=start_time)
|
| 41 |
+
print("...start time (s): ", start_time)
|
| 42 |
+
print("...end time (s): ", end_time)
|
| 43 |
# Trim the video
|
| 44 |
+
print("...start trimming")
|
| 45 |
output_file = convert_and_trim_video(input_file.name, output_file, start_time, end_time)
|
| 46 |
+
print("...finished trimming")
|
| 47 |
return output_file
|
| 48 |
|
| 49 |
def convert_video_helper(input_file, output_file, output_format):
|
| 50 |
# convert video
|
|
|
|
| 51 |
output_file = convert_and_trim_video(input_file.name, output_file)
|
| 52 |
+
print("...finished converting")
|
| 53 |
return output_file
|
| 54 |
|
| 55 |
def convert_transcript_helper(input_transcript, output_transcript):
|
| 56 |
# convert transcript
|
|
|
|
| 57 |
table = xlsx_to_table(xl_file=input_transcript)
|
| 58 |
+
print("...parsed transcript to table")
|
| 59 |
output_file = table_to_ELAN_tsv(table, output_transcript)
|
| 60 |
+
print("...finished converting transcript")
|
| 61 |
return output_file
|
| 62 |
|
| 63 |
|
| 64 |
|
| 65 |
def trim_video_vtr(input_file, output_format):
|
| 66 |
+
print(f"BEGIN TASK: trimming {input_file} to 10-minute interval with random start time")
|
| 67 |
+
# trim video to 10-min interval with a random selected start time
|
| 68 |
try:
|
| 69 |
# randomly select start time
|
| 70 |
start_time = random.randint(300, 900)
|
| 71 |
end_time = start_time + 600 # since 10 minutes
|
|
|
|
|
|
|
| 72 |
audio_base_name = input_file.name.split("/")[-1].split(".")[-2]
|
| 73 |
+
print("...audio_base_name: ", audio_base_name)
|
| 74 |
|
| 75 |
# set output file
|
| 76 |
insert_string = f"start{start_time}_end{end_time}"
|
|
|
|
| 88 |
output_file = trim_video_helper(input_file, output_file, start_time, end_time)
|
| 89 |
|
| 90 |
# delete threading
|
| 91 |
+
print("Done trimming. Deleting files...")
|
| 92 |
path_to_delete = [input_file.name, output_file, log_file]
|
| 93 |
threading.Thread(target=delete_files, args=([path_to_delete])).start()
|
| 94 |
|
|
|
|
| 99 |
|
| 100 |
|
| 101 |
def trim_video_wt(input_file, input_transcript, output_format, start_time, end_time):
|
| 102 |
+
print(f"BEGIN TASK: trimming {input_file} with transcript {input_transcript} from {start_time} to {end_time}")
|
| 103 |
# trim video with transcript
|
| 104 |
try:
|
| 105 |
# set output file
|
|
|
|
| 115 |
output_transcript = convert_transcript_helper(path, output_transcript)
|
| 116 |
# output_transcript = output_file
|
| 117 |
# remove file after 10 minutes for security
|
| 118 |
+
print("Done trimming. Deleting files...")
|
| 119 |
path_to_delete = [input_file.name, input_transcript.name, output_file, output_transcript]
|
| 120 |
threading.Thread(target=delete_files, args=([path_to_delete])).start()
|
| 121 |
|
|
|
|
| 127 |
|
| 128 |
def sort_transcript_helper(input_transcript, output_transcript):
|
| 129 |
# sort transcript
|
|
|
|
| 130 |
print("input_transcript: ", input_transcript)
|
| 131 |
print("output_transcript: ", output_transcript)
|
| 132 |
output_transcript = sort_transcript(input_transcript, output_transcript)
|
|
|
|
| 134 |
return output_transcript
|
| 135 |
|
| 136 |
def sort_transcript_wrapper(input_file):
|
| 137 |
+
print(f"\nBEGIN TASK: sorting transcript {input_file}")
|
| 138 |
output_folder = f"{os.getcwd()}/results/"
|
| 139 |
output_file_path = set_output_file(input_file, "tsv", output_folder, insert_string = 'sorted')
|
| 140 |
output_file_path = sort_transcript_helper(input_file.name, output_file_path)
|
| 141 |
return output_file_path
|
| 142 |
|
| 143 |
def trim_video(input_file, output_format, start_time, end_time):
|
| 144 |
+
print(f"\nBEGIN TASK: trimming {input_file} from {start_time} to {end_time}")
|
| 145 |
try:
|
| 146 |
# Set output file
|
| 147 |
output_folder = f"{os.getcwd()}/results/"
|
|
|
|
| 151 |
output_file = trim_video_helper(input_file, output_file, start_time, end_time)
|
| 152 |
|
| 153 |
# Remove files after 10 minutes for security
|
| 154 |
+
print("Done trimming. Deleting files...")
|
| 155 |
path_to_delete = [input_file.name, output_file]
|
| 156 |
threading.Thread(target=delete_files, args=([path_to_delete])).start()
|
| 157 |
|
|
|
|
| 161 |
return f"Error: {str(e)}"
|
| 162 |
|
| 163 |
def convert_video(input_file, output_format):
|
| 164 |
+
print(f"\nBEGIN TASK: converting {input_file} to {output_format}")
|
| 165 |
try:
|
| 166 |
# Set output file
|
| 167 |
output_folder = f"{os.getcwd()}/results/"
|
| 168 |
output_file = set_output_file(input_file, output_format, output_folder, \
|
| 169 |
insert_string = 'converted')
|
|
|
|
| 170 |
# Convert video
|
| 171 |
output_file = convert_video_helper(input_file, output_file, output_format)
|
| 172 |
+
print(f"...created output file: {output_file}")
|
| 173 |
# remove file after 10 minutes for security
|
| 174 |
+
print("Done converting. Deleting files...")
|
| 175 |
path_to_delete = [input_file.name, output_file]
|
| 176 |
threading.Thread(target=delete_files, args=([path_to_delete])).start()
|
| 177 |
|