faster-whisper-readme / file_processor.py
ManBib's picture
added logging for slide detection and sorting for clarity
7406982
import argparse
import logging
import os
import sources
from detector import Detector
from downloader_manager import download_mp4_and_extract_audio
from sorter import SlideSorter
def process_video(link):
try:
temp_video_file_path, audio_path = download_mp4_and_extract_audio(link)
detector = Detector(temp_video_file_path)
logging.info("Detecting Slides...")
detected_slides = detector.detect_slides()
sorter = SlideSorter(sources.ListSource(detected_slides))
logging.info("Sorting Slides...")
sorted_slides = sorter.sort()
os.remove(temp_video_file_path)
return sorted_slides, audio_path
except Exception as e:
logging.exception("Failed to execute process_video: %s", e)
return None, None
if __name__ == '__main__':
Parser = argparse.ArgumentParser(description="File Processor")
Parser.add_argument("-p", "--link")
Args = Parser.parse_args()
try:
slides, path = process_video(Args.link)
if slides is not None and path is not None:
print("Video processed successfully.")
else:
print("Failed to process the video.")
except Exception as e:
logging.exception("An error occurred in main: %s", e)