Skip to content

Commit 97fb14d

Browse files
Merge pull request #37 from shasheene/master
Only delete audio files that need to be deleted
2 parents b053484 + 844b4f8 commit 97fb14d

File tree

1 file changed

+16
-16
lines changed

1 file changed

+16
-16
lines changed

autosub/main.py

+16-16
Original file line numberDiff line numberDiff line change
@@ -150,12 +150,12 @@ def main():
150150
base_directory = os.getcwd()
151151
output_directory = os.path.join(base_directory, "output")
152152
audio_directory = os.path.join(base_directory, "audio")
153-
video_file_name = input_file.split(os.sep)[-1].split(".")[0]
154-
audio_file_name = os.path.join(audio_directory, video_file_name + ".wav")
153+
video_prefix = os.path.splitext(os.path.basename(input_file))[0]
154+
audio_file_name = os.path.join(audio_directory, video_prefix + ".wav")
155155

156156
output_file_handle_dict = {}
157157
for format in args.format:
158-
output_filename = os.path.join(output_directory, video_file_name + "." + format)
158+
output_filename = os.path.join(output_directory, video_prefix + "." + format)
159159
print("Creating file: " + output_filename)
160160
output_file_handle_dict[format] = open(output_filename, "w")
161161
# For VTT format, write header
@@ -165,14 +165,15 @@ def main():
165165

166166
# Clean audio/ directory
167167
for filename in os.listdir(audio_directory):
168-
file_path = os.path.join(audio_directory, filename)
169-
try:
170-
if os.path.isfile(file_path) or os.path.islink(file_path):
171-
os.unlink(file_path)
172-
elif os.path.isdir(file_path):
173-
shutil.rmtree(file_path)
174-
except Exception as e:
175-
print('Failed to delete %s. Reason: %s' % (file_path, e))
168+
if filename.lower().endswith(".wav") and filename.startswith(video_prefix):
169+
file_path = os.path.join(audio_directory, filename)
170+
try:
171+
if os.path.isfile(file_path) or os.path.islink(file_path):
172+
os.unlink(file_path)
173+
elif os.path.isdir(file_path):
174+
shutil.rmtree(file_path)
175+
except Exception as e:
176+
print('Failed to delete %s. Reason: %s' % (file_path, e))
176177

177178
# Extract audio from input video file
178179
extract_audio(input_file, audio_file_name)
@@ -182,11 +183,10 @@ def main():
182183

183184
print("\nRunning inference:")
184185

185-
for file in tqdm(sort_alphanumeric(os.listdir(audio_directory))):
186-
audio_segment_path = os.path.join(audio_directory, file)
187-
188-
# Dont run inference on the original audio file
189-
if audio_segment_path.split(os.sep)[-1] != audio_file_name.split(os.sep)[-1]:
186+
for filename in tqdm(sort_alphanumeric(os.listdir(audio_directory))):
187+
# Only run inference on relevant files, and don't run inference on the original audio file
188+
if filename.startswith(video_prefix) and (filename != os.path.basename(audio_file_name)):
189+
audio_segment_path = os.path.join(audio_directory, filename)
190190
ds_process_audio(ds, audio_segment_path, output_file_handle_dict, split_duration=args.split_duration)
191191

192192
print("\n")

0 commit comments

Comments
 (0)