retkowski's picture
Add demo
cb71ef5
raw
history blame contribute delete
915 Bytes
import json
from datetime import date
import webvtt
def get_seconds(time_str):
h, m, s_ms = time_str.split(':')
s, ms = s_ms.split('.')
return int(h) * 3600 + int(m) * 60 + int(s) + float('0.' + ms)
def get_transcript(path):
with open(path) as f:
transcript = f.read()
transcript = transcript.replace('\n', ' ')
return transcript
def get_captions_from_vtt(path):
vtt = webvtt.read(path)
return [{'start': get_seconds(caption.start), 'end': get_seconds(caption.end), 'text': caption.text} for caption in vtt]
def save_summary(summary, path, filename, config):
path.mkdir(parents=True, exist_ok=True)
with open(path / filename, "w+") as f:
f.write(summary)
with open(path / "config.txt", "w+") as f:
config["date"] = str(date.today())
json.dump(config, f, indent=4)
print("Saved", path / filename)