Spaces:
Sleeping
Sleeping
| from os import pipe | |
| import re | |
| import gradio as gr | |
| from functions.punctuation import punctuate | |
| from functions.model_infer import predict_from_document | |
| from functions.convert_time import match_mask_and_transcript | |
| title = "sponsoredBye - never listen to sponsors again" | |
| description = "Sponsored sections in videos are annoying and take up a lot of time. Improve your YouTube watching experience, by filling in the youtube url and figure out what segments to skip." | |
| article = "Check out [the original Rick and Morty Bot](https://huggingface.co/spaces/kingabzpro/Rick_and_Morty_Bot) that this demo is based off of." | |
| def pipeline(video_url): | |
| video_id = video_url.split("?v=")[-1] | |
| punctuated_text, transcript = punctuate(video_id) | |
| sentences = re.split(r"[\.\!\?]\s", punctuated_text) | |
| classification, probs = predict_from_document(sentences) | |
| # return punctuated_text | |
| times, timestamps = match_mask_and_transcript(sentences, transcript, classification) | |
| return [{"begin": time[0], "end": time[1]} for time in times] | |
| # return [ | |
| # { | |
| # "start": "12:05", | |
| # "end": "12:52", | |
| # "classification": str(classification), | |
| # "probabilities": probs, | |
| # "times": times, | |
| # "timestamps": timestamps, | |
| # } | |
| # ] | |
| # print(pipeline("VL5M5ZihJK4")) | |
| demo = gr.Interface( | |
| fn=pipeline, | |
| title=title, | |
| description=description, | |
| inputs="text", | |
| # outputs=gr.Label(num_top_classes=3), | |
| outputs="json", | |
| # examples=[ | |
| # "https://www.youtube.com/watch?v=UjtOGPJ0URM", | |
| # "https://www.youtube.com/watch?v=TrZyuCh9df0", | |
| # ], | |
| ) | |
| demo.launch(share=True) | |